程序員的.NET時代(一)
2024-07-10 12:59:18
供稿:網(wǎng)友
技術(shù)總是在不斷發(fā)展,微軟.net平臺經(jīng)歷了三年時間的歷程,已經(jīng)被廣大開發(fā)人員所接受。我們利用visual studio.net,可以快速、高效地進行windows form和web form的應用開發(fā)。.net是一個全新的概念,.net代表了一個集合、一個環(huán)境、一個編程的基本結(jié)構(gòu),作為一個平臺來支持下一代的互聯(lián)網(wǎng),因為我們相信世界不會倒退到集中計算的主機模式下。在xml web service技術(shù)逐漸成熟的時候,軟件可被當作一種服務,支持新的設(shè)備,這些設(shè)備包括pc、移動電話、pda、車載系統(tǒng)和機頂盒等,實現(xiàn)相關(guān)設(shè)備協(xié)同工作,給用戶帶來全新的體驗,微軟演繹著一場新的互聯(lián)網(wǎng)革命。作為.net開發(fā)人員,我們應該會對未來充滿信心。
程序員是這場互聯(lián)網(wǎng)革命的推動者,我們大家都在不斷的學習技術(shù)、充實自我,以適應未來的變化(在這里我不想進行.net和java的比較,因為這兩個領(lǐng)域的技術(shù)各有所長,而且涵蓋的范圍都相當廣,單純進行語言的比較是沒有意義的)。微軟用.net為未來十年做了準備,所以當務之急,必須掌握.net開發(fā)工具這個利器,來構(gòu)建我們的應用。其實.net入門也是比較容易的,一般來說,基本掌握.net程序設(shè)計三個月就夠了,半年以后,你就會成為一個合格的.net程序員。如果想成為.net領(lǐng)域的高手,那就得在這個領(lǐng)域積累非常豐富的經(jīng)驗。
.net是這十年中比較流行的開發(fā)工具。我用.net開發(fā)已有兩年多時間了,現(xiàn)將我的學習經(jīng)驗和方法和大家分享。系統(tǒng)地學習.net需要一個循序漸進的過程,我們分為入門級和提升級。如果你是入門者,下面的每個學習階段都是很重要的。假若你對.net比較了解,可以選擇你的需要的知識進行學習。
入門篇
1. 學習面向?qū)ο?oop)的編程思想
許多高級語言都是面向?qū)ο蟮木幊蹋?net也不例外。如果您第一次接觸面向?qū)ο蟮木幊蹋捅仨毨斫忸悺ο?、字段、屬性、方法和事件、封裝、繼承和多態(tài)性、重載、重寫等概念。需要說明的是,微軟的產(chǎn)品幫助文檔做得非常完善,而且查詢相當方便,入門者不得不看。安裝完visual studio.net2003(或者visual studio.net 2002)后,在“程序”組里有一個visual studio 組合幫助集合。初學者從幫助文檔就會獲得許多知識。
2. 選擇一門語言,學習語法及相關(guān)基礎(chǔ)知識
選擇語言的標準:根據(jù)你自己的需求和個人的技術(shù)背景。在.net平臺下,c#、vb.net都是調(diào)用framework的類庫,效率基本一樣,c#的語法嚴謹,適合以前c++、vc的程序員。vb.net不區(qū)分大小寫,寫法隨意一些.,自動縮進,適合以前vb的程序員,微軟也一再提倡用vb.net進行快速開發(fā)。vc++.net更接近底層,可以用托管和非托管兩種方式進行編程。
選擇了需要使用的語言后,我們需要了解語言的語法規(guī)則,包括語句、類型、表達式、運算符、函數(shù)等等,我建議一開始寫程序就要養(yǎng)成良好的編程風格,規(guī)范地進行變量的命名,在代碼中寫好注釋。這對以后的軟件開發(fā)生涯都是很有意義的。
3. 理解.net思想并熟悉框架類庫(framework class library)
我們借用一幅圖來說明一下公共語言運行庫(clr)、框架類庫(fcl)與應用程序之間以及與整個系統(tǒng)之間的關(guān)系。
首先,我們要了解公共語言運行庫、程序集、通用類型系統(tǒng)的概念。在此基礎(chǔ)上,學習.net框架類庫。.net 框架類庫是一個與公共語言運行庫緊密集成的可重用的類型集合。.net 框架類庫封裝了大部分win32 api ,許多以前需要調(diào)用api才能實現(xiàn)的功能,在.net下非常容易就實現(xiàn),許多情況下只需要一句話就足夠了。所以,我們在程序設(shè)計的時候要盡量避免調(diào)用win32 api。學習.net 框架類庫的捷徑:掌握常用的類庫,其它不常用的類庫只需要了解,用到的時候查閱即可。
4. 利用visual studio.net寫程序
在.net平臺下寫程序我們一般用微軟的開發(fā)工具visual studio.net,因為一個好的ide,能極大地提高開發(fā)效率。我建議初學者從windows forms或者是web form開始,等有一定的基礎(chǔ)之后,再轉(zhuǎn)向?qū)戭悗旎蚴强丶?、組件方面的東西。微軟的幫助文檔里自帶許多示例,我們可以一邊看幫助,一邊進行演練。在學習其中的代碼的同時,一定要理解和思考。多寫代碼、從項目中鍛煉是編程高手的成長之路。記?。阂欢ㄒ嗫炊鄬懺创a;多上論壇(如csdn和dev-club)和微軟的新聞組討論技術(shù)問題。
我們一定要用好visual studio.net這個集成開發(fā)環(huán)境,除了編寫代碼外,我們還要了解.net的部署原理,學習打包、部署及管理應用程序。多人開發(fā)的項目可以考慮用visual source safe進行源代碼管理,這一系列開發(fā)工具的使用都要有大量的實踐。
推薦書籍:
《c#高級編程》(第二版)(清華大學出版社)
《microsoft.net程序設(shè)計技術(shù)內(nèi)幕》(清華大學出版社)
《 visual vb.net技術(shù)內(nèi)幕》 (清華大學出版社)
《 visual c#.net技術(shù)內(nèi)幕》 (清華大學出版社)
.net入門教程(包括windows form和web form):
http://chs.gotdotnet.com/quickstart
5. 最好掌握大型數(shù)據(jù)庫編程
一般來講,大多數(shù)軟件開發(fā)都涉及到數(shù)據(jù)庫。大部分軟件的后臺數(shù)據(jù)庫都使用如access、sql server、oracle等。ado.net提供了對關(guān)系數(shù)據(jù)、xml 和應用程序數(shù)據(jù)的訪問。我們必須掌握connection、command、datareader 和 dataadapter 對象的使用,正確運用dataset數(shù)據(jù)集和dataview進行數(shù)據(jù)操作。當然,要有一定的數(shù)據(jù)庫基礎(chǔ),包括表、視圖、存儲過程等的使用。必須把后臺數(shù)據(jù)庫和前臺的ado.net都掌握好,才能真正精通數(shù)據(jù)庫編程。
在項目的開發(fā)中,建議使用數(shù)據(jù)訪問應用程序塊(data access application block)來簡化sql查詢。微軟msdn網(wǎng)站有下載,我們可以利用sqlhelper類進行的數(shù)據(jù)訪問,使用起來非常簡單,很容易地構(gòu)建我們的數(shù)據(jù)訪問層。參考微軟msdn文檔:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnbda/html/daab-rm.asp
推薦書籍:
《ado.net技術(shù)內(nèi)幕》(清華大學出版社)
《ado.net高級編程》(中國電力出版社)
《vb.net和sql server 2000高級編程—創(chuàng)建高效數(shù)據(jù)層》(清華大學出版社)
6. 學習xml web service
xml web services 正在開創(chuàng)一個分布式應用程序開發(fā)的新時代。xml web services 是把軟件當成服務的一種體現(xiàn),通過使用 xml 消息處理啟用數(shù)據(jù)交換和應用程序邏輯遠程調(diào)用。xml使數(shù)據(jù)能夠通過防火墻,實現(xiàn)異類系統(tǒng)之間移動數(shù)據(jù)。雖然公共的web services還不是很普及,但是在一些企業(yè)中,已經(jīng)涉及到了web services的開發(fā)。用visual studio.net 很容易創(chuàng)建web服務,調(diào)用web服務也相當簡單,只需要添加一個web引用,然后調(diào)用即可。進行這方面的學習,需要了解web 服務描述語言 (wsdl)、soap協(xié)議等。