2010 我的求职经历(2)

第一家
公司:某NASDAQ上市软件公司,主做外包业务
职位:ASP.NET Web工程师
结果:获得offer

 

猎头介绍,已经表明态度,不做测试,希望是开发类职位,非外包项目。

第一轮面试

SQL
1.  写一条SQL查询语句将表中年龄为空的值更新为25。不使用(update)
select isnull(age, 25)

 

简单算法
2.  写一个方法将 判断一个字符串是否是回文(不能使用Library)

3. 请实现一个Int.Parse()方法,只考虑正整数

4. 请将一个整数数字,分解后放入一个整形数组中,并统计其中每个数出现的重复数量(不能使用Library)

5. 请写出一个快速排序使用任何语言

XML
6. 请解释一下XML的作用,请解释一下WebService,WebService的通讯消息格式?
7. 请解释一下XSLT
8. 请写出一段XPath,找出<roots><root xxx='1'/><root xxx='2’/></roots>中xxx属性的值

Web(css, javascript, 服务器端)
8. CSS对图像隐藏的几种方法?
9. 请解释一下如何使用DIV+CSS 定位布局?
10. 常见的HTTP状态码?
11. 请解释一下JQuery
12. 请解释一下 CSS, 请解释一下margin和 padding的区别?
13. 有一个网页,其中有一个DIV 使用JavaScript动态的向其中添加一个鼠标左键点击事件,弹出一个对话框。
14. 解释一下Session,Cookie,Application,Cache
15. Session实现存储的位置有几种
16. 请解释一下,Windows验证和Forms验证
17. 请说一下Cache更新数据的几种机制 ASP.NET 2.0
18. Cookie和 Session的区别?
19. 客户端看到一张没有任何内容的空白页面,请问又几种可能?(服务器错误或客户端错误)

答:说句老实话,前端其实是我的弱项。根据我的经验,网页编码问题居多。如网页编码和CSS、Js的编码不一致,比如网页时utf-8编码的,而css是ansi编码,尤其是css或js中包含中文的情况下,在IE6下会出现此情况。同样在IE6,如果<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />出现在title元素之前也会出现此情况。

20. 如何能让一个页面,加快客户端与服务器端的通讯速度?可以有多少种方法?
答:原题大致这样,不是很理解对方想问什么,回答时提及了web页面的实时通讯(socket双向数据传输、http长连接单向数据传输)

概念
21.  using() 的作用, IDisposable
22.  抽象类和接口有什么区别?
23.  解释一下 virtual, override , sealed, abstract
24.  请解释一下委托和事件及其区别
25.  请解释一下堆和栈
26.  请解释一下装箱和拆箱,什么时候会用到装箱和拆箱?
27.  请解释一下前台线程和后台线程?
28.  描述一下多态?
29.  重写和重载的区别?

30. 你为什么要转行?
31. 请说一下 你所了解的外包行业?
32. 你将来的发展方向是什么?
33. 你是上海人吗?和不同地区的同事共事有什么困难?
34. 作为一个Team Leader,做项目中您遇到最困难的是什么事?
35. 作为一个Team Leader,请问你如何去高效的管理你的团队

 

第二轮微软面试 电话面试

1. class和struct区别
请参考class和struct
2. 垃圾回收机制
传统做法:
1) 应用程序代码回收。优点:回收及时。缺点:出现错误时会导致内存泄露
2)COM对象使用的维护引用计数。需要客户端通知组件已完成内存使用,如果有客户端为通知,则对象仍驻留内存,且难以释放。
3).NET运行库GC,将所有动态请求的内存都分配到堆上,当进程的托管堆已满,需清理时调用GC。GC检查存储在托管堆上的对象的引用,没有引用的对象被删除
3. 什么是GC,IDispose接口
4. 什么是GAC
5. 如何创建强名程序集
6. 抽象类和接口的区别

请参考abstract class和interface
7. 重写和重载的区别
8. .NET代码的编译原理
9. 如何手动清空闲置对象
10. 什么是 Win32 API,如何调用 Win32 API.
11.了解.NET 3.5中的新框架吗?
12. 如果让你用新的技术你会怎么办?

 

第三轮微软面试 英语
悲惨凄凉的一轮,无颜,略。

 

第四轮微软面试 技术
1. AppDomain和 Process的区别
Process不能直接访问物理内存(只能访问虚拟内存),也即一个进程不能访问分配给另一个进程的内存,从而使运行代码的实例隔离,安全性好。但由于不能共享内存,往往需要在进程之间复制数据,性能较差。当然也可以使用dll组件让所有组件在同一进程中运行,但出错的组件会影响其他组件。
多个应用程序可以运行在一个进程的多个应用程序域中,同样可实现上述的安全问题,但避免了性能问题。
2. ASP.NET 页面的编译原理
3. GAC是什么,公钥秘钥对如何实现
GAC(Global Assembly Cache)就是全局使用的程序集的缓存,大多数共享程序集都安装在这个缓存中,也可以使用共享目录。
shfusion.dll 可以查看和处理缓存的内容
gacutil 命令行安装、卸载和显示程序集
4.  HttpModel和HttpHandle的区别
5.  Applican.run()方法干什么的
6.  窗体show()方法和showDialog()的区别
7.  如何去拿internal类的方法
 1)反射
 2)AssemblyInfo.cs [assembly: InternalsVisibleTo("assembly.file")]
8. 对象的消息机制是如何实现的比如 鼠标点击,键盘点击
鼠标点击,键盘点击这些事件由操作系统转换成相应的消息发送到应用程序的消息队列,应用程序发送这些消息到对应的窗体,交由窗体的处理函数来处理,在C#中消息被封装成了事件,事件字段实际上是一个函数指针列表,用来维护消息到达时响应函数的地址。
请参考 http://blog.csdn.net/syf442/archive/2009/07/13/4343897.aspx
9.  程序集的内部版本和文件版本的区别
就是私有程序集和共享程序集,再说说强名
10. 数据库建模
11. 怎么跟踪LinQ中数据库抛出的错误
12. ASP.NET MVC
13. Session 和 Cookie
14. 如何反汇编看 C# lambda表达式 对应的C#源代码

 

2010 我的求职经历(1)
2010 我的求职经历(2)
2010 我的求职经历(3)
2010 我的求职经历(4)
2010 我的求职经历(5)

  • 0
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 52
    评论
评论 52
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值