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

首頁(yè) > 編程 > .NET > 正文

程序員的.NET時(shí)代(二)

2024-07-10 12:59:18
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

1. 學(xué)習(xí).net框架開(kāi)發(fā)平臺(tái)底層原理和體系結(jié)構(gòu)

.net框架的核心是公共語(yǔ)言運(yùn)行時(shí)(common language runtime,clr)。通常情況下,我們使用一種高級(jí)語(yǔ)言(如c#或者vb.net)編寫(xiě)程序,這些高級(jí)語(yǔ)言的編譯器產(chǎn)生的是一個(gè)托管模塊(即中間語(yǔ)言il代碼)。托管模塊是一個(gè)需要clr才能執(zhí)行的標(biāo)準(zhǔn)windows pe文件。執(zhí)行中間語(yǔ)言代碼的時(shí)候,clr中的即時(shí)編譯器(just-in-time,簡(jiǎn)稱(chēng)jit) 把其轉(zhuǎn)換成cpu指令。這中間有許多細(xì)節(jié),包括怎么初始化clr,微軟組件運(yùn)行時(shí)執(zhí)行引擎mscoree.dll(microsoft component object runtime execution engine,在system32目錄下)怎么工作等等。如果你想精通.net技術(shù),就必須對(duì).net框架原理、程序集、元數(shù)據(jù)、值類(lèi)型/引用類(lèi)型、類(lèi)型設(shè)計(jì)、異常處理、自動(dòng)垃圾回收等核心技術(shù)有一個(gè)清楚的認(rèn)識(shí)。



推薦書(shū)籍:

《.net框架程序設(shè)計(jì)》(修訂版) (清華大學(xué)出版社)

《applied .net framework programming》(影印版)jeffrey richter著

《.microsoft .net il匯編語(yǔ)言程序設(shè)計(jì)》

《.net 本質(zhì)論》(中國(guó)電力出版社)



2. 熟練運(yùn)行底層工具進(jìn)行調(diào)試和解決各種問(wèn)題

了解.net平臺(tái)的底層原理,我們需要學(xué)會(huì)一些工具和clr 調(diào)試器 (dbgclr.exe)的使用。c# 命令行編譯器(csc.exe)和vb.net編譯器(vbc.exe)的重要性就不用再多說(shuō)。

.net 框架 sdk 提供的幾個(gè)比較重要的工具是:msil匯編程序(ilasm.exe)、msil反匯編程序 (ildasm.exe)、程序集鏈接器 (al.exe)。強(qiáng)烈建議大家在開(kāi)發(fā)中多使用msil 反匯編程序 (ildasm.exe),以加強(qiáng)對(duì)clr和底層的了解。msil 匯編程序(ilasm.exe)從 msil 匯編語(yǔ)言生成可移植可執(zhí)行的 pe 文件。反匯編程序(ildasm.exe) 可對(duì)任意 .net 框架 .exe 或 .dll 程序集進(jìn)行分析,并以可讀的格式顯示信息。程序集鏈接器 (al.exe) 從一個(gè)或多個(gè)文件生成一個(gè)帶有程序集清單的文件。.net框架sdk還提供許多其它的工具,如:peverify 工具 (peverify.exe)、強(qiáng)名稱(chēng)工具 (sn.exe)等,我們力求能用命令行的方式使用他們。

需要指出的是:visual studio.net不是能完成所有命令行能做的工作,一些任務(wù)必須由命令行來(lái)完成。如:創(chuàng)建多文件程序集,必須求助于csc.exe的addmodule選項(xiàng)。只有在對(duì).net 框架有很深理解的基礎(chǔ)上,才會(huì)靈活運(yùn)用這些工具。



3. 進(jìn)行大型軟件系統(tǒng)架構(gòu)設(shè)計(jì)

進(jìn)行軟件系統(tǒng)的架構(gòu)設(shè)計(jì),需要積累相當(dāng)豐富的經(jīng)驗(yàn),要求我們從全局的概念上把握軟件的總體結(jié)構(gòu)。首先的一點(diǎn)是,我們必須參照軟件需求說(shuō)明書(shū)。需求說(shuō)明書(shū)是用戶(hù)和開(kāi)發(fā)雙方對(duì)所開(kāi)發(fā)軟件的功能、性能、用戶(hù)界面及運(yùn)行環(huán)境等做出詳細(xì)的說(shuō)明,所以我們?cè)O(shè)計(jì)軟件必須以此為依據(jù)。接下來(lái),我們要做軟件的總體設(shè)計(jì),即概要設(shè)計(jì)。一般需要根據(jù)軟件的業(yè)務(wù)需求和業(yè)務(wù)流程進(jìn)行模塊劃分,規(guī)劃程序的總體結(jié)構(gòu)、輸入輸出以及接口設(shè)計(jì)、運(yùn)行設(shè)計(jì)、數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)和出錯(cuò)處理設(shè)計(jì)等,為詳細(xì)設(shè)計(jì)奠定基礎(chǔ)。在詳細(xì)設(shè)計(jì)中需要指出每一模塊是怎樣實(shí)現(xiàn)的,包括實(shí)現(xiàn)算法、邏輯流程、數(shù)據(jù)流程圖等。以后的工作,就是程序的實(shí)現(xiàn)。測(cè)試是和編碼同步進(jìn)行的,必須嚴(yán)格把好質(zhì)量關(guān)。

在用.net開(kāi)發(fā)大型系統(tǒng)的時(shí)候,一般都是做成三層(或是n層)結(jié)構(gòu)的形式。即將應(yīng)用程序邏輯地分為3個(gè)基本層:數(shù)據(jù)訪問(wèn)和存儲(chǔ)、業(yè)務(wù)邏輯層、表示層。三層結(jié)構(gòu)的優(yōu)點(diǎn)主要是:可擴(kuò)展性、可伸縮性和靈活性。在做web應(yīng)用的時(shí)候,可以考慮采用mvc(模型-視圖-控制器 model-view-controller)模式讓web應(yīng)用程序的用戶(hù)界面功能實(shí)現(xiàn)模塊化。

順便要說(shuō)的是,大型軟件有時(shí)需要整合多種產(chǎn)品,來(lái)滿(mǎn)足企業(yè)級(jí)的應(yīng)用需求。微軟提供了許多server產(chǎn)品,如sql server 、exchange server、share point server、biztalk server等。記住:大家一定要多了解微軟的產(chǎn)品線(xiàn),微軟很多技術(shù)都是相符相承的,結(jié)合起來(lái)才能發(fā)揮作用!我們可以微軟的server級(jí)產(chǎn)品的基礎(chǔ)上整合軟件系統(tǒng)、實(shí)現(xiàn)數(shù)據(jù)共享訪問(wèn)、終端設(shè)備上的電子郵件、消息協(xié)作。總之,通過(guò)互聯(lián)網(wǎng),讓所有人一起協(xié)同工作,是未來(lái)軟件的發(fā)展趨勢(shì)。我們把握好這些方向,就等于駕馭未來(lái)。



推薦書(shū)籍:

《使用 microsoft .net 的企業(yè)解決方案模式》微軟出版社

《enterprise solution patterns using microsoft .net》 ms press



網(wǎng)上資源:

軟件工程專(zhuān)家網(wǎng)

http://www.51cmm.com

uml軟件工程組織

http://www.uml.org.cn/

http://www.umlchina.com



4. 帶領(lǐng)團(tuán)隊(duì)進(jìn)行軟件開(kāi)發(fā)

一個(gè)好的團(tuán)隊(duì),才能開(kāi)發(fā)一個(gè)成功的產(chǎn)品。軟件開(kāi)發(fā)主要由項(xiàng)目管理團(tuán)隊(duì)、軟件開(kāi)發(fā)團(tuán)隊(duì)、軟件測(cè)試團(tuán)隊(duì)組成。項(xiàng)目管理人員主要對(duì)項(xiàng)目進(jìn)行控制,協(xié)調(diào)開(kāi)發(fā)人員、測(cè)試人員的工作。開(kāi)發(fā)人員的工作主要是負(fù)責(zé)軟件的實(shí)現(xiàn)。測(cè)試人員是軟件產(chǎn)品的質(zhì)量保障。其它人員,如產(chǎn)品規(guī)劃方面、軟件技術(shù)支持和文檔、后勤都是不可缺少的。

大型軟件是許多人集體智慧的結(jié)晶,要求project leader有較強(qiáng)的管理能力和技術(shù)背景,以及良好的溝通能力。如果你作技術(shù)的時(shí)間很長(zhǎng),積累了豐富的經(jīng)驗(yàn),做過(guò)項(xiàng)目組長(zhǎng)等管理工作,通過(guò)不斷的學(xué)習(xí)和提升,極有可能成長(zhǎng)為project leader。如果你已是project leader,就到對(duì)軟件的成敗負(fù)責(zé),你可以根據(jù)現(xiàn)有資源決定開(kāi)發(fā)中任務(wù)分配,合理用人,決定功能模塊是否值得開(kāi)發(fā),項(xiàng)目進(jìn)度控制等許多問(wèn)題。總之,帶領(lǐng)團(tuán)隊(duì)的人必須有遠(yuǎn)見(jiàn)卓識(shí),采取正確方法引領(lǐng)團(tuán)隊(duì)取得成功。



推薦書(shū)籍:

《人月神話(huà)》清華大學(xué)出版社

《人件》清華大學(xué)出版社





技術(shù)展望



1.無(wú)縫計(jì)算(seamless computing)

目前,大部分的應(yīng)用還局限于桌面系統(tǒng)。在過(guò)去的二十年,軟件定義了信息時(shí)代,但受到硬件的局限。今天,軟件決定了數(shù)字時(shí)代。“無(wú)縫計(jì)算”是一個(gè)軟件創(chuàng)新框架,旨在消除不同軟件系統(tǒng)之間所存在的界線(xiàn),無(wú)縫計(jì)算概念就是要以無(wú)縫的方式發(fā)揮硬件的全部能力。軟件的根本性創(chuàng)新應(yīng)在網(wǎng)絡(luò)化系統(tǒng)、信息驅(qū)動(dòng)型軟件和多媒體用戶(hù)接口等領(lǐng)域中體現(xiàn)出來(lái)。未來(lái),軟件將不再受制于硬件功能。軟件將幫助人們更好地協(xié)同作業(yè),逐步實(shí)現(xiàn)為人們提供理想工作環(huán)境的無(wú)縫計(jì)算。微軟推出的windows server 2003、office system 2003、visual studio.net、web service,以及今后發(fā)行的sql server “yukon” 、windows longhorn則是無(wú)縫計(jì)算的基礎(chǔ)。比爾.蓋茨在comdex 2003會(huì)議上承諾:要為無(wú)縫計(jì)算提供全方位的框架與服務(wù)。無(wú)縫計(jì)算──的確值得我們期待!



2.無(wú)線(xiàn)通信

在無(wú)線(xiàn)通信方面,用.net進(jìn)行移動(dòng)開(kāi)發(fā),實(shí)現(xiàn)所有設(shè)備終端協(xié)同工作。微軟在2003年已推出精簡(jiǎn)版的.net 開(kāi)發(fā)框架(.net compact framework)。它和smart device extensions (sde) for visual studio .net 一起,將更強(qiáng)的開(kāi)發(fā)能力和強(qiáng)大的編程平臺(tái)帶到了移動(dòng)設(shè)備(如pda、移動(dòng)電話(huà)、機(jī)頂盒和各種運(yùn)行window ce .net操作系統(tǒng)的嵌入式設(shè)備)的開(kāi)發(fā)工作中。今后的無(wú)線(xiàn)通信市場(chǎng)更加巨大,微軟和各大廠商的合作,將使用.net進(jìn)行移動(dòng)開(kāi)發(fā)的人員更加受益。



總結(jié):

.net是一個(gè)劃時(shí)代意義的概念,可以說(shuō)未來(lái)十年內(nèi),會(huì)有更多的軟件開(kāi)發(fā)商使用.net。我們可以看到,現(xiàn)在的vs.net功能已經(jīng)很強(qiáng)大了。而且微軟的開(kāi)發(fā)工具會(huì)更加完善,每一個(gè)新版本的vs.net都比上一版本有許多提升。以后將會(huì)有更多程序員步入.net陣營(yíng),程序員的.net時(shí)代,將會(huì)極大提高生產(chǎn)率。設(shè)想如果世界上的每一臺(tái)服務(wù)器都運(yùn)行一個(gè)web service,提供一個(gè) web api,每個(gè)api都能完成一個(gè)強(qiáng)大的功能,這是一個(gè)多么強(qiáng)大的環(huán)境啊!我們期待這所有的一切。現(xiàn)在,我們要做的是:掌握好今天的.net,迎接明天的輝煌!
發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 阳信县| 南川市| 陆丰市| 根河市| 东台市| 隆化县| 衡南县| 南京市| 平阳县| 始兴县| 曲松县| 河曲县| 吴旗县| 麻江县| 习水县| 吴川市| 山西省| 康保县| 兴山县| 浠水县| 阜阳市| 额尔古纳市| 平果县| 雷山县| 司法| 丽江市| 江安县| 民县| 丹寨县| 察哈| 喀喇| 桦川县| 紫金县| 仙桃市| 西华县| 进贤县| 扎赉特旗| 句容市| 阜城县| 汉寿县| 吉林市|