教你十個(gè)步驟成為優(yōu)秀Java開發(fā)人員(教你十個(gè)步驟成為優(yōu)秀java開發(fā)人員)
一、對(duì)OO原則有很強(qiáng)的基礎(chǔ)和理解
對(duì)于Java開發(fā)人員來說,必須對(duì)面向?qū)ο缶幊逃泻軓?qiáng)的理解。沒有在OOPS上有很強(qiáng)的基礎(chǔ),就不能實(shí)現(xiàn)像Java這樣的面向?qū)ο缶幊陶Z言的美。如果你不知道什么是OOPS,即使使用的是OOP語言,可能仍然在以過程的方式進(jìn)行編碼。僅僅研究面向?qū)ο蟮脑瓌t定義并沒有多大幫助。我們應(yīng)該知道如何應(yīng)用這些原則以面向?qū)ο蟮姆绞皆O(shè)計(jì)解決方案。因此,應(yīng)該對(duì)對(duì)象建模、繼承、多態(tài)性、設(shè)計(jì)模式等有很強(qiáng)的了解。
二、掌握核心api
如果你不知道語言結(jié)構(gòu)和核心api,那么在理論知識(shí)方面你有多強(qiáng)并不重要。對(duì)于Java,人們應(yīng)該對(duì)Java.lang.*、I/O、異常、集合、泛型、線程、JDBC等核心API有很強(qiáng)的實(shí)踐經(jīng)驗(yàn)。在構(gòu)建web應(yīng)用程序時(shí),無論你使用的是哪種框架,理解有關(guān)Servlet和JSP的概念也很重要——這是必須的。
三、繼續(xù)編碼
從理論上講,事情看起來更簡(jiǎn)單。我們能很容易地解決一個(gè)問題。但是,當(dāng)我們開始實(shí)施方法時(shí),我們可以意識(shí)到問題的深度。在編寫代碼時(shí),你將了解語言的局限性或設(shè)計(jì)最佳實(shí)踐。所以請(qǐng)繼續(xù)編碼,并在編碼時(shí),多想想是什么、為什么、怎么做、有什么用等問題。
四、訂閱論壇
我們并不孤單。有很多人在研究和我們同樣的技術(shù)。雖然在框架上做一個(gè)簡(jiǎn)單的概念驗(yàn)證可能不會(huì)給你帶來真正的挑戰(zhàn),但是當(dāng)你開始在實(shí)際項(xiàng)目中使用它時(shí),你將面臨奇怪的問題,并且在他們的官方文檔中找不到任何解決方案。開始研究新技術(shù)時(shí),最好的也是第一件事就是訂閱相關(guān)的技術(shù)論壇。不管你面臨的問題是什么,世界上的其他人可能已經(jīng)面對(duì)了,并找到了解決辦法。如果你能回答其他論壇用戶提出的問題,那就太好了。
五、關(guān)注博客并回復(fù)
正如我已經(jīng)說過的,你并不孤單。全世界有成千上萬的狂熱的技術(shù)狂在博客上發(fā)表他們對(duì)技術(shù)的見解。你還可以從其他博客和開發(fā)人員那里獲得對(duì)同一技術(shù)的有價(jià)值的觀點(diǎn)。有些人可能會(huì)發(fā)現(xiàn)特定的框架特性非常有用,而另一些人可能會(huì)發(fā)現(xiàn)這些特性愚蠢而毫無意義,給出他自己為什么會(huì)這樣的理由。因此,你可以從使用這些工具的其他開發(fā)人員那里看到好處和壞處。
從其他博客中獲取價(jià)值的另一種方法是用你的觀點(diǎn)和問題來回復(fù)/評(píng)論文章。
六、閱讀開源框架的源代碼
一個(gè)好的開發(fā)人員將學(xué)習(xí)如何使用框架。但是如果你想成為一個(gè)優(yōu)秀的開發(fā)人員,你應(yīng)該研究各種成功的、流行的框架的源代碼,在這里你可以看到框架的內(nèi)部工作機(jī)制以及最佳實(shí)踐。當(dāng)以更有效的方式使用框架時(shí),它將對(duì)使用有很大幫助。
七、了解新興技術(shù)趨勢(shì)
從開源軟件的發(fā)展趨勢(shì)來看,它們正以驚人的速度增長(zhǎng)。當(dāng)你對(duì)如何使用一個(gè)特定的框架有了一個(gè)好的想法時(shí),它就有被淘汰的危險(xiǎn)了,因?yàn)橐恍┬碌目蚣艹霈F(xiàn)在圖片中,具有一組超級(jí)特性。然后,你試圖用當(dāng)前框架解決的問題可能已經(jīng)由具有單行配置的新框架更容易解決了。所以,要注意照片里的內(nèi)容,還有外面的內(nèi)容。
八、將常用的代碼片段/實(shí)用程序整理分類
隨著時(shí)間的推移,你可能需要一次又一次地編寫/復(fù)制粘貼同一段代碼/配置。保留log4.properties、JDBC configuration等配置片段和StringUtils、ReflectionUtils、DBUtils等實(shí)用程序?qū)⒏袔椭?。我知道它本身不?huì)讓你成為一個(gè)優(yōu)秀的開發(fā)人員。但想象一下,某個(gè)聯(lián)合開發(fā)人員要求你幫助從對(duì)象集合中獲取屬性的值列表,然后你只需使用ReflectionUtil并在幾分鐘內(nèi)給出解決方案:這將使你表現(xiàn)出色。
九、了解不同的開發(fā)方法
熟悉各種方法,如敏捷、SCRUM、XP、瀑布等等。現(xiàn)在,選擇開發(fā)方法取決于客戶。有些客戶更喜歡敏捷,有些客戶對(duì)瀑布模型很滿意。S,o對(duì)各種方法有一個(gè)想法將是一個(gè)真正的好處。
十、記錄/博客你對(duì)技術(shù)的想法
在日常工作中,你可能會(huì)學(xué)到新的更好的做事方法,以及最佳實(shí)踐、架構(gòu)理念等。不斷記錄這些想法,為它們寫博客,或者在各大社區(qū)進(jìn)行分享,和別人進(jìn)行碰撞,另外,對(duì)于日常工作的做筆記,也能讓你工作效率快一半以上,好記性也比不過爛筆頭。