關於程式設計師的發展方向
阿新 • • 發佈:2021-09-28
- Windows 開發:
主要是開發客戶端(PC 機上的軟體),如 QQ、迅雷、360、Chrome 等。
能夠進行 Windows 客戶端開發的程式語言有多種,包括 C/C++、C#、VB、Java、Delphi、易語言等。這意
味著,Windows 開發有多種學習路線,大家任選其一。不過,公司一般使用 C/C++、C#、Java,自己編寫小
工具也可以使用 VB、Delphi、易語言。 - 遊戲開發(遊戲客戶端開發):
需要你有 C/C++基礎,再學習 Unreal(虛幻)、Frostbite(寒霜)、CryEngine(CE)等遊戲引擎。如果你
希望瞭解遊戲引擎原理,讓自己更加優秀,那麼還需要學習圖形庫(例如 DirectX、OpenGL)和計算機圖形學。
更加全面的遊戲開發學習路線請猛擊:遊戲開發完整學習路線,都在這裡了 - Linux 開發/遊戲後臺開發
需要在 C/C++ 的基礎上再學習 Linux 作業系統,主要包括 Linux 基本操作、Shell、檔案系統、程序執行緒、內
存、Socket 通訊、核心等,甚至還需要與演算法、Qt 等相結合。
另外,也可以使用 Go 語言進行 Linux 開發,Go 語言在全球已經有相當多的應用案例了。
遊戲的後臺伺服器大部分也是基於 Linux 的,也會用到以上技能。 - 微控制器/嵌入式:
微控制器/嵌入式是軟體和硬體的結合,不僅要會寫程式碼,還要了解硬體,所以入門門檻比較高,知識也比較龐雜,
學習時間長。選擇該方向最好有數位電路、類比電路和彙編的基礎,非常適合電子資訊工程專業的同學。
這個方向的同學,大部分去了中興、華為等以生產電子產品為主的公司,工資雖然沒有一般的程式設計師高,但也
不錯。 - 演算法:
NB 的程式設計師都在搞這些,一般不注重程式語言,而是側重解決問題的方法和效率。工資比普通的程式設計師略高。 - 網站開發:
也稱 Web 開發,分為前端和後臺。
後臺主要負責伺服器端的程式設計,除了需要學習 Java、PHP、Python 等程式語言,還需要學習 MySQL、
MongoDB、Oracle 等資料庫。
前端主要負責網頁介面的設計以及特效的實現,需要學習 HTML、CSS、JavaScript 等。
JavaScript 本來只能用於 Web 前端,它可以實現一些特效,或者和伺服器通訊,後來有人把 JavaScript 移植
到了伺服器上,並起名 Node.js,這樣 JavaScript 也能進行 Web 後臺開發了。
也就是說,只要需要學習 JavaScript 一門語言,就可以搞定網站的前端和後臺,成為全棧工程師。 - 移動開發:
包括 IOS 和 Android,你可以開發 APP,也可以開發遊戲,需要學習 Java(針對 Android)、Objective-C
(針對 IOS)、Swift(針對 IOS)等。 - 測試(QA):
一款產品問世需要大量的測試才能投放市場,QA(Quality Assurance,譯為“品質保證”)人員就是為程式
員把關的,如果程式設計師的作品不符合產品需求或者 Bug 太多,QA 有權駁回,這時就會影響程式設計師的績效。QA
不但要能看懂程式碼(大概理解什麼意思),還要掌握一定的測試技巧,更重要的是心思縝密,有耐心有毅力,
女生比例很高。 - 大資料
需要掌握 Java、Python、R 或 Scala 程式語言,並學習 Linux 作業系統、Linux 叢集搭建、資料庫等,
Hadoop、Spark、Hive 等大資料框架的學習是重點內容。 - 人工智慧/機器學習/深度學習
除了需要掌握 Python、R 或 Java 程式語言,還需要學習數學(大都集中在微積分、線性代數、概率與統計幾
個領域)和演算法(例如邏輯迴歸、深度神經網路、線性迴歸、K 均值、協同過濾等),這是重點內容。
GitHub: https://github.com/wmui