高级开发人员架构师面试题

上传人:s9****2 文档编号:564616076 上传时间:2024-03-02 格式:DOC 页数:18 大小:254.50KB
返回 下载 相关 举报
高级开发人员架构师面试题_第1页
第1页 / 共18页
高级开发人员架构师面试题_第2页
第2页 / 共18页
高级开发人员架构师面试题_第3页
第3页 / 共18页
高级开发人员架构师面试题_第4页
第4页 / 共18页
高级开发人员架构师面试题_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《高级开发人员架构师面试题》由会员分享,可在线阅读,更多相关《高级开发人员架构师面试题(18页珍藏版)》请在金锄头文库上搜索。

1、一些面试题的回答二 此文中所提到的面试题是园子中Tony Qu兄弟翻译过来的,特此感谢高级开发人员/架构师 1) DateTime.Parse(myString); 这行代码有什么问题? 有问题,当myString不能满足时间格式要求的时候,会引发异常,建议使用DateTime.TryParse() 2) PDB是什么东西? 在调试中它应该放在哪里? PDB是用于保存调试和项目状态信息的文件,在debug的时候将产生pdb文件,调试的时候应该放在和对应应用程序集相同目录。 3) 什么叫圈复杂度(cyclomatic complexity)?为什么它很重要? 不知道,望指教 ? 4) 写一个标准

2、的lock(),在访问变量的前后创建临界区,要有双重检查lock双重检查privatestaticobjectinstrace;staticobjectlockedObj=newobject();publicstaticvoidLockTest()if(instrace=null)lock(lockedObj)if(instance=null)instance=newobject();5) 什么叫FullTrust?放入GAC的assembly是否是FullTrust的? FullTrust完全信任。放入GAC中的Assembly是否FullTrust我的理解不是。我理解FullTrust是可

3、以通过代码设定的 6) 代码加上需要安全权限的特性有什么好处? 可以更加灵活的设置对代码的访问权限,实现代码级保护。?这点不是特清楚,有明白的给讲解下 7) gacutil /l | find /i Corillian 这句命令的作用是什么? 全局程序集缓存中如果有Corillian就更新该程序集,没有就安装 8) sn -t foo.dll 这句命令是干嘛的? 显示程序集foo.dll的公钥标记 9) DCOM需要防火墙打开哪些端口?端口135是干嘛用的? 135端口,因为DCOM的端口号是随机分配的,默认情况下,会分配1024以上的端口号,所以默认情况下,DCOM不能穿越防火墙。因为根本不

4、晓得开哪个端口。但有解决办法可以使DCOM分配的端口号固定,有关内容我在http:/ 有过一些描述。135是远程过程调用(RPC)的默认端口 10)对比OOP和SOA,它们的目的分别是什么? 我想OOP和SOA应该没有对比性吧。OOP是一种编程模型,强调将复杂的逻辑分解出小的模块,特性是继承,封装和多态 。而SOA是一个技术框架,技术框架和编程模型应该说不是一码事吧?SOA的思想是将业务逻辑封装成服务或者中间件提供给应用程序来调用,当然其组件化思想是继承和发扬了OOP的优点。 11) XmlSerializer是如何工作的?使用这个类的进程需要什么ACL权限? 我只知道XmlSerialize

5、r是将对象的属性和字段进行序列化和反序列化的,序列化成为xml数据,反序列化再将xml转换成对象。应该至少需要ACL权限中的读权限. 12)为什么不提倡catch(Exception)? 原因可能有两点:1)try.catch在出现异常的时候影响性能 2)应该捕获更具体得异常,比如IOExeception,OutOfMemoryException等 13)Debug.Write和Trace.Write有什么不同?何时应该使用哪一个? Debug.Write是调试的时候向跟踪窗口输出信息。当编译模式为debug的时候才有效,为release的时候Debug.Write在编译的时候会忽略,而Tra

6、ce则是在debug和release两种模式下均可以向跟踪窗口输出信息。 14)Debug Build和Release Build的区别,是否会有明显的速度变化?请说明理由。 Debug会产生pdb文件,release不会。Debug用于开发时的调试,不能要于部署,而release用于部署.debug编译一些特殊代码,比如#IFDEBUG Debug.Write等,而Release则会将那些特殊标记省略 15)JIT是以assembly为单位发生还是以方法为单位发生?这对于工作区有何影响? 方法,道理很简单,因为对于一次运行,很可能只用到一个程序集中极少数类型和对象,而大部分可能并不会被使用,

7、此时CLR傻乎乎的给整个程序集都给Compile了,CLR不是傻疯了么 16)对比抽象基类和接口的使用 抽象类能有具体实现,而接口只定义行为规范,不能有具体实现。一个类只能继承一个父类,但能实现多个接口。 17)a.Equals(b)和a = b一样吗? 不一样。多数情况下,a.Equals(b)表示a与b一致, a=b表示a与b的值相等 。也可以有具体重载(多谢Jeffrey Zhao 的指正)18)在对象比较中,对象一致和对象相等分别是指什么? 对象一致是指两个对象是同一个对象,引用相同。而对象相等是指两个对象的值相同,但引用不一定相同 19)在.NET中如何实现深拷贝(deep copy

8、)? 实现IClonable接口 20)请解释一下IClonable IClonable方法是实现深度复制的接口,实现它应该能深度复制一个对象出来。深度复制的特征的调用对象的构造方法,创建新的对象,包括创建对象中嵌套的引用对象的新实例。而Shadow复制则不同,是浅表复制,不重新创建新实例。浅表复制的实现是Object.MemberWiseClone().深度复制(Deep Copy)与浅表复制(Shadow Copy)的比较publicclassNamepublicstringFirstName;publicstringLastName;publicclassPerson:ICloneabl

9、epublicNamePersonName;publicstringEmail;/*/DeepCopy的例子/publicObjectClone()Personp=newPerson();p.Email=this.Email;p.PersonName=newName();p.PersonName.FirstName=this.PersonName.FirstName;p.PersonName.LastName=this.PersonName.LastName;returnp;publicvoidChangLastName(stringlastName)this.PersonName.LastN

10、ame=lastName;publicstaticvoidMain()Personp=newPerson();p.PersonName=newName();p.PersonName.LastName=jill;p.PersonName.FirstName=zhang;p.Email=;PersonsameNamePerson=p.Clone()asPerson;sameNamePerson.ChangLastName(clr_);Console.WriteLine(p.PersonName.LastName);Console.WriteLine(sameNamePerson.PersonNam

11、e.LastName);PersonsamePerson=p.MemberwiseClone()asPerson;samePerson.ChangLastName(Shadow);Console.WriteLine(p.PersonName.LastName);Console.WriteLine(sameNamePerson.PersonName.LastName);Console.Read();21)什么叫装箱? 装箱(boxing)是将值类型的数据转化成引用类型,int i=3; object o = i ;便是装箱过程,而拆箱(unboxing)是将饮用类型数据转换值类型,比如int j

12、 = (int)o;属于拆箱 22)string是值类型还是引用类型? 引用类型 23)XmlSerializer使用的针对属性的模式有什么好处?解决了什么问题? 只序列化有用的数据,而不是序列化整个对象。实现没必要的数据冗余,和提升序列化时的性能。 24)为什么不应该在.NET中使用out参数?它究竟好不好? 我挺喜欢用out参数的,特别是当函数需要有多于1个返回的时候,我比较愿意用out,至于它好不好没研究过 ? 25)特性能够放到某个方法的参数上?如果可以,这有什么用? 可以,作用可以对参数有进一步限定,比如输入参数为int类型,可以通过允许AttributeTargets=ParameterInfo的Attribute自定义实现来限定输入参数的大小,比如当输入参数小于100的时候便抱错。 对方法的参数设置Attribute的例子AttributeUsage(AttributeTargets.Parameter)publicclassParameterAtt:AttributepublicintMin=100;publicclassAttrib

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号