程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> .NET實例教程 >> .net程序員,該不該學IL?

.net程序員,該不該學IL?

編輯:.NET實例教程

最近一直在思考一個問題,那就是.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

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved