我的程序人生

網名:Naven,愛好廣泛,汽車、計算機、藝術、足球等等,汽車設計技術乃之最愛,恐終身無法如願。偶從事軟件開發工作6年有餘,入行2年才悟道,對軟件技術執着,技術狂熱型,設計和開發追求嚴謹完美,程序設計是一門藝術,不是枯燥的技術。

深研C/C++和JAVA語言四載有餘,初窺其道,對面向對象、範型、組件技術、WEB服務稍有領悟,感悟到其博大精深,深不可測。同時對各種基礎技術興趣異常,喜鑽研Framework(框架)、OS內核、虛擬機技術,前方之路遙遙。 本人前幾年主要學習OOD(面向對象編程),學習OO理論及其實現(C++和Java),發現光靠它還是很難設計出好的系統,系統容易臃腫而難以維護(雖然範型技術能夠解決一些代碼重複的問題),而解決這一問題讓自己的設計更完美的辦法就是設計模式。自從設計模式(GoF95)問世以來,各種設計方法理論層出不窮,比如敏捷設計、重構、面向方面設計、創建式設計等,但偶認爲最重要最精髓的還是設計模式,它是我學習的重點並運用到我的設計開發中,關鍵是領悟而不是死搬硬套。而且設計模式已經是各種系統設計的指導理論,比如J2EE、.NET裏均運用了大量的模式,Java Framework裏舊的一些不合理的設計也在慢慢改用標準的模式重構,學好用好設計模式在未來意義重大。

技術學習上感覺已開始進入思想積累、理論研究階段,學習已不拘泥於某個具體的技術,主要以研究其技術原理和設計思想爲主, 學習一門新的語言或新技術覺得大同小異。目前本人積累基礎技術經驗主要以語言特性發展、數據結構和算法、設計模式等爲主。對於具體的技術,本人涉足過和準備涉足的有C/C++、STL、Boost、Java、J2EE/EJB、COM、.NET Framework、MFC/ATL、WIN32、Unix/Linux、TCP/IP、VC、ACE Framework、UML、設計模式。。。只要是軟件的基礎技術,均想涉足,目的是想窺視軟件共同的奧祕。 偶認爲,軟件領域雖然龐大繁多,徜若一一詳究慢慢積累,傾一人之終生也未可得。但萬物皆有其宗,假如只剖其主幹去其枝葉,就可得其精髓。況且軟件技術均有通融之道,觀一即可領悟其他,再者凡新技術均由舊技術發展而起,師夷而制夷,青出於藍而勝於藍,如能學習他人之長處創造新技術或者新產品甚至或者應用於實踐足矣,此乃偶之本意。觀所有成功產品及其締造者皆有此來。另本人從小對藝術書畫頗有天賦,因此非常希望學習GUI/GDI、DirectX、Media/DVD、遊戲3D-Engine等圖形相關技術,並希望開發出一些相關的產品,苦精力有限,難有時間持續鑽研。

本人崇拜的軟件領域的偶像主要有Anders、Richter、Strustrup、Lippman,他們是偶努力學習的榜樣,尤其是Richter鑽研Win32奧祕的精神,還有兩位就是候捷和李維,真希望有朝一日修煉到他們的層次。一個人水平的高低不在於他寫過多少行代碼,完成多少個項目,而是他對軟件精髓的領悟,對技術發展趨勢的把握,並由此發展出開創性的技術理論或產品, 而世界整個軟件未來的方向就依靠這些少數有頭腦的人,微軟立於不敗之地就在於它始終是軟件發展的領頭羊。引用李維的話:“軟件設計是入門,軟件趨勢是無價”。

本人經過兩年奮鬥,完成兩個基礎框架:Java Web框架(一個MVC框架)和一個C++基礎框架(還在繼續完善中,陸續會有文檔介紹),約有20萬行代碼,代碼設計優美清晰。考慮到未來希望支持應用服務器軟件、普通軟件、PocketPC軟件、遊戲等應用軟件的開發,以及跨平臺的特性(爲開發這些相關的產品做準備),本人正在考慮重新設計此框架,以使其具備跨平臺和支持多個編譯器及開發工具,以及支持小內存應用等。未來準備重點設計統一的框架體系,有與Java的Interface、Abstract 和 Implement 類和Factory模式、Wrapper模式類似的體系結構,以使得接口與實現儘量分離,並使接口儘量與Java和.Net的統一或者類似。關於C++的庫,本人認爲未有一個像Java/.NET這樣完善規範的框架,而且各個C++庫千差萬別,功能單一,整合起來非常困難,而且很多庫易用性簡潔性考慮不夠,接口的設計很不統一,很多設計出來有點展示或炫耀自己獨有的設計方法似的。


MSN:[email protected]
_________________
C++/OO Java .NET 圖形/GUI 遊戲 - 探討軟件深層問題,結交天下豪傑俠女。
濃濃的咖啡,溫馨的小屋,歡迎來咖啡小屋坐坐啊!
http://www.cppblog.com/javenstudio/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章