15個熱門的編程趨勢及15個逐步走向衰落的編程方向
Peter Wayner 是 InfoWorld 的一名特約編輯,也是一個多產的作家。除了 InfoWorld 之外,他還經常為紐約時報和連線雜志撰寫文章。近日,Peter 撰寫了一篇文章,談到了未來 15 個熱門的編程趨勢以及 15 個逐步走向衰落的技術方向,該文發表之后在技術社區中引起了較大的反響,也希望文中的觀點能給各位讀者帶來一些啟示。
程序員們普遍對時尚界嗤之以鼻,因為這個圈子中的趨勢就像風一樣變幻不定。裙子忽長忽短、顏色變來變去、領結時大時小。不過在技術界,精確、科 學與數學卻統治著一切。然而,這并不是說編程沒有趨勢可言。差別在于編程的趨勢是由更高的效率、更好的可定制性以及更棒的易用性來驅動的。新的技術會讓舊 有的技術黯然失色。下面我們就來介紹一下未來 15 個熱門的編程趨勢以及 15 個逐步走向衰落的編程方向。并非人人都會同意文中的觀點,不過編程令人著迷之處恰恰就是快速的變化、激烈的爭論以及即時的反饋。
熱門:預處理程序
冷門:全語言棧
幾年前,如果有人創建了新的編程語言,那么他不得不自己編寫一些程序將語言的代碼轉換為二進制位。后來,有人發現可以利用現有的一些工具和技術做到這一點。現在,有想法的人只需編寫一個預處理程序即可,它會將新語言的代碼轉換為已有的擁有大量庫和 APIs 的語言。
喜愛動態類型的家伙創建了 Groovy,這是一個簡化版本的 Java。那些想要修復 JavaScript 的人們創造了 CoffeeScript。還有很多語言,如 Scala 和 Clojure 等,他們運行在 JVM 之上,已經有了這么好的 JVM 了,為何還要重新發明輪子呢?
熱門:JavaScript MV*框架
冷門:純粹的 JavaScript 文件
很久之前,人們學習 JavaScript 的目的就是為了彈出一個警告框或是檢查表單中的 email 地址是否包含了@符號。現在,HTML AJAX 應用已經變得異常復雜了,沒有多少人會從頭編寫代碼。更簡單的方式是采用一個優雅的框架,編寫一些膠水代碼來實現業務邏輯。目前有大量的 JavaScript 框架,如 Kendo、Sencha、jQuery Mobile、AngularJS、Ember、Backbone 及 Meteor JS 等等,這些框架都可以幫助你很好地處理 Web 應用與頁面的事件與內容。
熱門:CSS 框架
冷門:純粹的 CSS
曾幾何時,為了向網頁中添加一點活力,你需要打開 CSS 文件并加入一些諸如 font-style:italic 之類的命令,然后再保存文件。現在的網頁已經變得非常復雜了,幾乎不可能通過這樣幾條簡單的命令就能達成所愿。改變一處的顏色也許會導致其他地方的顏色顯 示不正常,老話說的好:萬物皆有聯系。這正是 SASS 及 Compass 等 CSS 框架的用武之地,他們提供了一些編程元素,比如說真正的變量、嵌套的塊等編程結構,這些東西在編程領域不是什么新玩意,不過對于設計來說卻是一個偉大的進 步。
熱門:SVG 與 Canvas
冷門:Flash
過去,Flash 令人著迷,藝術家們也都偏愛著 Flash。其渲染的效果如此漂亮,很多聰明的藝術家都使用了大量的 Flash 創作了不少精致的效果。現在,JavaScript 也可以做到過去只有 Flash 才能做到的那些效果,瀏覽器制造商與開發者們都為 Flash 的退出而歡呼雀躍。他們看到 SVG(Scalable Vector Graphics)等新格式與 DOM 層更好的集成。SVG 與 HTML 由大量的標簽構成,這對于 Web 開發者來說是很容易使用的。此外,Canvas 對象也提供了大量的 API 進行繪制。這讓我們相信,已經沒有多少繼續堅守 Flash 的理由了。
熱門:大數據(不使用 Hadoop 進行分析)
冷門:大數據(使用 Hadoop)
每個人都想成為風云人物,如果不行,那他就會換個地方讓自己脫穎而出。因此,“大數據”這個詞兒的流行也就變得不那么讓人驚奇了。有意思的是, 很多問題并沒有那么大,也沒必要使用什么大數據解決方案。當然了,像 Google 或是 Yahoo 這樣的公司會追蹤人們的 Web 瀏覽;他們擁有的數據量是非常龐大的。不過對于大多數公司來說,他們所擁有的數據量可能一個普通的 PC 就裝得下。肯定有公司需要使用不少機器,并行運行 Hadoop,然后希望快點得到計算結果,不過很多公司其實并不需要這么做,他們只需要單臺機器就行,根本沒必要搞什么 Hadoop。
熱門:游戲框架
冷門:原生游戲開發
曾幾何時,游戲開發意味著招很多開發者,從頭開始使用C編寫代碼。當然了,這么做的成本也是相當高的,不過看起來好像不錯。現在,沒有人能夠承 擔得起編寫這么多代碼的代價。大多數游戲開發者都開始使用 Unity、Corona 或是 LibGDX 等庫來構建系統了。這樣,他們就無需再處理這些細節信息了,可以將精力放在游戲情節、故事、角色以及藝術上了。
熱門:單頁面 Web 應用
冷門:網站
還記得通過 URL 訪問只有靜態文本和圖片的網頁時代么?那時,將所有信息放到網頁上就可以做一個“網站”了。新的 Web 應用是包含著內容的數據庫的前端。當 Web 應用需要信息時,它會從數據庫中取這些信息,然后將其顯示出來,沒必要再像之前那樣使用了。數據層與展示層和格式層是完全分開的。移動計算的出現是一個巨 大的促進因素:單一的、響應式設計的網頁看起來像個應用,同時還避免了 App Store 頻繁提交審查的煩惱。
熱門:移動 Web 應用
冷門:原生移動應用
假如你有一個關于移動方面的好點子。你可以為 iOS、Android、Windows 8,也許還有 BlackBerry OS 各編寫一個應用。每個應用都需要單獨一個團隊,使用不同的編程語言完成。開發完成后,你還需要將應用提交到應用商店進行審查,最后才能被用戶下載使用。此 外,你還可以構建一個 HTML 應用,將其放到網站上,應用可以運行在所有的平臺之上。如果需要做些修改,那么你無需回到應用商店,祈求能夠快些通過審查。現在的 HTML 運行速度已經越來越快了,它完全可以與原生應用展開競爭,即便是那些復雜、交互非常多的應用也沒什么問題。
熱門:Android
冷門:iOS
幾年前,Apple 的 App Store 還是一家獨大,不過時間改變了一切。雖然 iPhone 與 iPad 還是擁有非常多的粉絲,他們喜歡其精致、豐富的 UI,但 Android 的銷量卻在節節攀高。有報告顯示 70% 以上的智能手機銷量來自于 Android。
原因很簡單,那就是價格。雖然 iOS 設備保持了一個比較高的價格,不過 Android 世界中有太多的競爭者,他們所生產的平板價格甚至只有 iPad 價格的1/5,省錢總是硬道理嘛。除了價格之外,開源也是一個不容小覷的因素。任何人都可以在市場中參與競爭,實際情況也是這樣的。有大的 Android 平板,也有小的手機;有 Android 相機,甚至還有 Android 冰箱。
熱門:GPU
冷門:CPU
在軟件還很簡單,指令可以在一行中清楚顯示的時候,CPU 是計算機之王,因為它做了所有繁重的工作。現在,視頻游戲中有大量并行運行的圖形計算,一塊顯卡的價格動輒就5、600 美金,一些執著的玩家甚至會使用多塊顯卡。這甚至比很多一般的 PC 還要貴,除了游戲玩家外,計算機科學家們也將很多并行應用轉到 GPU 上運行,速度比之前快了百倍以上。
熱門:GitHub
冷門:簡歷
沒錯,你可以通過看書等方式來學習,不過,閱讀實際的代碼卻更加直觀和有意義。程序員是否寫了足夠好的注釋?是否花時間將大的類拆分成若干各司其責的小類?架構是否還有擴展的空間?這些問題都可以通過查看代碼得到答案。
這也是為何現在在找工作時有過開源項目開發經歷會變得更加吃香的原因所在。從私有項目中分享代碼是比較困難的,不過開源項目可以走進每個人的生活。
熱門:租賃
冷門:購買
以前,公司會建立自己的數據中心、雇傭專門的人來維護他們所購買的計算機。時至今日,很多公司開始租賃計算機、數據中心、雇員,甚至按照小時數來租賃軟件。這是個非常好的做法,也會為公司節省很多成本;同時,還會保證計算能力。
熱門:Web 界面
冷門:IDEs
很久之前,人們使用命令行編譯器。后來,有人將其集成到了編輯器和其他工具當中,創造出了 IDE。現在,IDE 有被基于瀏覽器的工具所替代的趨勢。在基于瀏覽器的工具中,你可以編寫代碼、創建系統。如果不喜歡 WordPress 的工作方式,那么你可以通過它自帶的編輯器修改代碼并立即生效。你可以通過微軟的 Azure 編寫 JavaScript 膠水代碼。這些系統基本上都沒有提供很好的調試環境,而且在編輯生產代碼時也存在著一定的風險,不過這個想法卻是非常棒的。
熱門:Node.js
冷門:JavaEE、Ruby on Rails 及 PHP
服務器的世界總是依賴于各種線程模型,不過這種方式會導致程序員所編寫的各種低效、不負責任的代碼影響到操作系統的效率。無論程序員編寫的代碼有多么差勁,操作系統總是會在各個線程間切換,從而平衡整體性能。
Node.js 帶來了 JavaScript 回調這種編程模型,代碼運行速度也絕對夠快。這種一開始只是用于彈出警告框的玩具語言的變化超出了很多人的想象。突然之間,創建新線程的開銷變得很顯著 了,這時 Node.js 來了。如果程序員代碼寫的不好就會出現問題,不過讓程序員清楚了解資源限制有助于他們編寫出更快的代碼。
Node.js 的世界也因讓瀏覽器與服務器之間保持和諧共處而獲益匪淺。同樣的代碼既可以運行在瀏覽器端,也可以運行在服務器端,開發者可以在兩端快速移動,也可以更好地完成功能。因此,Node.js 已經成為互聯網界最炙手可熱的技術之一。
熱門:Hackerspaces
冷門:大學
一個是 4 年 250,000 美金,一個是每月 50 美金,如果提前支付還有折扣。Hackerspaces 正在不斷驅動著創新,同時又沒有大學那么多的開銷。他們在創造著社交網絡,影響著創業公司,沒有官僚、沒有政治。其課程不需要持續整個學期,這種特性非常 適合于快速變化的技術世界。
<span id="shareA4" class="fl"> </span>