软件工程师招聘笔试MetaShare笔试试题.doc_第1页
软件工程师招聘笔试MetaShare笔试试题.doc_第2页
软件工程师招聘笔试MetaShare笔试试题.doc_第3页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

MetaShare笔试试题以下试题仅为测试面试者的知识覆盖面,问题解决能力,应变创新的能力,以及沟通能力,并非按成绩录取,请面试者发挥自己的想象力,在规则允许范围内利用一切可以想到的方法来解决。测试分为笔试和上机两部分,笔试答案要简单清晰,试卷必须在两天时间内完成,否则视作弃权!笔试试卷未提交者或笔试题目50%以上未回答者不给上机测试机会。上机测试限定时间为三天,请自行解决计算机和网络,我们会根据简历和笔试情况分组,协作完成测试项目(我们需要看到协作过程)。尽可能的回答你熟悉的领域和题目。对不是非常清晰的部分可以使用参考书,使用互联网搜索,亦可向其他人求助。但请记住,我们会根据你的答案在面试期间提出相似或相关问题。职位职能: 软件工程师 互联网软件开发工程师 职位描述: 精通.NET开发,熟练掌握C#语言,ASP.NET MVC,WCF 熟悉Windows桌面和Web应用开发,CSS,JavaScript等技术 熟悉SQL Server或MySQL数据库的设计与实现 对迭代式的软件开发过程中的至少一种(例如UDP,XP,SCRUM)有所了解,最好对D3和TDD等Agile方法学有一定了解 对UML,设计模式,架构模式,有一定认知 有团队精神,沟通能力强,并具备一定的创新能力。第一部分:基础知识面向对象“类”(Class)和“对象”(Object)的联系和区别?请举例说明。“类”(Class)和“元类”(Metaclass)的联系和区别?请举例说明。什么是“单继承”(Single Inheritance)?有什么特点?“抽象类”(Abstract class)和“接口”(Interface)有哪些区别?举例说明在你熟悉的程序设计语言中,“多态”(Polymorphism)是如何实现的。设计模式什么是“模式”(Pattern)和“设计模式”(Design Pattern)?请举例说明。在GoF Design Pattern中,有几大类模式? “抽象工厂”(Abstract Factory)的特点和使用?试述一下MVC模式的结构与特点?试述一下架构模式中Layered Application的特点?软件工程试述你所熟悉的软件工程过程?试述在开发阶段,可以通过哪些手段提高最终产品质量?第二部分:分析设计请用你熟悉的程序设计语言实现单链表并遍历请用你熟悉的程序设计语言语言,实现一下“单体”(Singleton),并注释说明代码是如何保障它实现的。在某计算系统的实现代码中,有如下的代码,其中使用了那些模式,各有什么特点?Runner1的基本功能是打印表达式,Runner2是计算表达式,请根据Client中代码,添加必要的代码,并在对原有代码修改最少的情况下,实现Runner2(提示:使用堆栈,Variable)。public class Cientpublic static void Call()Node expression = new Mul(new Add(new Literal(99), new Literal(11),new Div(new Literal(1000),new Sub(“-”, new Variable(“a”), new Variable (“b”);expression.Run(Runner1.Instance);expression.Run(Runner2.Instance);public interface IRunnervoid Run(Literal node);void Run(Variable node);void Run(Add node);void Run(Sub node);/ TODO:public class Runner1public static Runner1 Instance = new Runner1();public void Run(Literal node) Console.Write(node.Value); public void Run(Variable node) Console.Write(node.Text); public void Run(Add node) Console.Write(“+”); node.Left.Run(this); node.Right.Run(this); public void Run(Sub node) Console.Write(“-”); node.Left.Run(this); node.Right.Run(this); /TODO:public class Runner2public static Runner2 Instance = new Runner2();/ TODO:public abstract class Nodeprotected Node(string text) this.Text = text;public abstract void Run(IRunner runner);public class Literal : Node public double Value get ; set; public Literal (double val) this.Value = val;public override void Run(IRunner runner) Runner.Run(this); public class Variable : Node public string Name get ; set; public double Value get ; set; public Variable (string name) this.Name = name;public override void Run(IRunner runner) Runner.Run(this); public abstract class Op : Node public Node Left get; set; public Node Right get; set; public Op(Node left, Node right) this.Left = left;this.Right = right;public override void Run(IRunner runner) Runner.Run(this); public class Add : Op public Add (Node left, Node right) : base(left, right) public override void Run(IRunner runner) Runner.Run(this); public class Sub : Op public Add (Node left, Node right) : base(left, right) public override void Run(IRunner runner) Runner.Run(this); /TODO:某电子商务网站,有一个功能需求是“下订单”(Place an Order),客户在线浏览的同时,选择一个或多个“商品”(Product)或“服务”(Service),并确定每种产品或服务的“数量”(Quantity),作为一个“订单”(Order)提交给系统。在订单中,系统统计该订单中所有商品或服务的单价作为“小计”(Subtotal),以及“税”(Ta

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论