月薪五万的面试题,由老赵的面试题想到的

最近工作比较忙,一直没时间写博客。而且由于工作的原因也有一段时间没在IDE上写代码了,不过倒是养成了在纸上写代码的习惯。
为了避免自己的遗忘,加上这段时间的思考有了一点自己的感想,打算写点东西作为总结,但是不知如何开头。决定以老赵的面试题为组织结构,写点东西。
想了想,大概包括下面这些内容,列个提纲吧。
1.用表结构来表示的元数据。利用System.Reflection命名空间下的类来解析元数据表。
2.C#编译器和JIT编译器所做的工作,是如何帮我们节省时间的。你所写的未必就是你所得的。
3.泛型。泛型的推断和高度匹配的性质。Java泛型,C#泛型,C++模板有哪些区别?
4.委托和事件。委托和类型安全的编程。委托是类,一个定义有4个方法的类。事件是委托加上线程安全的委托链插入删除委托的方法。
5.字符串。什么叫不可变性?为啥要把一个类设计为不可变?如果我们创建一个不可变的哈希表会有哪些好处。
6.C#中的各种集合,顺带数据结构和算法。用斐波那契数列来讲一下从左往右看还是从右往左看而引出的递归还是动态规划。
7.Linq和lambda表达式,编译器又立功了。匿名函数,闭包,还有状态机。
8.垃圾回收机制,线性结构的堆和链表的堆的比较。按代来回收是基于哪三个假设。哪些东西属于实例,哪些东西属于类?实例和类的生命周期。
9.错误报告机制,使用错误代码还是用异常?用异常有哪些好处和坏处?异常是如何在栈中走动的?维持对象状态的重要性。
8.程序的加载。从程序集的定位到编译成native代码运行的过程。
9.多线程和异步编程和线程池。线程阻塞会带来什么问题。读写锁。到底哪些东西会被多线程影响,不加锁就一定不是线程安全吗?
10.TCP/IP,UDP/IP的一些常识,为什么7层只是理想化?外加基于TCP/IP的Http的一些常识。
以上这些内容会很长,是我在看《CLR VIA C#》,《More Effective C#》,《深入理解计算机操作系统》等一些书时所做的笔记。数数大概有几十页A4纸吧。可能会写一段时间,慢慢来吧,呵呵~~
Tags:  软件测试面试题 微软面试题 java面试题 面试题 月薪五万的面试题

延伸阅读

最新评论

发表评论