当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > .net程序员,该不该学IL?

ASP.NET
一个无刷新效果定时自动更新页面的例子
ASP.NET2.0的控件状态和视图状态探讨
用好ASP.NET 2.0的URL映射
详解:如何在.NET中访问MySQL数据库?
如何实现Asp与Asp.Net共享Session
利用.net的强大功能发送email
.NET中加密与解密QueryString的方法
Asp.net生成htm静态文件的两种途径
C#定时器的使用
从XML文件中读取数据绑定到DropDownList
ASP.NET 2.0 里输出文本格式流
用.net动态创建类的实例
.Net下的MSMQ的同步异步调用
ASP.NET 2.0实现防止同一用户同时登陆
asp.NET自定义服务器控件内部细节
组合.NET数据控件构建强大用户接口
用ASP.NET 2.0 FormView控件控制显示
菜鸟也学习ASP.NET如何读取数据库内容
教你简单方便获取Web设计的免费资源
专家详解:复杂表达式的执行步骤

ASP.NET 中的 .net程序员,该不该学IL?


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-23   浏览: 126 ::
收藏到网摘: n/a

最近一直在思考一个问题,那就是.net程序员的发展,应该往上走还是往下走的事情。所谓往上走,我的理解是朝着系统架构方向发展,从原来的编码工作转向架构、设计、分析等等工作。

而往下走,是研究.net底层原理和实现,可能大部分就是对IL和CLR的研究。

最近和一个在.net领域刚刚工作,并且很有激情往.net方向发展的同学讨论关于学习IL代码的事情,对方咨询过他们的PM,表示,那个东西学不学无所谓,是否学习IL对学习.net本身影响不大。

说实话 ,我对.net学习也不是很深,可能是我接触.net比较早的缘故吧,在我刚刚开始学习.net的时候,大部分的书籍资料都很强调IL,可能那个时候.net刚刚问世,人们更关心.net和native的区别,其实那个时候我听到的比较不是来自于.net何java,而是c#和C++。人们更多讨论C#和C++孰优孰劣。

关于架构的事情我还不了解,关于IL的了解更少,但是我总感觉,虽然我们不需要用IL来编码,但是对IL的理解可以让我们明白.net代码是如何执行的,至少我们会知道C#里的每种操作转化后的的操作是什么,虽然IL还不是机器指令,但是不同的操作转换到IL上对性能的影响也是可见一斑的。

也许,.net还不太常用在实时系统中,大部分都是作为service程序或者asp.net的server端代码。也许细微的性能问题对系统开销影响还不大。

所以我也开始怀疑,研究IL是否对.net很重要。就连写C或者C++的人都不怎么看ASM了。除非是写实时性很强的东西,比如单片机,否则,底层的东西对我们已经不重要了,尤其.NET还有GC,不少底层的东西已经无须我们干预了。

但是无论如何,我想,学习一些IL方面的知识还是对写.net有帮助的,不说给你EXE或者DLL让你分析原理这等非IL不可的工作,单就是解决程序结构和性能问题,学习IL还是值得的,何况IL比C#难不多少,可读性比ASM要强多得多。所以,茶余饭后有时间看看IL还是学学那个东西吧。

原文地址:http://www.cnblogs.com/zeiss/archive/2009/09/01/1558139.html