2014年編程興衰趨勢預測

摘要:新的一年即新的開始,在如日中天的軟件開發領域裏,相伴隨的也是優勝劣汰法則。本文就以預處理器、JavaScript MV框架、CSS框架、單頁面Web App設計、GPU、GitHub和Web接口爲例,講述在新的一年裏誰是開發者的最愛!

受熱捧,遭冷淡?從Web設計到主板控制,從CSS框架到單頁面網站設計,估計每一個程序員都比較關注軟件開發領域的編程趨勢,就像股民一直盯着股市一樣。和股市有所不同,編程趨勢主要是和高效率、重自定義、易於使用等方面息息相關。本文作者Peter Wayner在這裏詳細列舉了一些比較常見的框架、處理器和設計方式等等,並作出相互比較,歸結出在新的一年裏誰將會更加受寵?

接下來所提到的就是作者對2014年編程趨勢的預測:

Hot:預處理器
Not:全語言堆棧

在不久以前,如果要創建一個新的編程語言還是比較麻煩的,因爲這需要將代碼轉換成bit才能構建各種程序。然而後來有人想出了更好的方法:那就是在着手步驟三的時候可以提前處理步驟四的工作。只不過現在只要編寫一個預處理器就能將新的代碼轉換成一組帶有多個類庫和API的舊代碼。


那些比較青睞動態類型的程序員們創建了Groovy,這是一個較爲簡單的Java版本,不需要過多的標點符號。如果想要修復JavaScript裏的bug,並構建新的CoffeeScript可不是一件簡單的事,而創建Groovy預處理器的目的就是爲了方便編碼,且省略了繁冗的標點符號。

Hot:JavaScript MV*框架
Not:JavaScript文件


在相當長的一段時間裏,每個程序員都要學會如何利用JavaScript來編寫彈出一個警告框或查看包含@符號的電子郵件之類的程序。而現如今,HTML AJAX App變得複雜了,以至於很少有人從頭開始來學習它們。相反,像使用一個精心設計的框架、編寫一些粘合代碼來實現業務邏輯的方式更容易讓人們接受。類似的框架如: Kendo、Sencha、jQuery Mobile、AngularJS、Ember、Backbone、Meteor JS等等,這些都可以幫助你處理Web App和網頁上的事件和內容,大大的節省了時間。

Hot:CSS框架
Not:通用級聯樣式表(GCSS)

曾幾何時,只要是在Web頁面花點時間就能打開CSS文件,還包括一個新的命令,像font-style:italic,接下來只需要利用一上午的時間就能把所有事情搞定。而現在的網頁設計則相對複雜些,而且也不可能利用這麼簡單的命令就可以填補一個文件。


可以這麼說,CSS框架是SASS和Compass最堅實、最牢固的基礎,CSS框架能夠提供類似於實際變量、嵌套模塊和混合之類的組件,這樣有助於創建高質量、更穩定的編碼程序。這聽起來並不像是編程領域裏的新奇事物,但是這在設計領域裏幾乎是一個巨大的飛躍。

Hot:SVG + JavaScript on Canvas
Not:Flash

這麼多年來,Flash一直在牽引着軟件工程師們的主流思想,主要是因爲軟件工程師樂見這樣的結果。對普通顯示效果的渲染看起來很不錯,許多有才華的設計師們爲Flash代碼建立了一個優質的堆棧,這樣便於提供複雜的轉換和動畫顯示功能。


既然JavaScript有能力做和Flash同樣的事情,那瀏覽器廠商和開發者肯定更加傾向於JavaScript。開發者們認爲DOM層與來自新格式SVG(可伸縮向量圖形)的整合將會帶來更好的結果。SVG和HTML是由大量的標籤組成,便於Web開發者使用。緊接着,就會有大量的API在Canvas項目上提供精緻的畫面,弱弱的問一句:那還有必要再繼續使用Flash嗎?

Hot:單頁面Web App設計
Not:網站設計


記得在網絡出現並不久的時候,URL所指向的Web頁面都是充滿了靜態文本和圖像的,把所有信息放到一個稱之爲網絡的網頁是非常之簡單的。新的Web App對於大型數據庫而言算是比較前端的了,當Web App想要獲得所需信息的時候,它就會從數據庫中把數據調出來放到指定的位置,而數據層則是完全獨立於表示層和格式化層的。在這裏,移動計算機處理技術的興起也是另一個因素:一個單一的、響應式設計的Web頁面就像是一個應用程序——這樣就更好的避免了APP Store裏可能出現的混亂現象。

Hot:GPU
Not:CPU


當設計的軟件運行起來很簡單且指令順序安排合理的話,能夠承擔計算機重任的CPU就是計算機的國王。現在,視頻遊戲裏填上了大量的、可以並行運行的圖形程序,而顯卡上只會顯示畫面。而且花點錢就能買到比較精緻的顯卡了。目前大部分玩家並不是在吹噓他們的GPU顯卡,因爲現在的計算機科學家們正在將多並行應用程序進行轉換,這樣的話,軟件程序在GPU上運行的速度將是在CPU上運行速度的數百倍。

Hot:GitHub
Not:Résumés

實際上,閱讀別人的代碼是相當有意義的,能讓你覺得豐富代碼有很多種途徑,且更具有指導意義。他們寫的註釋夠好嗎?他們在處理微小問題上浪費了很多時間嗎?所有的這些問題只要瞥一下別人的代碼就可以得到答案了。


這就是爲什麼參與開源項目對將來找工作而言是比較重要的過程。共享一個專有項目的代碼也許困難了一點,但是開源代碼可以無處不在。

Hot:Web接口
Not:IDEs


也是在很早以前,人們只能使用一個命令行編譯器。後來呢,有人通過集成編輯器和其他工具而創建了IDE。不過現在又到了IDE黯然失色的時候了——通過基於瀏覽器的工具就可以編寫用於工作系統的代碼。如果你不喜歡WordPress的工作方式,IDE可以在程序中安裝一個內置的編輯器,隨時隨地的更改代碼,也就是說,IDE更人性化。

Hot:Node.js
Not:JavaEE,Ruby on Rails,PHP

明確的說,Node.js是一個值得投入的環境,相比其他服務器的編程環境而言,Node.js高效、現代,是業界最新思考的智慧結晶,與雲平臺天然結合。也可以這麼理解,不管未來如何發展,Node.js對業界的影響已經存在,並將持續下去。


在Node.js領域裏,Node.js在瀏覽器和服務器之間提供和諧的開發環境以獲得利益。運行在瀏覽器和服務器之間相同的代碼使得開發者在調用功能和複製特性的時候及其便利。最後,Node.js層將會成爲互聯網上最熱門的堆棧。                                                                        (編譯/薛樑  責編/付江

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章