當前位置:
首頁 > 最新 > 前端每周清單:NPM 年度報告與 2018 展望

前端每周清單:NPM 年度報告與 2018 展望

新聞熱點

國內國外,前端最新動態

NPM 發布 2017 JavaScript 框架增長度報告: 作者使用某個包的下載佔全部下載量的百分比,作為衡量某個框架是否持續性增長的指標,並以此發布了 2017 JavaScript 框架使用報告;該報告主要著眼於前端框架,React 生態圈以及後端框架這三個部分。根據該報告,前端框架中的 Preact 與 Vue 都是增長迅速,不過 React 在總體量與增長速度上還是佔據優勢;而在 React 生態圈內,Apollo 則是飛速崛起,MobX 也是增長迅速但還難以匹敵 Redux。

Nuxt.js 1.0 發布: Nuxt.js 是基於 Vue.js, vue-router, vuex 以及 vue-meta 的,快速創建 Web 應用的零配置工具。本周發布的 Nuxt 1.0.0 版本,將各項依賴更新到了最新版本,同時提升了整體的穩定性與性能表現,也意味著其能夠用於生產環境;更多特性變化描述請查看原文。

Node v9.4.0 發布: 該版本中的重要變化包括了廢棄 AsyncHooks Sensitive API 與 runInAsyncIdScope,從 _events 內部實現中移除 reaches,在 clientError 中添加 rawPacket 屬性等等;可以查看原文了解更多變化。

NPM 確定新的包命名規則: 為了儘可能避免包的誤植域名現象,NPM Registry 將不會再允許使用相似的包命名;不過會進一步鼓勵開發者使用自己的命名空間來發布包。譬如,因為 react-native 已經存在,將不會再允許類似於 reactnative 這樣的包發布,不過推薦使用 @ceejbot/reactnative 這樣的方式。

開發教程

步步為營,掌握基礎技能

HTML 5.2 新特性與實踐盤點: 不到一個月之前,HTML 5.2 成為了 W3C 的官方推薦版本,這也就意味著 W3C 官方建議開發者應該遵循與實現該版本。本文則是對於 HTML 5.2 中提出的影響較大的,新特性與實踐模式進行了概述,譬如原生彈窗組件、iFrames 中的 Payment Request API 以及部分元素實踐的變化等;更多 HTML 學習參考現代 Web 開發基礎。

基於 TypeScript 的實時聊天應用: 作者在本文中介紹了如何僅使用 TypeScript,來整合 Web Sockets,Node 與 Angular 去實現某個實時聊天應用。本文首先介紹了 WebSocket 的定義與規範,然後使用 Express,Socket.io 去實現服務端應用,最後使用 Angular 來構建客戶端應用;更多 TypeScript 學習資料參閱現代 JavaScript 開發基礎。

基於 Node.js 實現的深度學習面部識別庫: 本文中,作者介紹了如何使用新近開源的 face-recognition.js 庫,去構建高可用的面部識別與檢測應用。該庫底層使用了 dlib,然後使用 Node.js 綁定來暴露上層介面;而 dlib 則使用了深度學習演算法,並且內置了部分預訓練的模型,其在 LFW 面部識別評測中能夠獲得 99.38% 的準確率。更多 Node.js 學習參考 深入淺出 Node.js 全棧架構。

工程實踐

立足實踐,提示實際水平

基於 React Router v4 的服務端渲染,代碼分割與懶載入實踐: 本文中,來自 Airbnb 的工程師分享的了,他們基於 React Router V4 進行服務端渲染,代碼分割與懶載入的實踐。在 RRV4 中,路由即組件的方案替代了原本的集中式配置,但是這導致了無法根據路徑進行合適的服務端渲染;針對這個問題,作者首先討論了如何在現有框架上進行路由管理,然後討論了非同步組件與代碼分割的技巧。更多 React 學習參考 React 與前端工程化實踐。

2018 Web 開發者學習路線圖: 本倉庫包含了一系列成為前端工程師、服務端工程師或者運維工程師的學習路線圖,前端工程師路線圖包括了基礎、深入 JavaScript 中的測試、框架、模塊打包、包管理、響應式開發等,後端則包括了開發框架、包管理、資料庫、緩存、消息中間件、搜索引擎等,DevOps 則包括了操作系統、雲計算、持續集成、自動化、監控告警、Web 伺服器、集群管理等等。更多圖譜參考 IT 知識圖譜與技術路線。

8 個 2018 構建 Node.js 應用的建議: 本文是來自 RisingStack 的工程師分享的,他們關於 2018 年構建 Node.js 應用的建議。這些建議包括使用 async-await, 嘗試 import 與 import(), 嘗試 HTTP/2,加固你的 Node.js 應用等等。更多 Node.js 學習參考 深入淺出 Node.js 全棧架構。

深度閱讀

深度思考,升華開發智慧

現代網路負載均衡與代理綜述: 負載均衡是構建現代分散式應用系統的重要組成部分,本文即是對現代負載均衡與代理技術進行了綜述與盤點。本文依次討論了什麼是負載均衡,其和代理的異同,負載均衡的特點,現代常用 L4 與 L7 的不同層負載均衡的實現拓撲與應用案例等;更多微服務相關參考服務端應用程序開發與系統架構。

操作系統工作原理:開發者應該掌握的十個概念: 操作系統是軟體開發中必備的基礎知識之一,而作者在本文中總結了十個操作系統相關的關鍵概念,來幫助開發者更深入地掌握編程理念。這些概念包括進程與進程管理、線程與並發、調度、內存管理、輸入與輸出管理、可視化、分散式文件系統、分散式共享內存、雲計算等等;更多操作學習參考 Linux 配置使用、內部原理與 Shell 編程。

2018 年前端展望:合久必分,分久必合: 這幾年來前端領域風起雲湧,百花齊放,本文在簡要總結 2017 前端各個框架領域的變化之後,對 2018 年可能的發展進行了展望。React 可能在渲染函數參數、setState 返回 Promise、非同步友好地生命周期回調等方面做出改進,初次之外,作者還對 Angular、Vue、Webpack、Parcel 等框架或工具進行了點評;更多前端學習參考 Web 開發基礎與工程實踐。

開源項目

樂於分享,共推前端發展

toapi: Toapi 是基於 Flask 開發的,能夠將任何網站轉化為 API 服務的框架。Toapi 實際上也包含了爬蟲抓取、介面服務等部分,不過其簡化了整個流程;使用者僅需要定義數據的輸入輸出,Toapi 會幫助自動化整個流程。

TOAST UI Editor: TOAST UI Editor 是面向生產環境的,可擴展的,支持 MarkDown 語法的 WYSIWYG 編輯器;它提供了 MarkDown 與 WYSIWYG 兩種模式。TOAST UI Editor 實現了 CommonMark 與 GFM 兩個標準,同時提供了強大的 API 來方便開發者自定義擴展。

Nerv: Nerv 是基於 Virtual-DOM 的 JavaScript(TypeScript)框架,其能夠兼容 React 16 API;不過提供了更加高性能、小尺寸與更好瀏覽器兼容性等特性。

workerize: workerize 能夠方便地將某個模塊移入 Web Worker,自動反射提供出介面函數;workerize 會注入某個輕量級的 RPC 實現到應用中,支持同步或者非同步地 Worker 函數調用,並且能夠順滑支持 async/await。

Screenshot-to-code-in-Keras: 近年來深度學習技術飛速發展,或可以在某些方面改變前端開發;而該倉庫提供了某個神經網路,來將設計稿的截圖直接轉化為靜態網頁,它能夠加速原型實現地速度,並且降低軟體構建的成本。

巔峰人生

老炮程序員響馬:年輕時我想寫代碼到 60 歲,現在我想寫到 65 歲: 響馬(Xicilion),本名劉琥,70 後程序員,南京第三極軟體科技有限公司創始人。1992 年畢業於南京動力高等專科學校後留校教授計算機課程,1998 年創辦西祠衚衕,2012 年創辦孢子社區,目前專註於 fibjs 項目的開發。本文是對其幾十年來技術之路的回顧與展望,也是一代技術人的青春回憶。

前端之巔


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 前端之巔 的精彩文章:

前端每周清單:探究 V8 引擎,2018 前端性能清單

TAG:前端之巔 |