很多人覺得,前后端的差異主要是分別承載了數據和樣式,功能和皮膚。前端就是視覺方面的,后端是實質性的。追溯到很多年前,確實是這樣的,所謂的前端只是由于后端MVC中的View過于復雜,為了提升用戶體驗,提高加載速度,以及降低服務器壓力,所衍生出的一些優化技術。
內容包含五部分:前言,NodeJS職能變化,ReactNative的大規模應用,專門的架構組職能,總結。主要是介紹我所在團隊最近的一些變化和思考。
在dailyReport項目中,我通過SpringBoot + Mongodb + Redis構建了后端RESTful接口,現在需要客戶端展現了,但是我的web和移動開發都是初學者,只能從頭學起。
進入正文之前,先聲明,我并不是前端工程師,對前端的理解也比較“膚淺”。只能站在一個帶隊者的角度,闡述我的團隊最近幾年所使用過的前端技術方案。知乎上 @狼大人 邀請我回答“好的前端主管是如何帶隊的”,遺留了很久,這里也算是補上這次邀請的答案吧。
標準盒模型是怎么樣的?怪異盒模型呢?display屬性有哪些屬性值,它們的用法,并且都有什么樣的區別?淺談一下IE中的hasLayout屬性的作用,以及如何觸發該屬性?怎么修復IE6中雙空白邊浮動bug。
在 HTML 中,language 屬性已經過時,因為具有 type 屬性后,language 它是冗余的。不要再這樣寫了…… 事實上,客戶端默認為將 JavaScript 代碼指定 type=”text/javascript” 屬性,除非需要 type=”application/x-javascript” 這樣的類型,否則完全沒有必要寫 type 屬性。
今天我們的目標:分享幾套一勞永逸、通用的前端性能優化方案;講述探索這些方案的開發思路及所嘗試的途徑;服務器動態壓縮、合并靜態文件圖片懶加載BigPipe1服務器動態壓縮、合并靜態文件1s1s1s1s存在的問題?靜態文件在開發狀態與發布狀態的最佳形式存在差異:開發狀態:代碼的清晰、易讀、易維護;發布狀態:請求數少、體積小;貨物開發環境發布環境文件系統或緩存服務器Minify,服務器壓縮、合并、緩存設置Filter處理還原常規請求自動實現開發、發布的最佳狀態舊方案JSTL+配置XML新方案緩存處理域名管理統一規劃…預先壓縮緩存、版本控制memcache這樣做就夠了嗎?還能做些什么??兩種存在的場景:壓縮、合并后的文件>100k;響應頁面由多個頁面組成:include、import等;得出結論:一個響應頁面存在多個js,這個事實無法避免;阻塞加載并行加載、預加載:HTTP1.1>1個主機2個主機速度提高一倍各個瀏覽器的并行下載數2個主機是比較合適的使用一個子域名處理靜態文件,實現并行下載,提高加載速度。
本文采用問答模式,目的是深入HTML內部,去學習一些我們不經常關注,但卻實實在在存在的problem. 文章內容略顯裝逼,如果大家受不了,請帶好護目鏡。
最近在做 Coding 企業版 前端開發時花了很多時間寫測試,于是和大家分享一些前端開發中的測試概念與方法。
實用的前端響應式框架
serviceWorker 是瀏覽器提供的一層 proxy,介于 renderer 和 network 之間擁有獨立的進程。所有的 request 和 response 都要經過這一層,但沒有操作 DOM 的權限。它可以通過 script 腳本來進行操作,可以加載、修改、緩存、管理所有的 request 和 response,看到這里是不是覺得想象空間非常巨大。直接上原 PPT 的大圖。
前端工程師總是喜歡超越極限,他們熱衷于追逐各種最新、最優秀、最牛逼閃閃的用戶界面框架及前端編程庫。我們經常發現,他們一直試圖縮小 Web 程序與原生程序之間的差距,而且,正是基于這個原因,他們已將用戶界面的外觀和行為變得越來越像一款原生程序。你可能會問,是哪一類應用程序?iPhone?Android?那個版本?這些問題都很好,只可惜和我們討論的問題無關。與此同時,還有一類前端工程師,我們姑且稱之為無聊的前端工程師。以下就是一首贊美他們的頌歌,如果你愿意的話,請簡稱他們為 BFED(boring front-end developer)。
前端工程師必備技能匯總
NEJ 是由網易前端組工程師們發起創建的簡潔,美觀,真正的跨平臺web前端開發框架;她遵循的原則是 自由定制、小巧靈活、簡潔易用、愉悅編碼、快樂開發。
Quick CSS Framework是一個簡潔小巧、靈活易用、支持HTML5,CSS3、符合W3C標準的WEB前端框架! 簡單、易用是我們努力的目標!
基于 AMD(Asynchronous Module Definition)的 JavaScript 設計已經在目前較為流行的前端框架中大行其道,jQuery、Dojo、MooTools、EmbedJS 等紛紛在其最新版本中加入了對 AMD 的支持。本文介紹的是另一款較為精簡的 RequireJS 框架,既想使用 AMD 的特性又不想引入一個龐大的庫的開發人員,不妨試試 RequireJS。
NEC是網易(杭州)前端CSS開源項目代號,她為您提供漂亮簡單的樣式解決方案。 她包括了規范、框架、代碼庫、插件等內容,致力于為前端開發人員提供高效率高質量的前端頁面開發解決方案,提高多人協作效率,也為非專業人員提供快速制作網頁的解決方案。
Web 前端開發者每天都與 HTML、CSS、JavaScript 打交道,然而不少人都是周而復始地寫模板、樣式和交互效果,并沒有想過如何將這些重復的工作整合在一起。Twitter 推出的 Bootstrap 能夠幫助 Web 前端開發者擺脫這種重復勞動。
測試是完善的研發體系中不可或缺的一環,但是在前端開發的項目中做單一測試的相對較少。為讓大家了解前端測試給項目帶來的好處,七牛資深前端工程師馬逸清結合技術開發團隊在前端測試方面的積極探索,特此分享以下前端測試的實踐經驗。
此手冊主要實現的目標:代碼一致性和最佳實踐。通過代碼風格的一致性,降低維護代碼的成本以及改善多人協作的效率。同時遵守最佳實踐,確保頁面性能得到最佳優化和高效的代碼。