0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

java程序員必須要學(xué)習(xí)哪些東西

工程師人生 ? 來(lái)源:工程師吳畏 ? 2019-06-25 17:12 ? 次閱讀

最近室友閑聊的時(shí)候告訴我,他在網(wǎng)上收集了做為一個(gè)java程序員必須要會(huì)的東西,他覺(jué)得自己要有個(gè)方向,否則一定會(huì)在平平凡凡的工作中,不思進(jìn)取,最終渾渾噩噩。真是讓我猛然驚醒啊,做為一個(gè)底層的程序員,如何才能拼得過(guò)出來(lái)的大學(xué)精英和社會(huì)老手?學(xué)習(xí)一定必不可少。雖然自己有點(diǎn)懶,我先把這些記下,待日后盡量弄懂。

Web/WinForm/通吃,包括ASP.NET,WebService,Remoting,Thread,Serializable,ADO.NET等命名空間

精通UML

精通DesignPatterns 23+N種模式:默寫(xiě)各個(gè)模式UML圖,熟記代碼實(shí)現(xiàn)方式,范例,以及.NET相關(guān)接口

精通CLR

VB.NET/C#通吃

精通OOP理念

精通DB設(shè)計(jì)與T-SQL,SQL2005就可以了

熟悉AJAX全套技術(shù)

通吃WPF/WCF/WF/LINQ

WEB 2.0理念,理解Blog/Wiki/RSS架構(gòu),SOA理念

精通數(shù)據(jù)結(jié)構(gòu)/操作系統(tǒng)/安全加密

精通.NET設(shè)計(jì)規(guī)范

研究5套以上經(jīng)典源碼,例如:SharpDevelop,PetShop,DotNetNuke,SmartClient,NUnit,F(xiàn)otoVision,CSLA等等

熟悉DirectX編程模式

翻譯過(guò)1-2本技術(shù)書(shū)籍

軟件開(kāi)發(fā)是一個(gè)跨度很大的技術(shù)工作,在語(yǔ)言方面,有C、C++、Java、Ruby等等等等;在環(huán)境方面,又分嵌入式、桌面系統(tǒng)、企業(yè)級(jí)、WEB、基礎(chǔ)系統(tǒng),或是科學(xué)研究。但是,不管是什么的情況,總是有一些通用的基本職業(yè)技能。

這些最基本的職業(yè)技能通常決定了一個(gè)程序員的級(jí)別,能否用好這些技能,直接關(guān)系到了程序員的職業(yè)生涯。很多程序新手也是因?yàn)槿鄙佟⑦_(dá)不到或是不熟悉在這些基本技能,所以,他們需要有老手帶,需要努力補(bǔ)齊這些技能。而高級(jí)程序員應(yīng)該非常熟悉這些基本技能,而且有能力勝任并帶領(lǐng)其他經(jīng)驗(yàn)不足的程序員。

下面這些基本職業(yè)技術(shù)可以用來(lái)做為對(duì)一個(gè)程序員的評(píng)估,很明顯,下面的這些技能都可以用來(lái)做面試。雖然,還有很多非技術(shù)的因素,但對(duì)于評(píng)估一個(gè)程序員的技術(shù)能力來(lái)說(shuō),其應(yīng)該是足夠的了。

下面是程序員所應(yīng)該具備的基本職業(yè)技能:

閱讀代碼 - 這個(gè)技能需要程序員能夠具備讀懂已經(jīng)存在的代碼的能力,這樣的能力可以讓程序員分析程序的行為,了解程序,這樣才能和開(kāi)發(fā)團(tuán)隊(duì)一起工作,繼承維護(hù)或是改進(jìn)現(xiàn)有的程序。(相關(guān)閱讀:《閱讀優(yōu)秀代碼是提高開(kāi)發(fā)人員修為的一種捷徑》)

編寫(xiě)程序 - 編寫(xiě)程序并不包括程序設(shè)計(jì)。不要以為編程是一件很簡(jiǎn)單的事情,很多程序員都認(rèn)為編程只需要懂得程序語(yǔ)言的語(yǔ)法,并把設(shè)計(jì)實(shí)現(xiàn)就可以了。但是這離編寫(xiě)程序還遠(yuǎn)遠(yuǎn)不夠,使用什么樣的編碼風(fēng)格成為編寫(xiě)程序員最需要具備的基本技能。能否使用非常良好的編程風(fēng)格直接決寫(xiě)了程序員的級(jí)別。

軟件設(shè)計(jì) - 這一能力直接決定了需要吏用什么樣的代碼技術(shù)達(dá)到怎么樣的功能,而系統(tǒng)架構(gòu)設(shè)計(jì)直接決定了軟件的質(zhì)量、性能和可維護(hù)性。并不是所有的程序在這一方面都非常優(yōu)秀,但每個(gè)程序員都需要或多或少的明白和掌握這一基本技能。

熟悉軟件工程 - 每個(gè)程序員都應(yīng)該明白軟件工程是什么東西,都應(yīng)該知道,需求分析、設(shè)計(jì)、編碼、測(cè)試、Release和維護(hù)這幾個(gè)階段。當(dāng)然,幾乎所有的人都知道這些東西,但并不是每個(gè)人都很清楚這些東西?,F(xiàn)在很多高級(jí)程序員都會(huì)混淆“需求規(guī)格說(shuō)明書(shū)FS”和“概要設(shè)計(jì)HLD”。另外,程序員還需要知道一些軟件開(kāi)發(fā)的方法/論,比如:敏捷開(kāi)發(fā)或瀑布模型。

使用程序庫(kù)或框架 - 一個(gè)程序員需要學(xué)會(huì)使用已有的代碼,無(wú)論是標(biāo)論的程序庫(kù),或是第三方的,還是自己公司內(nèi)部的,都需要學(xué)會(huì)做。比如:C++中,需要學(xué)會(huì)使用STL、MFC、ATL、BOOST、AC、CPPUNIT等等。使用這些東西,可以讓你的工作事半功倍。

程序調(diào)試 - 程序調(diào)試是分析BUG和解決問(wèn)題最直接的能力。沒(méi)有人能夠保證程序?qū)懗鰜?lái)不用調(diào)試就可以運(yùn)行正常,也沒(méi)有人可以保證程序永遠(yuǎn)不會(huì)出BUG。所以,熟練使用調(diào)試器是一個(gè)程序員需要具備的基本技能。

使用IDE - 學(xué)會(huì)使用IDE工具也會(huì)讓你的工作事半功倍。比如,VC++、Emacs、Eclipse等等,并要知道這些IDE的長(zhǎng)處和短處。

使用版本控制 - 一定要學(xué)會(huì)使用版本控制工具,什么叫mainline/trunk,什么叫tag,什么叫branch,怎么做patch,怎么merge代碼,怎么reverse,怎么利用版本控制工具維護(hù)不同版本的軟件。這是程序員需要明的的軟件配置管理中最重要的一塊。

單元測(cè)試 - 單元測(cè)試是每個(gè)程序都需要做的。很多單元測(cè)試也是需要編碼的。一定要學(xué)會(huì)在xUnit框架下進(jìn)行單元測(cè)試。比如JUnit, NUnit, CppUnit等等。

重構(gòu)代碼 - 每個(gè)程序員都需要有最基本的能力去重構(gòu)目前已有的代碼,使代碼達(dá)到最優(yōu)但卻不能影響任何的已有的功能。有一本書(shū)叫《軟件的重構(gòu)》,每個(gè)程序員都應(yīng)該讀一下。

自動(dòng)化編譯 - 程序員需要使用一個(gè)腳本,其能自動(dòng)化編程所有的工程和代碼,這樣,整個(gè)開(kāi)發(fā)團(tuán)隊(duì)可以不停地集成代碼,自動(dòng)化測(cè)試,自動(dòng)化部署,以及使用一些工具進(jìn)行靜態(tài)代碼分析或是自動(dòng)化測(cè)試。

當(dāng)然,還有很多的基本技術(shù)也是非常重要的,比如,與人的溝通能力,語(yǔ)言的表達(dá)能力,寫(xiě)作能力,團(tuán)隊(duì)協(xié)作能力,適應(yīng)變化的能力,時(shí)間管理能力,多任務(wù)處理能力,自我學(xué)習(xí)能力,故障處理能力,等等。這里只是列舉了和技術(shù)相關(guān)的能力,這些是程序最最最基本的能力,只要是程序員就必需要有的能力。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • JAVA
    +關(guān)注

    關(guān)注

    19

    文章

    2943

    瀏覽量

    104096
  • 程序員
    +關(guān)注

    關(guān)注

    4

    文章

    945

    瀏覽量

    29682
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    程序員節(jié)視頻創(chuàng)意大賽,用串口屏贏取千元大獎(jiǎng)

    10月24日,程序員專(zhuān)屬的節(jié)日里,我們盛大開(kāi)啟“程序員節(jié)視頻創(chuàng)意大賽”特別活動(dòng)!這不僅是一場(chǎng)視覺(jué)的盛宴,更是智慧與創(chuàng)意的璀璨碰撞。我們誠(chéng)摯邀請(qǐng)每一位程序員及編程愛(ài)好者,拿起你的鏡頭,記錄下那些平凡日子中的不凡瞬間,讓編程的魅力與
    的頭像 發(fā)表于 07-08 10:38 ?72次閱讀
    <b class='flag-5'>程序員</b>節(jié)視頻創(chuàng)意大賽,用串口屏贏取千元大獎(jiǎng)

    程序員節(jié)視頻創(chuàng)意盛宴,邀您共襄盛舉!

    10月24日,程序員專(zhuān)屬的節(jié)日里,我們盛大開(kāi)啟“程序員節(jié)視頻創(chuàng)意大賽”特別活動(dòng)!這不僅是一場(chǎng)視覺(jué)的盛宴,更是智慧與創(chuàng)意的璀璨碰撞。我們誠(chéng)摯邀請(qǐng)每一位程序員及編程愛(ài)好者,拿起你的鏡頭,記錄下那些平凡日子中的不凡瞬間,讓編程的魅力與
    的頭像 發(fā)表于 07-04 09:00 ?67次閱讀
    <b class='flag-5'>程序員</b>節(jié)視頻創(chuàng)意盛宴,邀您共襄盛舉!

    適者生存,程序員最終會(huì)流向哪……

    程序員沒(méi)有永遠(yuǎn)的護(hù)城河!!就目前的互聯(lián)網(wǎng)大環(huán)境來(lái)看,it行業(yè)已經(jīng)是……
    的頭像 發(fā)表于 03-11 17:11 ?279次閱讀
    適者生存,<b class='flag-5'>程序員</b>最終會(huì)流向哪……

    薪資高、青春飯,是不是程序員=青樓?

    進(jìn)入裁員階段。所以我們程序員要做的只能是與時(shí)俱進(jìn)。 適者生存,程序員亦是如此 順應(yīng)時(shí)代發(fā)展,是我們必須跟緊的。就好比技術(shù)更迭我們就要學(xué)習(xí)更新。而現(xiàn)在我們
    發(fā)表于 03-06 21:32

    感覺(jué)我國(guó)的程序員前景一片灰暗,是這樣嗎?

    程序員也分為好幾等,在現(xiàn)在看來(lái)大部分的Android、Java、前端等等開(kāi)發(fā)。已經(jīng)看不到希望了,很多人都在邊緣掙扎;剛看到一位Android開(kāi)發(fā)者,過(guò)完年回公司就通知被裁;可見(jiàn)每年都會(huì)有很多互聯(lián)網(wǎng)
    發(fā)表于 02-20 20:52

    2024程序員的未來(lái)方向如何走?還看今朝

    這幾年的IT行業(yè)想必大家已經(jīng)感受到了,Android、Java、前端等等程序員都經(jīng)歷了大廠……
    的頭像 發(fā)表于 02-02 09:45 ?686次閱讀
    2024<b class='flag-5'>程序員</b>的未來(lái)方向如何走?還看今朝

    java程序必須以什么為文件擴(kuò)展名

    是一種面向?qū)ο蟮木幊陶Z(yǔ)言,所以所有的Java代碼必須寫(xiě)在類(lèi)(Class)中。Java程序中的每一個(gè)源代碼文件都對(duì)應(yīng)著一個(gè)獨(dú)
    的頭像 發(fā)表于 11-29 14:24 ?896次閱讀

    程序員表白程序

    電子發(fā)燒友網(wǎng)站提供《程序員表白程序.rar》資料免費(fèi)下載
    發(fā)表于 11-21 10:41 ?0次下載
    <b class='flag-5'>程序員</b>表白<b class='flag-5'>程序</b>

    嵌入式程序員應(yīng)知道的幾個(gè)基本問(wèn)題

    電子發(fā)燒友網(wǎng)站提供《嵌入式程序員應(yīng)知道的幾個(gè)基本問(wèn)題.pdf》資料免費(fèi)下載
    發(fā)表于 11-20 11:21 ?0次下載
    嵌入式<b class='flag-5'>程序員</b>應(yīng)知道的幾個(gè)基本問(wèn)題

    智能低代碼洪流涌動(dòng)程序員節(jié),華為云 Astro 觸發(fā) 1024 的乘法效應(yīng)!

    ? 從人工智能至量子計(jì)算,再到最新的云原生技術(shù),越來(lái)越多的榮耀被程序員斬獲。今年 1024 程序員節(jié),華為云 Astro 向全民致敬:「低代碼高產(chǎn)出?拓荒數(shù)字化版圖——人人皆是程序員」,為全球工程師
    的頭像 發(fā)表于 11-13 09:39 ?364次閱讀
    智能低代碼洪流涌動(dòng)<b class='flag-5'>程序員</b>節(jié),華為云 Astro 觸發(fā) 1024 的乘法效應(yīng)!

    一文速覽!拓維信息@1024程序員節(jié)精彩看點(diǎn)

    10月23日,第四屆“長(zhǎng)沙·中國(guó)1024程序員節(jié)”在湖南長(zhǎng)沙盛大開(kāi)幕。自2020年首次啟動(dòng)以來(lái),1024程序員節(jié)已行至第四屆,以獨(dú)特的IT先鋒視角見(jiàn)證了新一代信息技術(shù)與經(jīng)濟(jì)社會(huì)發(fā)展深度融合的關(guān)鍵過(guò)程
    的頭像 發(fā)表于 10-25 08:15 ?469次閱讀
    一文速覽!拓維信息@1024<b class='flag-5'>程序員</b>節(jié)精彩看點(diǎn)

    喜迎1024程序員節(jié)!祝各位開(kāi)發(fā)者們“碼”到“程”功!

    祝各位開(kāi)發(fā)者們,節(jié)日快樂(lè)! 程序員(Programmer)是從事程序開(kāi)發(fā)、維護(hù)的專(zhuān)業(yè)人員。 對(duì)于奮斗在一線的程序員們來(lái)說(shuō), 10月24日 是一個(gè)特殊的日子,這一天是屬于程序員們自己的節(jié)
    的頭像 發(fā)表于 10-24 20:00 ?604次閱讀
    喜迎1024<b class='flag-5'>程序員</b>節(jié)!祝各位開(kāi)發(fā)者們“碼”到“程”功!

    今天程序員節(jié)長(zhǎng)沙出招 全國(guó)首個(gè)!長(zhǎng)沙為程序員打造“1024街”

    今天10月24日,今天程序員節(jié);先給程序員點(diǎn)贊,我們還看到有一些平臺(tái)舉辦了程序員節(jié);而在長(zhǎng)沙,更有為程序員打造“1024街”。 昨天第四屆“長(zhǎng)沙·中國(guó)1024
    的頭像 發(fā)表于 10-24 14:29 ?522次閱讀

    程序員節(jié) | 今年程序員們都想要的禮物竟然是……

    原文標(biāo)題:程序員節(jié) | 今年程序員們都想要的禮物竟然是…… 文章出處:【微信公眾號(hào):微軟科技】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
    的頭像 發(fā)表于 10-24 10:35 ?406次閱讀
    <b class='flag-5'>程序員</b>節(jié) | 今年<b class='flag-5'>程序員</b>們都想要的禮物竟然是……

    16位MCU和DSC程序員參考手冊(cè)

    電子發(fā)燒友網(wǎng)站提供《16位MCU和DSC程序員參考手冊(cè).pdf》資料免費(fèi)下載
    發(fā)表于 09-25 14:51 ?9次下載
    16位MCU和DSC<b class='flag-5'>程序員</b>參考手冊(cè)