先自我簡介一下,本人從事asp.net開發進一年, 09屆畢業生,xx年11月開始上班,之前做asp,xx年2月後開始做asp.net,由於公司轉型,現在帶十幾個人在一起搞asp.net開發,主要是關於準金融行業的行業管理軟體。年度總結在會議上也寫了,但僅限於對於工作總結及xx年工作計畫,自我總結較少,因此今天專門做下自我的年度總結,主要從技術、管理、人生上面談談這一年的收穫,前輩路過歡迎多多指正。
技術
我在學校里學的是電氣自動化,程式基礎僅限於c基礎課程的一些知識,後來由vb、html轉向asp,在asp上花費了不少時間,對asp比較熟悉,後來由於公司業務需要,將開發平台轉向asp.net,開始對asp.net不是很感冒,以為就是asp的一點擴展(那時還不知道三層架構,數據數據訪問全在頁面里——!),後來招來幾個北大青鳥的過來終於意識到asp.net的強大之處,經過個人的努力已經逐步掌握了asp.net,現在層次上只能講個人覺得是入門而已,原因是多方面的,待會兒會講到。
相信從面向過程轉向面向對象的同學都有一種感覺:面向對象開始真的有點彆扭, 涉及到屬性,尤其是類之間的各種關係,那時老想用面向過程傳遞參數多方面啊。於是老在想對象這種東西,從概念中跳中來,以自己的方式去理解才逐漸體會到頁面對象的精華來,分層次展現、分級別訪問、封裝對象之間各種關係逐漸真正理解了,尤其是對象之間的關係,如對象a與對象b兩者之間的關係,有些需要完全公開,有些需要隱藏,有些需要通過第三方傳遞,有些需要給自己的下級可見,有些需要讓下級去完成具體操作——這不是現實的實際模型嗎?應該這么理解,面向對象來源於現實,它不是一種憑空空想出來的理論,這些對象之間的關係可以將其還原為父子、夫妻、領導下屬、同事、朋友之間的關係。相比之下,頁面過程往往像是一股腦全部推給用戶使用,其中的數據與數據訪問方法層次不清晰,在模擬現實上它與面向對象相比更易於入門理解,實質上難於準確直接地表述。
面向對象上另一方面是它的設計模式,在之前的面向過程中 對這個設計模式並沒有清晰地提出來,面向過程優秀的代碼要求高內聚低耦合,從個人的理解上,這僅是對軟體開發方法“技”上理論總結;設計模式是達到了“道”的層次,因為它從更大的方向、更抽象的層次來去表述具體的代碼模組之間的關係,可以認為設計模式是完全從實際的套用來不斷總結得來的經驗,之間並沒有這種術語,但相信前人肯定也使用到這種思想,它從實際套用於來,當然要套用於實際工作中,認真思考不斷總結每個人都會有自己的“設計模式”,可以借鑑前人的思想來去提升自己,不可去為“設計模式”而設計模式。
具體到asp.net的實現模型中,真正理解它的機制與方法也就不難理解,記住b/s中離不開post或get,所有的autopostback、selectedindexchanged……都是去調用form傳值,加上runat=server的伺服器控制項打開它生成的源檔案也是普通的html標籤,微軟的讓軟體開發更容易的思路是很好的,時代在前進,很多年前你使用c寫出mis證明你很牛,很多年之後你不在使用c去寫“學生管理系統”、“圖書館管理系統”那只能說明你的腦子少一根筋,開發語言都有長處與不足的地方,因為它們適用的場合不同,類似不能拿匕首去跟炮彈比,也不能拿c與php比,程式設計師都有一種偏執的心理,但一點要記住,你面對的用戶才有最終發言權,程式能不能滿足需要,易用性、穩定性、成本才是應當首先放到重要位置來去談的。