2016年你應該學習的語言和框架

2015年,軟件開發界發生了不少變化。有不少流行的新語言發佈了,也有不少重要的框架和工具發佈了新版本。下面有一個咱們以爲最重要的簡短清單,同時也有咱們以爲值得你在2016年花時間精力去學習的新事物的一些建議。前端

 

大趨勢node

 

在過去的幾年裏,有一個愈來愈明顯的趨勢是web應用的商業邏輯逐步從後端轉移到了前端,而後後端變得只須要處理簡單的數據API。這就讓前端開發框架的選擇變得尤其重要了。git

 

另 外一個重要的改變是2015年發佈的 Edge 瀏覽器。這是IE的替代品,擁有全新的界面和更好的性能。跟IE不同的是它一樣採用了跟 FireFox 和 Chrome 同樣的快速發佈策略。這讓JavaScript 開發者社區可以以周爲單位得到最新版JavaScript 和 Web標準特性支持而不是像過去同樣須要等不少年。程序員

 

語言和平臺github

 

Python 3.5 在今年發佈了,帶來了不少新特性 好比 Asyncio,爲你帶來了相似 node.js 的事件機制,還有type hints。 鑑於Python 3 終於真正地火起來了咱們強烈建議你替換掉 Python 2。幾乎全部的庫都已經支持 Python 3 了,因此如今是一個升級歷史遺留代碼的好時機。web

 

PHP 7 是一個重要的新版本,這個版本修復了不少問題而且帶來了新特性和性能提高(看看概覽) 。 PHP 7 大約比 PHP 5.6 快2倍, 這對一些大型項目還有WordPress 和 Drupal之類的CMS系統影響很大。 咱們強烈推薦 PHP之道,已經更新到最新的PHP7版本。 若是你須要更快的速度而且不介意換一個解釋引擎的話,能夠試試Facebook在用的 HHVM。數據庫

 

JavaScript 也以ES2015 標準 (你們一般叫作 ES6)的形式發佈了更新。 爲咱們帶來了激動人心的新功能。 感謝大多數瀏覽器版本的快速更新, 對 ES2015 的支持已經很是棒了,而且還有 Babel.js 這樣的工具可讓你的新代碼跑在低版本瀏覽器上。編程

 

Node.js 在這一年變化不少,開發者社區曾經分裂成 Node.js 和 io.js,而後又再度合併。 經歷過這些以後的結局就是咱們獲得了一個有不少代碼貢獻者積極維護的項目,而且擁有了兩個版本的 Node : 一個穩定的LTS (長期支持) 版本,這個版本注重穩定性,比較適合長期項目和大公司,和一個非長期支持可是最快實現新特徵的版本。後端

 

Swift 2 在今年初發布了。 這是 Apple 出品的旨在簡化 iOS 和 OS X 開發的現代編程語言。 幾周前, Swift 正式開源並已經兼容 Linux。這意味着你能夠用它來編寫服務端應用了。api

 

Go 1.5 在幾個月前發佈了, 並帶來了重大的架構調整。 在 2015 年它變得愈來愈流行並被早期創業項目和開源項目所採納。這門語言是 很是簡單的,因此花一個週末你就能學會。

 

TypeScript 是一個可編譯成 JavaScript 的靜態類型語言 。這是由微軟開發的,因此跟Visual Studio 和開源的 Visual Studio Code editors 完美地集成了。它很快就要大紅大紫了,由於即將到來的 Angular 2 就是用它寫的。靜態類型對大型團隊的大型項目特別有用,因此若是你正在大型團隊中作大型項目,或者僅僅出於好奇,你也應該嘗試一下 TypeScript 。

 

若是爲了好玩兒,你也能夠試試某種函數式編程語言好比 Haskell 或者 Clojure。也有有趣的高性能語言好比 Rust 和 Elixir。若是你在找一份程序員的工做的話, 職業開發語言好比Java (在第8版中有一些很好的新特性) 和 C# (感謝 Visual Studio Code 和 .net core 實現了跨平臺開發和運行) 都值得你在2016年投入時間。

 

挑一個或幾個學習: Python 3, Go, PHP 7, ES2015, Node.js, Swift, TypeScript

 

JavaScript 框架

 

JavaScript 框架是web開發技術棧中很是重要的一部分,因此咱們單獨拿一小節來講這個。今年有兩個新標準—— Service Workers 和 Web Assembly,基本改變了現代 Web APP的開發方式。還有一些咱們以爲你在2016年應該保持關注的框架新版本發佈。

 

Angular.js 已經成爲了大型企業首選的 JavaScript 框架。 這個框架即將發佈下一個大版本的消息相信你們已經聽過一段時間了, 在今年初的時候 Angular 2 發佈了開發者預覽版。 相對 Angular 1 而言是一次顛覆性的重構,而對咱們而言帶來了巨大的改進。一旦正式發佈就頗有可能成爲企業應用開發框架的首選,因此 Angular 2 的開發經驗將會是你簡歷裏很好的一個加分項。咱們建議再等幾個月直到最終版正式發佈以後才用於生產,不過你不妨如今就讀一讀他們的 快速上手指南。

 

React 在2015年裏持續升溫而且持續升級,愈來愈多的新項目採用它開發。 幾個月前他們發佈了新的開發工具 。 Facebook 還發布了用於開發支持 Android 和 iOS 平臺原生應用的 React Native 框架,這個框架使用了原生界面配合運行在後臺的JavaScript線程實現基於React開發原生應用。 能夠參考咱們今年發表的React初級教程 。

 

Polymer 1.0 是在5月份發佈的。 這是第一個穩定且可用於生產的版本. Polymer 主要是基於 Web Components 標準, 這是一份將 HTML, JS 和 CSS 打包成獨立組件並便於快速引用的標準。目前只有 Chrome 和 Opera 支持 Web Components標準,可是 Polymer 搞定了瀏覽器兼容性問題。

 

Ember.js 也發佈了一個新版本。 Ember 2 帶來了模塊化功能、廢棄了一些舊特性並提高了性能。 Ember 遵循語義化版本而且開發團隊儘量保證你們可以平滑升級。若是你須要一個穩定且易於升級的框架的話,Ember是個不錯的選擇。

 

挑一個或幾個學習: Angular 2, React, Ember.js, Polymer, Web Components, Service Workers

 

前端

 

Bootstrap 在過去的一年裏變得更加流行了,正在成爲Web開發的標配。 使用SASS 並支持 flexbox 的第四版將在幾個月以後發佈,官方保證能夠從V3平滑升級 (不會像2年前從 v2 升級到 v3 那樣 ), 因此儘管放心,你學的第3版的相關知識照樣會適用於第4版。

 

Foundation 是另外一個可替代Bootstrap的前端框架。 第6版在年初的時候發佈了,這個版本主要側重於模塊化,你能夠根據須要定製本身須要的部分以便縮短加載時間。

 

MDL 是一個Google官方發佈的用於開發material design web app 的框架。 這個框架在今年初發布並和Polymer目標類似,可是更容易上手。咱們曾經寫過一篇 精彩的 MDL 與 Bootstrap 差別總結。

 

CSS 預處理器也在持續改良。LESS 和 SASS 是當下最流行的兩個,大部分功能都差很少。可是,最新的 Bootstrap 4 都已經轉向了 SASS,因此2016年要學的CSS預處理器中 SASS 得到了一些優點。固然了,也還有更新的 PostCSS 工具值得留意,可是咱們強烈建議先掌握了預處理器再來學這個。

 

挑一個或幾個學習: Bootstrap, MDL, Foundation, SASS, LESS, PostCSS

後端

 

這幾年的Web開發有一個很是明顯的趨勢。愈來愈多的應用邏輯轉移到了前端,而後後端僅僅是API。然而傳統的後端生成頁面的應用依然還有生存空間,因此咱們以爲學一個經典的全站框架依然是很是重要的。

 

關 鍵取決於你更喜歡那種語言,可選擇的很是多。用PHP你能夠選 Symfony, Zend, Laravel (還有 Lumen, 這是新一代專一於API開發的框架), Slim 等。用Python 有 Django 和 Flask 。用 Ruby 有Rails 和Sinatra。用Java有 Play 和 Spark。用Node.js你能夠選擇 Express, Hapi 和 Sails.js ,還有 Go 語言的Revel。

AWS Lambda去年就已經發布了,可是這個概念到如今才穩定並能用於生產。這是一種可無限擴展的徹底取代傳統後端服務器的雲服務。你能夠根據API被訪問時的特定條件或者路由來定義不一樣的響應方法。這意味着你能夠徹底不用管服務器。

 

另 一個趨勢是靜態站點生成器好比 Jekyll 和 Octopress(這裏有一個完整的同類清單)。這類工具的主要功能是把一堆文本和圖片文件渲染成一個完整的靜態網站。那些之前一般本身搭一個 Wordpress博客程序的開發者如今更喜歡事先生成並直接上傳一個靜態網站。這樣會更加安全(沒有後端服務器也不須要數據庫)而且性能很是好。結合 MaxCDN 或 CloudFlare之類的CDN服務可讓用戶就近訪問,明顯減小等待時間。

 

挑一個學習: 傳統的全棧後端框架, AWS Lambda, 一種靜態生成器

 

內容管理系統(CMS)

 

咱們主要介紹兩種最流行的 CMS系統。都是用PHP寫的而且易於部署和上手。他們都由於PHP7的發佈得到了明顯的速度提高。

 

最 近幾年 WordPress 已經變得早就不只僅是個博客程序了。它是一個成熟的 CMS/框架,配合插件能夠作任何一種網站。高質量的 WordPress 皮膚是一個巨大的市場,不少自由職業者以 WordPress 相關開發爲生。配合相似 WP-API 之類的項目你能夠把Wordpress變成一組 REST API 。

 

Drupal 8 在今年發佈了。這是一次側重現代開發最佳實踐的重構。使用了 Symfony 2 組件、 Composer 包管理器 和 Twig 模板引擎。成千上萬的網站在使用 Drupal,它確實是之內容爲主的門戶網站的一個很好的選擇。

 

數據庫

 

這一年Web開發社區對 NoSQL 數據庫失去了一些熱情,從新回到了關係型數據庫好比 Postgres 和 MySQL 身邊。這方面著名的例外是 RethinkDB 和 Redis ,他們都很火,我強烈建議你在2016年都試試。

 

MySQL 是最火而且大部分主機供應商都支持的開源數據庫。在5.7版裏,MySQL 也提供了JSON columns來存儲非關係型數據。若是你剛開始接觸後端開發,你可能正在找鏈接到服務器已安裝的數據庫的方法。極可能是舊版本的,因此你沒辦法嘗試 JSON 類型數據。MySQL已經包含在了很流行的 XAMPP 或 MAMP 之類的軟件包裏,因此上手很容易。

 

挑一個學習: Redis, RethinkDB, MySQL/MariaDB, PostgreSQL

 

移動應用

 

移動平臺一直在進步而且智能機的硬件配置如今跟低端筆記本的性能差很少了。這對於 hybrid 移動開發框架來講是個好消息,基於web技術開發的移動應用將獲得更加順滑、更像原生的體驗了。

 

我 們曾經寫過一篇不錯的 Hybrid應用開發框架概覽 你或許會感興趣。最火的 Ionic 框架 和 Meteor 都在最近發佈了1.0版本且都適合作移動應用開發。Facebook 開源的 React Native,能夠在後臺JavaScript進程裏運行 React 組件並更新原生的UI界面,讓你能夠用幾乎同一套代碼同時寫 iOS和Android應用。

挑一個學習: Ionic, React Native, Meteor

 

編輯器和開發工具

 

Atom 在今年發佈了1.0。它是一款使用web技術開發的免費且功能強大的代碼編輯器。它背後有一個不少大開發者社區(譯者注:github)提供了不少擴展 包。它提供好用的自動完成並集成了代碼重構和校驗工具。差點忘了它還有不少漂亮的皮膚能夠選擇,而且你能夠本身寫 CoffeeScript 和 CSS 來定製本身喜歡的皮膚。Facebook 已經這麼幹了,而且發佈了名爲 Nuclide 的編輯器。

 

微軟在今年年初發布的 Visual Studio Code 給了你們一個驚喜。這是一款支持多種語言併兼容 Windows, Linux 和 OS X 平臺的輕量級IDE。它提供了強大的智能代碼檢查並集成了 ASP.Net 和 Node.js 的調試工具。

 

NPM,Node.js的包管理器,火得一塌糊塗並已經成爲了前端和node開發者的標準包管理器。這是幫你的項目管理 JavaScript 依賴最簡單的方法而且上手很容易。

 

目 前哪怕是一我的開發也有必要用 Git。它的分佈式模型讓你能夠把任何一個文件夾變成一個版本控制倉庫,而後你能夠把這個倉庫發佈到 Bitbucket 或 Github,同步到其餘電腦上。若是你還沒用過 Git,咱們強烈建議你把它加入你2016年須要學習的清單裏面。

 

挑一個學習: Atom, Visual Studio Code, NPM, Git

 

搞物聯網

 

樹 莓派基金會提早給咱們送來了聖誕禮物,Raspberry PI Zero 一種只賣 5 美金的高性能電腦發佈了。它搭載了Linux,因此你能夠把它變成一臺服務器,一個家用自動化裝置,一面智能鏡子,或者把它集成到別的電器裏面打造一個你 求之不得的能聯網控制的咖啡機。2016年是你應該擁有樹莓派的一年。

相關文章
相關標籤/搜索