国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

java程序員必須要學習哪些東西

工程師人生 ? 來源:工程師吳畏 ? 2019-06-25 17:12 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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

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

精通UML

精通DesignPatterns 23+N種模式:默寫各個模式UML圖,熟記代碼實現方式,范例,以及.NET相關接口

精通CLR

VB.NET/C#通吃

精通OOP理念

精通DB設計與T-SQL,SQL2005就可以了

熟悉AJAX全套技術

通吃WPF/WCF/WF/LINQ

WEB 2.0理念,理解Blog/Wiki/RSS架構,SOA理念

精通數據結構/操作系統/安全加密

精通.NET設計規范

研究5套以上經典源碼,例如:SharpDevelop,PetShop,DotNetNuke,SmartClient,NUnit,FotoVision,CSLA等等

熟悉DirectX編程模式

翻譯過1-2本技術書籍

軟件開發是一個跨度很大的技術工作,在語言方面,有C、C++、Java、Ruby等等等等;在環境方面,又分嵌入式、桌面系統、企業級、WEB、基礎系統,或是科學研究。但是,不管是什么的情況,總是有一些通用的基本職業技能。

這些最基本的職業技能通常決定了一個程序員的級別,能否用好這些技能,直接關系到了程序員的職業生涯。很多程序新手也是因為缺少、達不到或是不熟悉在這些基本技能,所以,他們需要有老手帶,需要努力補齊這些技能。而高級程序員應該非常熟悉這些基本技能,而且有能力勝任并帶領其他經驗不足的程序員。

下面這些基本職業技術可以用來做為對一個程序員的評估,很明顯,下面的這些技能都可以用來做面試。雖然,還有很多非技術的因素,但對于評估一個程序員的技術能力來說,其應該是足夠的了。

下面是程序員所應該具備的基本職業技能:

閱讀代碼 - 這個技能需要程序員能夠具備讀懂已經存在的代碼的能力,這樣的能力可以讓程序員分析程序的行為,了解程序,這樣才能和開發團隊一起工作,繼承維護或是改進現有的程序。(相關閱讀:《閱讀優秀代碼是提高開發人員修為的一種捷徑》)

編寫程序 - 編寫程序并不包括程序設計。不要以為編程是一件很簡單的事情,很多程序員都認為編程只需要懂得程序語言的語法,并把設計實現就可以了。但是這離編寫程序還遠遠不夠,使用什么樣的編碼風格成為編寫程序員最需要具備的基本技能。能否使用非常良好的編程風格直接決寫了程序員的級別。

軟件設計 - 這一能力直接決定了需要吏用什么樣的代碼技術達到怎么樣的功能,而系統架構設計直接決定了軟件的質量、性能和可維護性。并不是所有的程序在這一方面都非常優秀,但每個程序員都需要或多或少的明白和掌握這一基本技能。

熟悉軟件工程 - 每個程序員都應該明白軟件工程是什么東西,都應該知道,需求分析、設計、編碼、測試、Release和維護這幾個階段。當然,幾乎所有的人都知道這些東西,但并不是每個人都很清楚這些東西。現在很多高級程序員都會混淆“需求規格說明書FS”和“概要設計HLD”。另外,程序員還需要知道一些軟件開發的方法/論,比如:敏捷開發或瀑布模型。

使用程序庫或框架 - 一個程序員需要學會使用已有的代碼,無論是標論的程序庫,或是第三方的,還是自己公司內部的,都需要學會做。比如:C++中,需要學會使用STL、MFC、ATL、BOOST、AC、CPPUNIT等等。使用這些東西,可以讓你的工作事半功倍。

程序調試 - 程序調試是分析BUG和解決問題最直接的能力。沒有人能夠保證程序寫出來不用調試就可以運行正常,也沒有人可以保證程序永遠不會出BUG。所以,熟練使用調試器是一個程序員需要具備的基本技能。

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

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

單元測試 - 單元測試是每個程序都需要做的。很多單元測試也是需要編碼的。一定要學會在xUnit框架下進行單元測試。比如JUnit, NUnit, CppUnit等等。

重構代碼 - 每個程序員都需要有最基本的能力去重構目前已有的代碼,使代碼達到最優但卻不能影響任何的已有的功能。有一本書叫《軟件的重構》,每個程序員都應該讀一下。

自動化編譯 - 程序員需要使用一個腳本,其能自動化編程所有的工程和代碼,這樣,整個開發團隊可以不停地集成代碼,自動化測試,自動化部署,以及使用一些工具進行靜態代碼分析或是自動化測試。

當然,還有很多的基本技術也是非常重要的,比如,與人的溝通能力,語言的表達能力,寫作能力,團隊協作能力,適應變化的能力,時間管理能力,多任務處理能力,自我學習能力,故障處理能力,等等。這里只是列舉了和技術相關的能力,這些是程序最最最基本的能力,只要是程序員就必需要有的能力。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • JAVA
    +關注

    關注

    20

    文章

    3001

    瀏覽量

    116439
  • 程序員
    +關注

    關注

    4

    文章

    956

    瀏覽量

    30941
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    學習單片機快速方法

    那么多錢去養那些優化代碼的程序員還不如買一套新的硬件。我現在也是用C語言編程的。 匯編幾乎不用。知道怎么使用開發軟件之后,你就可以按照學習板的教程進行編程練習。練習要分模塊進行,比如流水燈模塊,你
    發表于 01-14 07:42

    請問一下,繪制F030系列MCU的時候,仿真接口是否必須要引出RST呢?

    請問一下,繪制F030系列MCU的時候,仿真接口是否必須要引出RST呢?
    發表于 01-13 07:06

    汽車電子EMC測試系統:車企必須要知道的電磁安全方案

    南柯電子|汽車電子EMC測試系統:車企必須要知道的電磁安全方案
    的頭像 發表于 01-08 11:00 ?415次閱讀

    大理的AI野心藏不住了——風花雪月中千名程序員探討人工智能

    2025 年12月4日至6日第二屆CCF程序員大會暨大理人工智能與應用國際開發者大會在大理圓滿落幕。
    的頭像 發表于 12-24 17:45 ?719次閱讀
    大理的AI野心藏不住了——風花雪月中千名<b class='flag-5'>程序員</b>探討人工智能

    程序員最常見謊言

    了。 28我已經測試過了,這個功能沒問題,可以上線了。 29別擔心,這個問題很快就能解決。 30代碼快寫完了,已經完成 90% 了 。 希望大家對程序員多一些容忍以及諒解! 各位程序員你們都被我說中了哪些?說說你們的觀點
    發表于 12-10 08:24

    Arm Neoverse CPU上大代碼量Java應用的性能測試

    Java 是互聯網領域廣泛使用的編程語言。Java 應用的一些特性使其性能表現與提前編譯的原生應用(例如 C 程序)大相徑庭。由于 Java 字節碼無法直接在 CPU 上執行,因此通常
    的頭像 發表于 11-05 11:25 ?757次閱讀
    Arm Neoverse CPU上大代碼量<b class='flag-5'>Java</b>應用的性能測試

    奔赴熱AI,碼力全開!Talkweb House@1024程序員日系列活動圓滿收官

    1024程序員日”系列活動至此劃上了一個圓滿句號。本屆1024程序員節以“AI構建世界,智能引領未來”為主題,廣邀技術大咖、產業領袖、企業代表與全球開發者齊聚星城
    的頭像 發表于 10-27 18:59 ?780次閱讀
    奔赴熱AI,碼力全開!Talkweb House@1024<b class='flag-5'>程序員</b>日系列活動圓滿收官

    開鴻智谷“以賽促學、以賽選才”|1024程序員節暨開源鴻蒙構建大會圓滿落幕!

    10月24日,由開鴻智谷聯合主辦的長沙1024程序員節暨開源鴻蒙構建大會在長沙圓滿落幕。本次活動以“湘聚長沙,共赴熱AI”為主題,通過技術分享與實戰競賽相結合的方式,著力培養“開源鴻蒙+AI”領域
    的頭像 發表于 10-27 17:58 ?705次閱讀
    開鴻智谷“以賽促學、以賽選才”|1024<b class='flag-5'>程序員</b>節暨開源鴻蒙構建大會圓滿落幕!

    如何在機器視覺中部署深度學習神經網絡

    人士而言往往難以理解,人們也常常誤以為需要扎實的編程技能才能真正掌握并合理使用這項技術。事實上,這種印象忽視了該技術為機器視覺(乃至生產自動化)帶來的潛力,因為深度學習并非只屬于計算機科學家或程序員。 從頭開始:什么
    的頭像 發表于 09-10 17:38 ?901次閱讀
    如何在機器視覺中部署深度<b class='flag-5'>學習</b>神經網絡

    跟老齊學Python:從入門到精通

    礎的學習者介紹一門時下比較流行、并且用途比較廣泛的編程語言,所以,本書讀起來不晦澀,并且在其中穿插了很多貌似與Python 編程無關,但與學習者未來程序員職業生涯有關的內容。 獲取完整文檔資料可下載附件哦!!!! 如果內容
    發表于 06-03 16:10

    程序設計與數據結構

    的地址)出發,采用推導的方式,深入淺出的分析了廣大C程序員學習和開發中遇到的難點。 2. 從方法論的高度對C語言在數據結構和算法方面的應用進行了深入講解和闡述。 3. 講解了絕大多數C程序員開發
    發表于 05-13 16:45

    Java開發者必備的效率工具——Perforce JRebel是什么?為什么很多Java開發者在用?

    Perforce JRebel是一款Java開發效率工具,旨在幫助java開發人員更快地編寫更好的應用程序。JRebel可即時重新加載對代碼的修改,無需重啟或重新部署應用程序,就能讓開
    的頭像 發表于 04-27 13:44 ?854次閱讀
    <b class='flag-5'>Java</b>開發者必備的效率工具——Perforce JRebel是什么?為什么很多<b class='flag-5'>Java</b>開發者在用?

    步進電機選型時必須要了解什么?

    步進電機選型時,必須要了解以下幾個方面的信息以確保所選電機能夠滿足特定的應用需求: 1. 轉矩需求: ? ?● 步進電機的保持轉矩類似于傳統電機的“功率”,但物理結構和輸出特性有所不同
    的頭像 發表于 04-14 07:38 ?1273次閱讀

    如何在 樹莓派 上編寫和運行 C 語言程序

    ,一本很好的書是BrianKernighan和DennisRitchie所著的《TheCProgrammingLanguage》。這本書對經驗豐富的程序員和想學習C語
    的頭像 發表于 03-25 09:28 ?1156次閱讀
    如何在 樹莓派 上編寫和運行 C 語言<b class='flag-5'>程序</b>?

    零基礎入門:如何在樹莓派上編寫和運行Python程序

    是一種非常有用的編程語言,其語法易于閱讀,允許程序員使用比匯編、C或Java等語言更少的代碼行。Python編程語言最初實際上是作為Linux的腳本語言而開發的。Py
    的頭像 發表于 03-25 09:27 ?2039次閱讀
    零基礎入門:如何在樹莓派上編寫和運行Python<b class='flag-5'>程序</b>?