国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

程序員的.NET時代(2)

2019-11-18 12:06:11
字體:
來源:轉載
供稿:網友

  提升篇
  
  1.學習.NET框架開發平臺底層原理和體系結構
  .NET框架的核心是公共語言運行時(Common Language Runtime,CLR)。通常情況下,我們使用一種高級語言(如C#或者VB.NET)編寫程序,這些高級語言的編譯器產生的是一個托管模塊(即中間語言IL代碼)。托管模塊是一個需要CLR才能執行的標準Windows PE文件。執行中間語言代碼的時候,CLR中的即時編譯器(Just-in-time,簡稱JIT) 把其轉換成CPU指令。這中間有許多細節,包括怎么初始化CLR,微軟組件運行時執行引擎MSCorEE.dll(Microsoft Component Object Runtime Execution Engine,在system32目錄下)怎么工作等等。假如你想精通.NET技術,就必須對.NET框架原理、程序集、元數據、值類型/引用類型、類型設計、異常處理、自動垃圾回收等核心技術有一個清楚的熟悉。
  
  推薦書籍:
  
  《.NET框架程序設計》(修訂版) (清華大學出版社)
  《Applied .NET Framework PRogramming》(影印版)Jeffrey Richter著
  《.Microsoft .NET IL匯編語言程序設計》
  《.NET 本質論》(中國電力出版社)
  
  2.熟練運行底層工具進行調試和解決各種問題
  了解.NET平臺的底層原理,我們需要學會一些工具和CLR 調試器 (DbgCLR.exe)的使用。C# 命令行編譯器(Csc.exe)和VB.NET編譯器(Vbc.exe)的重要性就不用再多說。
  
  .NET 框架 SDK 提供的幾個比較重要的工具是:MSIL匯編程序(Ilasm.exe)、MSIL反匯編程序 (Ildasm.exe)、程序集鏈接器 (Al.exe)。強烈建議大家在開發中多使用MSIL 反匯編程序 (Ildasm.exe),以加強對CLR和底層的了解。MSIL 匯編程序(Ilasm.exe)從 MSIL 匯編語言生成可移植可執行的 PE 文件。反匯編程序(Ildasm.exe) 可對任意 .NET 框架 .exe 或 .dll 程序集進行分析,并以可讀的格式顯示信息。程序集鏈接器 (Al.exe) 從一個或多個文件生成一個帶有程序集清單的文件。.NET框架SDK還提供許多其它的工具,如:PEVerify 工具 (Peverify.exe)、強名稱工具 (Sn.exe)等,我們力求能用命令行的方式使用他們。
  
  需要指出的是:Visual Studio.NET不是能完成所有命令行能做的工作,一些任務必須由命令行來完成。如:創建多文件程序集,必須求助于csc.exe的addmodule選項。只有在對.NET 框架有很深理解的基礎上,才會靈活運用這些工具。
  
  3.進行大型軟件系統架構設計
  進行軟件系統的架構設計,需要積累相當豐富的經驗,要求我們從全局的概念上把握軟件的總體結構。首先的一點是,我們必須參照軟件需求說明書。需求說明書是用戶和開發雙方對所開發軟件的功能、性能、用戶界面及運行環境等做出具體的說明,所以我們設計軟件必須以此為依據。接下來,我們要做軟件的總體設計,即概要設計。一般需要根據軟件的業務需求和業務流程進行模塊劃分,規劃程序的總體結構、輸入輸出以及接口設計、運行設計、數據結構設計和出錯處理設計等,為具體設計奠定基礎。在具體設計中需要指出每一模塊是怎樣實現的,包括實現算法、邏輯流程、數據流程圖等。以后的工作,就是程序的實現。測試是和編碼同步進行的,必須嚴格把好質量關。
  
  在用.NET開發大型系統的時候,一般都是做成三層(或是N層)結構的形式。即將應用程序邏輯地分為3個基本層:數據訪問和存儲、業務邏輯層、表示層。三層結構的優點主要是:可擴展性、可伸縮性和靈活性。在做Web應用的時候,可以考慮采用MVC(模型-視圖-控制器 Model-View-Controller)模式讓Web應用程序的用戶界面功能實現模塊化。
  
  順便要說的是,大型軟件有時需要整合多種產品,來滿足企業級的應用需求。微軟提供了許多Server產品,如SQL Server 、Exchange Server、Share Point Server、BizTalk Server等。記?。捍蠹乙欢ㄒ嗔私馕④浀漠a品線,微軟很多技術都是相符相承的,結合起來才能發揮作用!我們可以微軟的Server級產品的基礎上整合軟件系統、實現數據共享訪問、終端設備上的電子郵件、消息協作。總之,通過互聯網,讓所有人一起協同工作,是未來軟件的發展趨勢。我們把握好這些方向,就等于駕馭未來。
  
  推薦書籍:
  
  《使用 Microsoft .NET 的企業解決方案模式》微軟出版社
  《Enterprise Solution Patterns Using Microsoft .NET》 MS Press
  
  網上資源:
  
  軟件工程專家網
  http://www.51cmm.com
  UML軟件工程組織
  http://www.uml.org.cn/
  http://www.umlchina.com
  
  4.帶領團隊進行軟件開發
  一個好的團隊,才能開發一個成功的產品。軟件開發主要由項目治理團隊、軟件開發團隊、軟件測試團隊組成。項目治理人員主要對項目進行控制,協調開發人員、測試人員的工作。開發人員的工作主要是負責軟件的實現。測試人員是軟件產品的質量保障。其它人員,如產品規劃方面、軟件技術支持和文檔、后勤都是不可缺少的。
  大型軟件是許多人集體聰明的結晶,要求Project Leader有較強的治理能力和技術背景,以及良好的溝通能力。假如你作技術的時間很長,積累了豐富的經驗,做過項目組長等治理工作,通過不斷的學習和提升,極有可能成長為Project Leader。假如你已是Project Leader,就到對軟件的成敗負責,你可以根據現有資源決定開發中任務分配,合理用人,決定功能模塊是否值得開發,項目進度控制等許多問題??傊瑤ьI團隊的人必須有遠見卓識,采取正確方法引領團隊取得成功。
  
  推薦書籍:
  《人月神話》清華大學出版社
  《人件》清華大學出版社
  
  技術展望
  
  1.無縫計算(Seamless Computing)
  目前,大部分的應用還局限于桌面系統。在過去的二十年,軟件定義了信息時代,但受到硬件的局限。今天,軟件決定了數字時代?!盁o縫計算”是一個軟件創新框架,旨在消除不同軟件系統之間所存在的界線,無縫計算概念就是要以無縫的方式發揮硬件的全部能力。軟件的根本性創新應在網絡化系統、信息驅動型軟件和多媒體用戶接口等領域中體現出來。未來,軟件將不再受制于硬件功能。軟件將幫助人們更好地協同作業,逐步實現為人們提供理想工作環境的無縫計算。微軟推出的Windows Server 2003、Office System 2003、Visual Studio.Net、Web Service,以及今后發行的SQL Server “Yukon” 、Windows Longhorn則是無縫計算的基礎。比爾.蓋茨在Comdex 2003會議上承諾:要為無縫計算提供全方位的框架與服務。無縫計算──的確值得我們期待!
  
  2.無線通信
  在無線通信方面,用.NET進行移動開發,實現所有設備終端協同工作。微軟在2003年已推出精簡版的.Net 開發框架(.Net Compact Framework)。它和Smart Device Extensions (SDE) for Visual Studio .NET 一起,將更強的開發能力和強大的編程平臺帶到了移動設備(如PDA、移動電話、機頂盒和各種運行Window CE .NET操作系統的嵌入式設備)的開發工作中。今后的無線通信市場更加巨大,微軟和各大廠商的合作,將使用.NET進行移動開發的人員更加受益。
  
  總結
  .NET是一個劃時代意義的概念,可以說未來十年內,會有更多的軟件開發商使用.NET。我們可以看到,現在的VS.NET功能已經很強大了。而且微軟的開發工具會更加完善,每一個新版本的VS.NET都比上一版本有許多提升。以后將會有更多程序員步入.NET陣營,程序員的.NET時代,將會極大提高生產率。設想假如世界上的每一臺服務器都運行一個Web Service,提供一個 Web API,每個API都能完成一個強大的功能,這是一個多么強大的環境??!我們期待這所有的一切。現在,我們要做的是:把握好今天的.NET,迎接明天的輝煌!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 赣州市| 清苑县| 阿克苏市| 瑞昌市| 宜州市| 石景山区| 海晏县| 怀集县| 奉新县| 花莲县| 上林县| 灵宝市| 西林县| 宜宾市| 雷山县| 岑溪市| 晋江市| 横山县| 竹北市| 永宁县| 红河县| 临邑县| 同德县| 页游| 石狮市| 庆云县| 沙洋县| 邵阳县| 荥经县| 龙门县| 江安县| 安仁县| 九台市| 曲沃县| 黄山市| 尼木县| 云龙县| 华亭县| 阳曲县| 崇义县| 闵行区|