工作工作的,似乎忘记了要继续充电了。当然喽,工作上的原因,SQL Server和数据库上的长进还是很大的,不过这些还不够呀。下面是一个欠债清单,要下决心,一个一个还掉了!
- 阅读Rotor的源码
在进公司之前,自己的.NET水准终于差不多了可以去看看Rotor源码的程度了。不过没想到,工作之后,就一点没时间来做这种阅读功课了。现在只有在地铁上有点看书的时间,考虑要不要把源代码打印出来在地铁上看,嘿嘿!至少要把Execution Engine和Thread两大部分给搞懂。 其实对Regular Expression的实现也蛮有兴趣,不过大概没时间。
不过上班也有上班的好处,收获以下两本极有价值的书:
+ Inside Rotor
+ Shared Source CLI Essentials
- 编译原理
对编译原理的兴趣始终不减。需要下决定把龙书看完。感觉这次应该把精力集中在代码生成和代码优化上。前端的东西确实比较死。
以下的书目也在采购计划上。可惜O'reilly的那本《Lex和Yacc》已经绝版。发现原来书店里都只存2年之内的书,看样子下次看到好书绝对不能手弱。好在现在俺也工作了,不怕。嘿嘿~~
+ Advanced Compiler Design and Implementation
+ Crafting a Compiler with C
以上两上皆是Amazon上四星半评价的好书。
实践的话,想要阅读一下Rotor中,C#的编译器的源码。朋友说里面的词法分析器不是用Lex生成的,而是Hand-craft,似乎还蛮有兴趣去瞧一下的。不过更多代码生成和优化的环节是不是会包含在JIT编译器的代码中呢?
- 复习数据结构和算法
数据结构是从初中开始就一陪伴着我的东西了。还记得考大学的时候,做数学物理脑袋涨的时候,就会把严蔚敏老师的《数据结构》拿出来翻翻。现在到是越来越怀念高中的生活。前天晚上的时候,梦到高中时的同桌,梦里那份高兴的心情,似乎好久没有在现实生活感受到了。
《Introduction to Algorithm》这本书是在学数据结构和算法的时候,一直梦寐以求的。可惜买到的时候,已经没有时间看了。再加上MIT公开课程里的那个课程表和相应的习题、讲义、试卷。闲置在那里实在也太可惜。决定好好从头到尾再复习一遍。MIT的课程表里,似乎三小时一个Session,一共42个Session,似乎需要坚持蛮久才行的样子。
以下的是在采购列表上的书:
+ Algorithms in C
由Robert Sedgewick撰写的这本书,据传被认为是我们敬爱的Knuth教授的那套《The Art of Computer Programming》的一个可阅读版本。嘿嘿。在学校的图书馆里看过一部分,说实话,不太喜欢这种风格的C程序,不过盛名之下,应该会有两把刷子的。可以用来参考。同样也是一本Amazon上四星半评价的好书。
- 数据库原理
这算是本职工作了。好歹现在做着SQL Server的技术支持,数据库知识上不更上层楼是不行。目前的储备是由著名的Abraham Silberschatz教授编写的《Database System Concept》一书。我同时还有他编写的那本久负盛名的恐龙书《Operating System Concept》,可惜现在大概是真的没时间看了。很多好书总是到最近才出,学完了才买到,真是可惜错过。好在学操作系统的时候,已经有Tanenbaum教授的《Operating Systems: Design and Implementation》(Amazon四星)不然损失就大了。如果你是一个Linux Fan的话,应该会有听说过这本如雷灌耳的书吧。;-)
不过《Database System Concept》在Amazon上的评价只有三星,而且MIT公开课程中的数据库原理也不是用这本书做教材,而是直接用数据库理论的那些原始论文来讲的。从公司的Library里借了MIT用作教材的数据库论文选集《Readings on Database Systems(Fourth Edition》。这本选集被称为Red Book,也是四星半评论的名著。只是从美国的总部图书馆漂洋过海而来不知道会要多少时间。到时间一定翻印一本。
- Reporting Services
这也是工作的一部分,Reporting Services可是属于我的Specialty哦!在进公司之前,就对RS很有兴趣,所以毫不犹豫就Ready了。:) 不过应用层面的Case都有点无聊,到是对RS的Architecture很有兴趣,一个典范式的.NET程序。
准备研究的部分,包括PDF Rendering Extension和Email Delivery Extension。目前手上的资料只有这两部份和Report Model的Specification,简略到不行的东西,竟然也是Microsoft Confidential。唉...如果能看到源码就好了,看样子,自己还要不断加油。好在.NET的程序反编译出来看也凑合。
动手的部分,是想写一个for word的Rendering Extension。一方面,似乎客户那里对这个功能还是蛮有需求的,另一方面,自己太久不写程序了,也得找个大一点的东东来练手一下。不过这个应该是蛮久之后的事情了,现在连是生成WordML还是原生Word文档都还没有想好。
近一点的目标包括,研习一下VS2005示例程序中的ReportViewer的那个范例。ReportViewer的出现,真是解决了Reporting Services的一大难题,终于可以不要再反复回答那一个BT的问题了。
- Win32 User Mode Debug
手里有的书是《Debugging Applicatoin》,又是Amazon上一本四星半评价的书。可惜不是最新版的,没有.NET的部分。不过新版本的我有电子书,不怕。顺便提下,这书是我从Oliver那里rob过来的,嘿嘿。不过他好象有布置我要看完。
另一个重要的参考是《Win32 User Mode Debug》这本内部的培训教材。差不多看完一遍了。第一部分写得还真棒,感觉我是越来越喜欢Microsoft写的培训教材了,再下去要懒得看书了。不过,附带的习题有点BT,为啥调用一下malloc都可以Access Violation?一点也看不出来。啥叫AV in Heap Manager啊? Oliver又去北京了,没人教我,可怜啊...
呼...写下来发现,欠的东西还真是蛮多,这都要还到哪年哪月呀,不管怎样,还是努力吧!