7、在一種語(yǔ)言上編程,但別為其束縛了思想。“代碼大全”中說(shuō):“深入一門(mén)語(yǔ)言編程,不要浮于表面”。深入一門(mén)語(yǔ)言開(kāi)發(fā)還遠遠不足,任何編程語(yǔ)言的存在都有其自身的理由,所以也沒(méi)有哪門(mén)語(yǔ)言是“包治百病”的“靈丹妙藥”。編程語(yǔ)言對開(kāi)發(fā)人員解決具體問(wèn)題的思路和方式的影響與束縛的例子俯拾皆是。我的經(jīng)驗是:用面對對象工具開(kāi)發(fā)某些關(guān)鍵模塊時(shí),為什么不可以借鑒c、c51、匯編的模塊化封裝方式?用傳統的桌面開(kāi)發(fā)工具(目前主要有vc++、delphi)進(jìn)行系統體統結構設計時(shí),為什么不可以參考來(lái)自 java社區的ioc、aop設計思想,甚至借鑒像spring、hibernate、jboss等等優(yōu)秀的開(kāi)源框架?在進(jìn)行類(lèi)似于實(shí)時(shí)通信、數據采集等功能的設計、實(shí)現時(shí),為什么不可以引用來(lái)自實(shí)時(shí)系統、嵌入式系統的優(yōu)秀的體系框架與模式?為什么一切都必須以個(gè)人、團隊在當然開(kāi)發(fā)語(yǔ)言上的傳統或者經(jīng)驗來(lái)解決問(wèn)題???“他山之石、可以攻玉”。
8、養成總結與反思的習慣,并有意識地提煉日常工作成果,形成自己的個(gè)人源碼庫、解決某類(lèi)問(wèn)題的通用系統體系結構、甚至進(jìn)化為框架。眾所周知,對軟件開(kāi)發(fā)人員而言,有、無(wú)經(jīng)驗的一個(gè)顯著(zhù)區別是:無(wú)經(jīng)驗者完成任何任務(wù)時(shí)都從頭開(kāi)始,而有經(jīng)驗者往往通過(guò)重組自己的可復用模塊、類(lèi)庫來(lái)解決問(wèn)題 (其實(shí)這個(gè)結論不應該被局限在軟件開(kāi)發(fā)領(lǐng)域、可以延伸到很多方面)。這并不是說(shuō),所有可復用的東西都必須自己實(shí)現,別人成熟的通過(guò)測試的成果也可以收集、整理、集成到自己的知識庫中。但是,最好還是自己實(shí)現,這樣沒(méi)有知識產(chǎn)權、版權等問(wèn)題,關(guān)鍵是自己實(shí)現后能真正掌握這個(gè)知識點(diǎn),擁有這個(gè)技能。
9、理論與實(shí)踐并重,內外雙修。工程師的內涵是:以工程師的眼光觀(guān)察、分析事物和世界。一個(gè)合格的軟件工程師,是真正理解了軟件產(chǎn)品的本質(zhì)及軟件產(chǎn)品研發(fā)的思想精髓的人(個(gè)人觀(guān)點(diǎn)、歡迎探討)。掌握軟件開(kāi)發(fā)語(yǔ)言、應用語(yǔ)言工具解決工作中的具體問(wèn)題、完成目標任務(wù)是軟件工程師的主要工作,但從軟件工程師這個(gè)角度來(lái)看,這只是外在的東西,并非重要的、本質(zhì)的工作。學(xué)習、掌握軟件產(chǎn)品開(kāi)發(fā)理論知識、軟件開(kāi)發(fā)方法論,并在實(shí)踐中理解、應用軟件產(chǎn)品的分析、設計、實(shí)現思想來(lái)解決具體的軟件產(chǎn)品研發(fā)問(wèn)題,才是真正的軟件工程師的工作。站在成熟理論與可靠方法論的高度思考、分析、解決問(wèn)題,并在具體實(shí)踐中驗證和修正這些思想與方式,最終形成自己的理論體系和實(shí)用方法論。
10、心態(tài)有多開(kāi)放,視野就有多開(kāi)闊。不要抱著(zhù)自己的技術(shù)和成果,等到它們都已經(jīng)過(guò)時(shí)變成垃圾了,才拿出來(lái)丟人現眼。請及時(shí)發(fā)布自己的研究成果:開(kāi)發(fā)的產(chǎn)品、有創(chuàng )意的設計或代碼,公布出來(lái)讓大家交流或者使用,你的成果才有進(jìn)化和升華的機會(huì )。想想自己 XX年間開(kāi)發(fā)的那些windows系統工具,5、6年之后的今天,還是那個(gè)樣子,今天流行的好多windows系統工具都比自己的晚,但進(jìn)化得很好,且有那么多用戶(hù)在使用。并且,不要保守自己的技術(shù)和思想,盡可能地與人交流與分享,或者傳授給開(kāi)發(fā)團隊的成員。“與人交換蘋(píng)果之后,每個(gè)人還是只有一個(gè)蘋(píng)果;但交換思想之后,每個(gè)人都擁有兩種思想”,道理大家都懂,但有多少人真正能做到呢?
11、盡量參加開(kāi)源項目的開(kāi)發(fā)、或者與朋友共同研制一些自己的產(chǎn)品,千萬(wàn)不要因為沒(méi)有錢(qián)賺而不做。網(wǎng)絡(luò )早已不再只是“虛擬世界”,網(wǎng)上有很多的開(kāi)源項目、合作開(kāi)發(fā)項目、外包項目,這都是涉獵工作以外的知識的絕好機會(huì ),并且能夠結識更廣的人緣。不要因為工作是做 erp,就不去學(xué)習和了解嵌入式、實(shí)時(shí)、通信、網(wǎng)絡(luò )等方面的技術(shù),反過(guò)來(lái)也是一樣。如果當他別人拿著(zhù)合同找你合作,你卻這也不會(huì ),那也不熟時(shí),你將后悔莫及。
12、書(shū)到用時(shí)方恨少,不要將自己的知識面僅僅局限于技術(shù)方面。諾貝爾經(jīng)濟學(xué)獎得主西蒙教授的研究結果表明: “對于一個(gè)有一定基礎的人來(lái)說(shuō),他只要真正肯下功夫,在6個(gè)月內就可以掌握任何一門(mén)學(xué)問(wèn)。”教育心理學(xué)界為感謝西蒙教授的研究成果,故命名為西蒙學(xué)習法?梢(jiàn),掌握一門(mén)陌生的學(xué)問(wèn)遠遠沒(méi)有想想的那么高難、深奧。多方吸取、廣泛涉獵。極力夯實(shí)自己的影響圈、盡量擴大自己的關(guān)注圈。財務(wù)、經(jīng)濟、稅務(wù)、管理等等知識,有空花時(shí)間看看,韜光養晦、未雨綢繆。
13、本文的總結與反思:
a:不要去做技術(shù)上的高手,除非你的目標如此。雖然本文是關(guān)于提高軟件開(kāi)發(fā)知識的建議,做技術(shù)的高手是我一向都不贊同的。你可以提高自己的專(zhuān)業(yè)知識,但能勝任工作即止。
b:提高軟件知識和技術(shù)只是問(wèn)題的表面,本質(zhì)是要提高自己認識問(wèn)題、分析問(wèn)題、解決問(wèn)題的思想高度。軟件專(zhuān)業(yè)知識的很多方法和原理,可以很容易地延伸、應用到生活的其它方面。
c:在能勝任工作的基礎上,立即去涉獵其它領(lǐng)域的專(zhuān)業(yè)知識,豐富自己的知識體系、提高自己的綜合素質(zhì),尤其是那些目標不在技術(shù)方面的朋友。
你可能感興趣的工作總結: