因個人精力有限,暫停簡書的維護,歡迎大家關注我的知乎https://www.zhihu.com/people/wei-wei-24-86-36/activities,會持續分享前端、Web開發相關文章
前端每周清單專注前端領域內容,分為新聞熱點、開發教程、工程實踐、深度閱讀、開源項目、巔峰人生等欄目。關注【前端之巔】微信公眾號(ID:frontshow),及時獲取前端之巔優質文章。
新聞熱點
國內國外,前端最新動態
《Angular 4.0.0 發布》:今日 Angular 團隊宣布發布 4.0.0 版本,該版本能夠向后兼容絕大部分 2.x.x 應用。在 4.0.0 中,帶來的主要改變包括應用更小并且速度更快、更新了視圖引擎,減少了將近 60% 的生成代碼、并且引入了動畫庫作為預置的核心庫的一部分等 。
《Egg.js 1.0.0 正式發布》:Egg.js 是企業級 Node.js 框架沉淀自阿里各行各業不同領域最佳實踐的插件,涵蓋了常見的業務開發場景,穩定支撐了 15 和 16 年天貓雙 11 大促,頂級流量壓力 。其秉持漸進式理念,極具伸縮性,既適合個人小項目快速開發,也適合企業級的團隊開發協作。
《WebStorm 2017.1 增加對 Vue.js 的支持》:近日,JetBrains 發布了其最受歡迎的 WebStorm IDE 的 2017.1 版本,毫不例外地增加了對 Vue.js 的支持。WebStorm 現在會識別 .vue 文件并在模板中增加代碼補全功能。當引用其他視圖組件時,WebStorm 也將能夠自動補全代碼并自動增加 import 聲明。
開發教程
步步為營,掌握基礎技能
《Angular 4 學習資源》:隨著 Angular 4 的正式發布,本文收集了部分學習 Angular 4 的資源,包括特性總結、服務端渲染、響應式編程、樣式指南等等多個部分。
《CSS Grid 典型案例》:該網站提供了一系列基于 React 編寫的 CSS Grid 布局的測試樣例,是個不錯的從實例中學習 CSS Grid 語法與使用的教程。
《Webpack 實踐教程》:本系列教程著眼于介紹真實應用中 Webpack 的使用,包含了三個部分:構建基礎前端項目與添加編譯支持、減少包體體積與緩存、加速構建與提升開發工作流。
《面向“遠古” Web 開發者的現代 JavaScript 教程》:本文主要是面向那些從 PHP、JSP、Rails 占據統治地位時開始進行 Web 技術的開發者進行常見的現代 JavaScript 基礎概念的介紹。
《你應該知道的關于 Node.js 中模塊導入的知識》:在 Node.js 開發中我們時刻都在于其模塊機制打交道,而本文作者則深入淺出地介紹了 Node.js 中負責處理模塊依賴的兩個核心模塊:require 與 module;并且介紹了不同的導入對象在 Node.js 中實際的遞歸處理流程以及最終在 module 中形成的元數據描述。
工程實踐
立足實踐,提示實際水平
《Dropbox:使用同域 Cookie 避免跨站攻擊》:跨站請求偽造(CSRF)是常見的網絡滲透攻擊手段之一,攻擊者會誤導用戶在攻擊站點上對目標站點發起非法請求。本文是 Dropbox 工程師分享他們在實踐中常用的防御經驗分享,包括使用動態表單令牌、同域 Cookie 等等。
《跨瀏覽器插件模板》:隨著 Firefox 也開始支持 WebExtensions,我們可以更加方便地編寫跨瀏覽器插件,盡可能地復用代碼。本倉庫則提供了基礎的插件模板,實現了一次編寫,多處運行、熱加載等多個便捷功能的預置。
《VS Code 使用貼士與技巧》: VSCode 是非常輕量易用的軟件開發工具,其豐富的插件系統能夠極大地滿足開發需求。本文則是作者總結的一系列 VS Code 使用技巧的總結與介紹,譬如常用命令操作、文件管理、Git 集成、調試與任務運行等等。
《解密 JavaScript 異步編程》:JavaScript 中異步編程歷經了多個大的迭代,從回調到 Promise 到生成器以及現在的 Async/Await;本文作者則是高屋建瓴地介紹了 JavaScript 異步編程的變遷歷史以及簡要的內部實現原理。
《Webpack CommonsChunkPlugin 與多入口公共代碼提取》:在構建基于 Webpack 的前端工作流時,CommonsChunkPlugin 是常用的公共代碼提取插件。而本文則是 Webpack 開發團隊對于社區反饋的CommonsChunkPlugin 使用過程中的一些誤區與同步/異步公共代碼塊提取的實踐進行總結與分析。
《構建可維護的大型 Angular 2 應用》:本文是來自 Versett 的工程師介紹其團隊在基于 Angular 2 構建大型應用時的實踐與總結。
《開發 React Native 與 Redux 應用一年來的錯誤總結》:本文作者總結了他在過去一年中 React Native 與 Redux 開發中遇到的錯誤的復盤與總結,譬如布局文件分割、Redux Store 設計、項目目錄結構、表單驗證等多個方面。
深度閱讀
深度思考,升華開發智慧
《淺析 WebAssembly 緣何優于 Asm.js》:WebAssembly 是新的 Web 中可執行格式,逐現代瀏覽器紛紛地提供了對于 WebAssembly 的原生支持;本文則是對于 WebAssembly 相較于 asm.js 帶來的性能提升背后的原理進行簡要介紹。
《ES7 Async/Await 常見誤區》:ECMAScript 6 引入的 Promise 大大簡化了 JavaScript 中異步編程語法,而 ES7 引入的 Async 則使其更為優雅;本文作者對于實踐中常見的對于 Async/Await 的語法誤用案例進行了解析。
《React Conf 2017 盤點》:本文作者對于近日舉辦的 React Conf 2017 中的精彩演講進行了盤點,包括 Redux 與 MobX 在狀態管理領域的對比、ReactVR 等一系列優秀的基于 React 的擴展項目、代碼格式化與樣式組件、服務端渲染等等。
《百度 SSP 單頁式應用性能優化實踐》:針對首頁和部分頁面打開速度慢的問題,百度SSP前端團隊對單頁式應用性能進行了優化。本文介紹其中一個方案:基于 HTTP Chunk 的首屏數據漸進式預加載方案,該方案總體減少了單頁應用 1.2s 的首屏呈現時間。同時對比其與同構渲染方案的異同。
《Composing Software》:本系列文章由 Eric Elliott 大神發布,著眼于介紹 JavaScript 函數式編程與大型軟件項目中的可組織性技術的介紹,包括了函數式編程導論、高階函數、Reduce、Functors & Categories 等幾個部分,還在持續更新中。
《Redux 實踐大討論》:此篇是 Markerikson 在 Redux Issue 中發起的討論,主要涉及 Redux 模板冗余、過度抽象、學習曲線過于曲折、太多的 Opinioned 最佳實踐等問題。
開源項目
樂于分享,共推前端發展
《react-native-interactable》:react-native-interactable 是由 wix 發布的用于創建高性能用戶交互效果的聲明式接口。典型的用戶場景包括滑動式卡片、抽屜菜單、伸縮式應用頭、聊天頭等。
《awesome-github-vue》:awesome-github-vue 是由 OpenDigg 整理并維護的 Vue 相關開源項目庫集合。
《react-overdrive》:非常簡單易用的 React 應用轉場動畫實現庫,能夠在不同的頁面間指定相同 ID 的元素,Overdrive 會自動為這兩個元素之間添加轉場動畫。
《Eagle.js》:Eagle.js 是基于 Vue.js 構建的創建 Web 中幻燈片的庫,支持動畫、主題、交互插件等常用功能。
《react-perimeter》:react-perimeter 能夠為目標元素創建隱藏的柵欄,當用戶的鼠標移動到目標元素的指定范圍內時會觸發預設時間,譬如可以執行組件預加載等操作。
巔峰人生
- 《六問CTO,程序員的個人、職業成長如何抉擇?》:本文是聲網 Agora.io CTO 陶思明對于程序員的自我成長、KPI 考核機制、技術管理與創業選擇等相關問題進行的回答與分享。
前端之巔
「前端之巔」是InfoQ旗下關注前端技術的垂直社群,加入前端之巔學習群請關注「前端之巔」公眾號后回復“加群”。投稿請發郵件到editors@cn.infoq.com,注明“前端之巔投稿”。