最近,infoworld.com的一位編輯Peter Wayner在他撰寫的文章21 hot programming trends -- and 21 going cold 中,提到了21種會流行的技術,以及相應地,21種可能會遇冷的技術。本文旨在與大家一起討論這個話題。下面所列出的10種技術,摘自Peter的文章。
大熱:JavaScript MV框架; 遇冷:JavaScript文件
很久以前,每個人都學會了寫JavaScript代碼,用來彈出一個消息窗口或檢查表格中含有@符號的電子郵件地址。不過現在有了HTML Ajax應用程序,它們非常精細,因此很少人從零開始寫代碼了。使用一個有詳細說明的框架和寫一點膠水代碼來執行你的商業邏輯是比較簡單的方法。
現在有很多框架,如Kendo, Sencha,jQuery Mobile,AngularJS,Ember, Backbone, Meteor JS等等,所有這些框架都是為了處理Web應用程序以及頁面事件和內容而準備的。另外,還有一些為智能手機和平板電腦提供的跨平臺框架,其中包括nativescript,PhoneGap和Sencha Touch等,它們可以用來創建源自HTML5技術的app。
HTML5 Mobile App Development with PhoneGap - Livecoding.tv
在livecoding.tv上,一位開發者使用Phonegap開發一款HTML5 App
大熱: SVG + JavaScript on Canvas; 遇冷: Flash
Flash已經令人們瘋狂了很多年,但編程大師們一直看重的是結果。反鋸齒渲染看起來很棒,以及很多有才華的編程大師已經建立了一個Flash代碼堆垛來處理復雜的過渡和動畫。
現在JavaScript層具有很多相同的能力。瀏覽器的制造商和開發者都在為Flash的結束而歡呼。JavaScript可以與DOM層更好地整合在一起,DOM層來自一些新的格式,例如SVG(可縮放矢量圖形)。SVG和HTML包含了一大堆標簽,Web開發者使用起來往往更方便,現在還有了大的APIs,讓你可以在畫布對象上詳細地繪畫圖形,通常還會提供視頻卡來幫助你使用。把它們結合起來使用,你還有什么理由要用Flash呢?
大熱:游戲框架;遇冷:本土游戲開發
很久以前,游戲開發意味著要請大量開發人員,他們從零開始用C語言寫所有代碼。當然這得投入巨資,但它看起來很棒。現在,沒有人能負擔得起奢侈的自定義代碼了。大多數游戲開發者放下了他們多年前的驕傲資本,現在他們使用庫,如Unity, Corona,或LibGDX來建立系統。他們不會再寫像庫說明那么多的C代碼了。這現象是否會令人慚愧呢?我們的游戲不再是用手工寫代碼完成,而是由相同的引擎來制作而成的。不過,大多數開發者都對此感到很欣慰,因為他們不需要被迫去處理細節,這樣他們可以專注于游戲玩法,情節,人物和藝術。
Livecoding.tv 上的直播者使用 Unity 及其它庫來開發各種游戲
大熱:單一網頁的Web apps; 遇冷:網站
如何把所有信息放在一個由數個獨立網頁組成的網站中,網站設計人員要花幾個小時來制作網站地圖,以令網站導航變得簡單。
新的Web應用程序是從前端到有大量內容的大數據庫。當Web應用程序需要信息時,它就從數據庫中提取信息并將信息注入到本地的模具中。現在沒有必要使用Web附加設備所需要的所有東西來標記數據,以便創建一個網頁了。
數據層是完全獨立于演示和格式層。移動計算的興起是另一個因素:單頁的,響應式設計的網頁,它工作起來就像一個app——所有這些都更好,以避免混亂的App商店。
大熱:移動Web apps; 遇冷:本土移動apps
對于移動內容,你可能會有很多很好的想法。你可以寫不同版本的app來應用于不同的系統:Android,iOS,Windows 8,甚至BlackBerry OS或是其它任何一個系統。每一個版本的app需要由一個獨立的,懂得不同編程語言的團隊來開發。然后,每一個平臺上的app商店在把app交到用戶手中之前,可能會各自提出種種合理不合情的要求。
或者你可以創建一個HTML app,把它放在一個網站上,在所有平臺上運行。如果出現了什么變化,你不需要返回app商店去請求獲得一個迅速的錯誤檢查和修復。現在,HTML層越來越快,而且它在速度較快的芯片上運行,這種方法可以使移動Web app更好地與本土app競爭,甚至是與更復雜的交互式app競爭。
大熱: Android; 遇冷: iOS
幾年前,蘋果專賣店門前排起的“人龍”還記得吧?時代在改變,雖然iPhone和iPad仍然擁有忠實粉絲,他們喜歡豐富、復雜的用戶界面,但原始銷售數據依然對Android有利。一些報道甚至說,超過80%的手機是Android的。
原因可能很簡單,因為成本。當iOS的設備成本仍然很高的時候,Android正在以大量競爭洶涌而來,那就是用五分之一的價格來生產平板電腦。省錢永遠是一種誘惑。不過,另一個因素可能是開源的效果。任何人都可以在市場上競爭。現在市場上有大的安卓平板電腦,也有小的;有安卓攝像頭,甚至還有安卓冰箱。
大熱: Web界面; 遇冷:集成開發環境(IDEs)
很久以前,人們用的是命令行編譯器,然后有人把編輯器和其它工具整合在一起,創造了IDE。現在又輪到IDE的熱潮消退了,因為有了基于瀏覽器的工具出現。它們通常是一個工作系統,可以讓你編輯代碼。如果你不喜歡WordPress的功能,它配備了一個內置的編輯器,讓你可以即時更改代碼。
微軟的Azure允許你在它的入口寫JavaScript膠水代碼。雖然這些系統不能提供最好的調試環境,并且在編輯生產代碼時可能會有一些危險,但這個創意是不錯的。
你可以嘗試Cloud9,Aptana,和Mozilla WebIDE,但要堅持探索。Web界面正在變得越來越強大。有可能會出現這樣的情況,在微軟的Azure網站上建立一個完整的大數據分析項目。
大熱: Node.js; 遇冷: JavaEE, Ruby on Rails
服務器的世界一直在線程模型上長盛不衰,它讓程序員在使用操作系統時可以有種種行為,如固執,低效或是放任。無論是由程序員編碼而造成的愚蠢的循環或是浪費的計算,操作系統都可以在線程之間切換來平衡性能。
Node連同JavaScript一起回調編程模型,它的代碼的確運行得很快,比任何人預期的還快。它曾經可能是一種無實用價值的語言,只是被用于警告消息框。但意外地,由于創建新線程的開銷變得明顯,Node.js騰飛了。當程序員表現得不好時,問題就會出現了,但責任在很大程度上是對他們有好處的。顯然,限制資源往往可以令程序員更快地寫代碼。
Node.js還有利于瀏覽器和服務器之間的和諧。運行在瀏覽器和服務器上的相同代碼可以讓開發人員更方便地移動和復制功能。因此,Node.js層已經成為互聯網上最熱門的棧。
大熱: PHP 7.0; 遇冷:舊版PHP
在過去,PHP是一種簡單的方法來淘汰一些動態網頁。如果你需要一點點的變化,你可以在HTML標簽之間嵌入簡單的代碼。Web開發者有了它就基本足夠了,但它的緩慢足以令程序員中的中堅分子看不起它。
這是一則舊聞了,因為一些喜愛PHP的程序員在Wordpress和Facebook等地方都在爭相利用即時編譯器,這種曾創造出Java如此高性能解決方案的技術來執行比以前更快的PHP代碼。現在的工具如HipHop,虛擬機和PHP7.0提供的速度可能是舊版本的2倍。這會給Node.js和java帶來挑戰。
大熱: 與時并進的教育; 遇冷:四年傳統教育
以計算機為介導的課程不再是新玩意了,每個人正在享受著觀看視頻講座的好處。我們可以隨意調整視頻的播放進度,加快或放緩,還可以重復觀看自己想看的部分。在線論壇同樣比以前的討論室有了改善,以前每一次討論,只能由一個人來主宰。
但這不僅是教育的一種本質,網上課程技術的背后是它顛覆了教育產業技術的復雜性;它還可以讓你靈活地支配自己的學習時間和地點。這正在改變我們的生活動態,因為我們不再需要投資四年的時間以及負擔高額的學費去學習一系列課程了。當你需要獲得新信息的時候,你的需要可以得到滿足,而且不要讓迅速腐爛的想法困擾你的頭腦。
直播編程成為一種流行的編程教育和編程社交方式
就編程來說,我們可以在網上找到很多學習網站、社區、博客,這些都是很好的學習資源。例如Livecoding.tv,這是一個將直播,教育,社交和工作結合在一起的綜合平臺。這個平臺以直播編程的方式,將世界各地的程序員開發產品或項目的過程直觀地呈現給觀眾用戶。
你可以學到很多在書本上不一定能學到的編程知識和技巧,因為每一個直播,都是一個真實的案例。除了直播,你還可以觀看每一個直播者的視頻。因此,你可以在這個網站上學習某種編程語言的基礎知識,也可以學習某個產品,工具甚至是整個項目的開發,看看優秀的開發者是如何寫代碼,除錯,創建框架等等。當直播與在線學習結合在一起時,這也是互聯網的一個趨勢。
以上分享的內容,可能不一定是你認同的,這沒有關系。因為無論是哪一種潮流的興起或衰退,都令編程成為一種有著無窮吸引力的行業:它總是在快速變化,又總是有著充滿激情的爭論。這也正是編程世界精彩的地方。
來源?鏈接:http://dwz.cn/4RvTdT
我們是一群熱愛IT的年輕人,如果你也愛IT、愛移動端開發,歡迎加入我們,讓我們共同為夢想發聲。
關注藍鷗(lanou3g),推送IT新知識與資訊,讓你每天進步一點點。
PS:喜歡你就點個贊,有用你就收進后宮,認識程序員你就轉發一下辣。