注冊用戶即可下載全站資源 關注Java幫幫微信公眾號
 

程序員,你能真正掌握多少編程技術?

14
發表時間:2018-11-19 13:47

日本韩国三级aⅴ在线观看我總能看到一些公司在招聘廣告里這樣描述他們的崗位要求:“有豐富的從零開始構建 iOS 及 Android 應用的經驗;精通移動及 Web 技術,包括 Java、HTML5、CSS3、JavaScript 和 AJAX。“

日本韩国三级aⅴ在线观看(可世上根本)沒有這樣的人:一個人只能真正精通一個(技術方向),而在其他方向上技術平平。你也可以在精通一門技術后轉而鉆研另一種技術,(但這會讓你很快)忘掉前者的很多細節。這樣或許已經足夠讓你輕松唬住很多人,讓他們認為你無所不能、無所不曉——但真遇上棘手的問題,你也只能靠運氣了。

今時不同往日,當代任何一個主流領域的技術都相當復雜,并且不斷地變化,需要人投入大量時間。只是利用業余時間學習的話,連保持跟進某個技術領域的最新動態都很困難,更不用說從零開始“精通”這項技術了。因此,只有參與一個真實的項目才能讓你真正學習一套新的(技術)環境。而能夠同時參與開發大型原生 Android、iOS 應用以及響應式 Web 客戶端程序的又有多少人?

在過去 34 年的程序員生涯里,我很少同時在多個技術領域上工作。我的第一份工作是在 Supermini 上開發,后來用 Apple 寫 6502 匯編、在PC 上寫 Pascal,我的兩個創業公司的開發環境都是 Mac 和 C。在為別的公司(包括 Apple)工作時, 我先后用過 C、一點 C++、Objective-C/WebObjects, 然后轉向基于 Java 的 Web 前后端開發(但很少同時開發這兩者)。再后來,我寫了一些 JavaScript,做過基于 C++ 的游戲編程, 最后,就是我現在做的: Objective-C 和 iOS。為了掌握各種新知識,這中間的每次技術轉變我都花了幾年時間一邊做一邊進行大量的學習。

如果出于某些原因,有人真的能夠同時精通 Android 和 iOS,甚至是 Web ,那么作為一個真正的全才,我想他的期望薪酬會遠遠高出多數公司愿意給出的價格:公司實際上只想以最低的工資水平招幾個“什么都能做”的人以節約成本。我至今無法理解有人能夠同時成為許多方面的專家,以及他們怎么能同時掌握不同的技術、開發不同平臺的應用并與時俱進。我認識一些才華橫溢的人,但我不記得有哪一個能夠像耍雜耍一樣將多種技術玩弄于股掌之上,并開發出能體現精湛技藝的應用。

好吧,可能會有一些例外吧,但是我始終認為多數人做不到這一點。一個人固然能先精通一種技能,然后再嘗試精通另一個,但這個過程中必然會忘記很多前面的知識。去年我有幾個月無所事事,等著被公司解雇(公司所有的技術都早已經落伍被替代了,他們開始把整個品牌打折出售,所以顯然我的下崗也只是早晚的問題)。我花了一個月做了一些 C++ 開發,然后是 Node.js, 最后還搞了一段時間 Swift。今年再回顧這些學過的技術時(我的新工作用的是 Objective-C),我發現我已經忘了之前學到的大多數內容。如果不是經常使用的東西,肯定會很快被忘到腦后。當我用 PHP 重新搭建我現在這個博客系統時,我掌握過的各種語言在我腦袋里全都糊成了一片。

日本韩国三级aⅴ在线观看如果你用過 Objective-C、然后使用 Swift 做 iOS 開發的話,那至少兩者還有一部分重疊。不過 Android 開發跟 iOS 相比可不僅僅只是另一種語言的差別了:你需要掌握完全不同的開發工具、布局方法,以及如何支持多個版本的操作系統,并兼容 24000 多種安卓設備。另一方面,單單要跟上今年六月 WWDC 里發布的新變化就要花很大的功夫,Apple 發布的示例代碼并不兼容最新 beta 版的 Xcode 更是雪上加霜。 就算你能不寫代碼,每天能看完最新的視頻、讀完最新的文檔和示例代碼,不過這樣你又哪來的勇氣稱自己是個專家呢?

除了安卓和 iOS 這兩個截然不同的復雜移動開發環境,現在的 Web 開發也添了不少亂,尤其是此起彼伏層出不窮的各種 JavaScript 框架, 要跟隨它們的變化真得有三頭六臂才行。而且從跟我共事過的 JavaScript 程序員來看,他們甚至連一個框架的變化都跟不上(嗯,我說的就是 AngularJS)。

日本韩国三级aⅴ在线观看所以如果你找到這樣一個人選,他(她):iOS 和 Android 開發不在話下、JS 桌面/移動端 Web 編程小菜一碟;熟練運用現代風格的 API 又能兼容各個老版本 OS,各種 UI 設計方式優劣如數家珍,諸多瀏覽器特性及安卓設備特例了然于胸,還總能以破紀錄的時間交付無 Bug 的產品…那你就真的賺大了——對了,他應該還愿意以低于市場價為你工作。

回想我開始編程那會,一切都原始而簡單。我只需要掌握一種語言,一種操作系統,而不需要任何框架。即使在我的兩家初創公司,我也只需要掌握 C 語言,了解 Macintosh 和偶爾的一些 68K 匯編。時代變了,但我們還是只有一個并不遵循摩爾定律、也沒法升級的大腦。

日本韩国三级aⅴ在线观看最后,假如你能(真正的)同時做 Android、iOS 和移動 Web 開發,并寫出大師級的作品的話,我要向你致敬!當然同時,我也希望你也能拿到你應得的三倍酬勞。


支付寶贊助-Java幫幫社區
微信贊助-Java幫幫社區
Java幫幫公眾號生態

Java幫幫公眾號生態

總有一款適合你

Java幫幫-微信公眾號

Java幫幫-微信公眾號

將分享做到極致

Python幫幫-公眾號

Python幫幫-公眾號

人工智能,爬蟲,學習教程

大數據驛站-微信公眾號

大數據驛站-微信公眾號

一起在數據中成長

九點編程-公眾號

九點編程-公眾號

深夜九點學編程

程序員生活志-公眾號

程序員生活志-公眾號

互聯網,職場,程序員那些事兒

Java幫幫學習群生態

Java幫幫學習群生態

總有一款能幫到你

Java學習群

Java學習群

與大牛一起交流

大數據學習群

大數據學習群

在數據中成長

九點編程學習群

九點編程學習群

深夜九點學編程

python學習群

python學習群

人工智能,爬蟲

測試學習群

測試學習群

感受測試的魅力

Java幫幫生態承諾

Java幫幫生態承諾

一直堅守,不負重望

初心
勤儉
誠信
正義
分享
合作品牌 非盈利生態-優質內容分享傳播者
關于我們
友鏈申請
友鏈交換:加幫主QQ2524138991 留言即可 24小時內答復  
全站內容非商業用途,內容來源于網友,并遵循 許可,如有異議請聯系客服。
會員登錄
獲取驗證碼
登錄
登錄
我的資料
留言
回到頂部