版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、前端架構(gòu)體系技術(shù)一、框架與組件bootstrap等UI框架設(shè)計與實現(xiàn)伸縮布局:grid網(wǎng)格布局基礎(chǔ)UI樣式:元素。$就、按鈕、圖片、菜單、表單組件UI樣式:按鈕組、字體圖標(biāo)、下拉菜單、輸入框組、 導(dǎo)航組、面包屑、分頁、標(biāo)簽、輪播、彈出框、列表、多媒 體、警告響應(yīng)式布局:布局、結(jié)構(gòu)、樣式、媒體、javascript響應(yīng)式第三方插件:插件管理jQuery、zepto使用原理以及插件開發(fā)支持amd、cmd、全局變量的模塊化封裝$.fn.method = function() mvc/mvvm框架原理設(shè)計directive 設(shè)計:html、text、class、html、attr、repeat、ref
2、, 可擴展filter 設(shè)計:bool、upperCase、lowerCase,可擴展表達式設(shè)計:if-else等實現(xiàn)viewmodel結(jié)構(gòu)設(shè)計:例如數(shù)據(jù),元素,方法的掛載與作用 域數(shù)據(jù)更變檢測:函數(shù)觸發(fā),臟數(shù)據(jù)檢測、對象hijackingpolymer/angular2思想與設(shè)計思路import技術(shù)template和script引入方式css樣式命名空間隔離簡單復(fù)用第三方庫reactjs原理與使用virtual dom單向數(shù)據(jù)綁定js執(zhí)行語法方式UI由狀態(tài)控制 commonJS/AMD/CMD模塊引入模塊定義模塊標(biāo)識UMD解決不同規(guī)范兼容性的問題,例如webpack封裝模塊懶執(zhí)行(CMD)與
3、與預(yù)執(zhí)行(AMD)loadJs模塊化加載原理與實現(xiàn)創(chuàng)建script標(biāo)簽,需要id映射到資源urlonload加載模塊隊列判斷全部加載完成后觸發(fā)加載失敗問題優(yōu)化requirejs、modjs、seajs polyfill、shim原理與實現(xiàn) polyfill提供了開發(fā)者們希望瀏覽器原生提供支持的功能特 性shim將新的API引入到舊的環(huán)境中,且僅靠舊環(huán)境中已有的 手段實現(xiàn)virtual Dom、Incremental DOM1用js對象樹表示dom樹結(jié)構(gòu),根據(jù)該對象樹構(gòu)建dom樹.狀態(tài)改變時,重新構(gòu)建對象,和舊的對象對比,記錄兩個對象樹差異.將對象樹差異應(yīng)用到dom中小結(jié):js 對象模擬 dom
4、(elem.js), virtual dom diff 算法1仃$)、 差異渲染 dom(patch.js)incremental dom在狀態(tài)改變時掃描舊對象樹將差異直接應(yīng)用 至U dom中shadow dom隔離外部環(huán)境用于封裝組件:結(jié)構(gòu)、樣式、行為實現(xiàn)形式:新標(biāo)簽、class類屬性+構(gòu)建編譯webwork 與 service Worker webwork與主線程機制,on/postserviceworker可作為瀏覽器請求代理應(yīng)用場景ES6轉(zhuǎn)ES5、Babel與ES6開發(fā)規(guī)范體系ES6編碼規(guī)范全ES6在babel下兼容性ES6在node下兼容性與性能ES6新特性:看編碼規(guī)范aurelia
5、 ES6前端框架Isomorphic JavaScript同構(gòu)原理同構(gòu)方案Rendrnodejs:服務(wù)器hapi:應(yīng)用服務(wù)backbone.js:后臺 mvcrequirejs:模塊加載jquery: dom 處理reactjs 同構(gòu):React + Flux + Koa雙向數(shù)據(jù)綁定函數(shù)觸發(fā):vuejs臟數(shù)據(jù)檢測:angular 對象 hijacking:avalonbrowserify 運行原理.從入口模塊開始分析require函數(shù)調(diào)用.根據(jù)依賴生成AST.根據(jù)AST找到每個模塊的模塊名.得到每個模塊的依賴關(guān)系,生成一個依賴字典.包裝每個模塊(傳入依賴字典以及export和require函數(shù)
6、), 生成執(zhí)行的jsperformance timingperformance timing api performance timing 過程performance timing 性能計算performanceTrace 庫組件UI與js組件規(guī)范化組件編碼規(guī)范組件目錄規(guī)范:組件目錄與公用目錄組件構(gòu)建規(guī)范:構(gòu)建環(huán)境支持組件模塊化管理:spm, bowserify組件復(fù)用性管理第三方組件接入成本immutable JavaScriptgenerator 與 promise 原理與使用二、構(gòu)建 生態(tài)grunt/gulp開發(fā)環(huán)境任務(wù)編寫文件處理插件:html、scss、js、image、font、其
7、它優(yōu)化插件:雪碧圖、圖片壓縮、iconfont構(gòu)建發(fā)布替換插件打包、壓縮包插件:組件自動分析白名單配置自定義插件編寫npm、jspm、bower 包管理工具 r.js、browserify、webpack、webpack2、Rollup打包工具使用原理:根據(jù)依賴配置文件對文件進行依賴打包webpack支持更多的規(guī)范打包,AMD,Commonjswebpack+babel/reactjs+refluxfis3構(gòu)建與插件開發(fā)、構(gòu)建環(huán)境、fis3構(gòu)建離線包web Component: rosetta-org、x-view、Q、riot、novabrunch 構(gòu)建 工具三、開發(fā)技巧與調(diào)試fiddler
8、加willow基礎(chǔ)組合調(diào)試常見配置與分析結(jié)合瀏覽器調(diào)試werien、vorlonjs 遠程調(diào)試,chrome inspectmockjs,F(xiàn).M.S(FrontMock Server)模擬調(diào)試使用與cgi自動調(diào)試 macha/phantomjs/casperjs/karma測試自動化任務(wù)使用自動化 UI 測U試,海豚node-supervior、node-inspector karma 開發(fā)發(fā) 布系統(tǒng)流程sublime高效插件emmet 工具使用、 sublimelinter、babel snippets sublimeLint、SassBeautify、emmet 快速編輯、jsxlint、
9、 SideBarEnhancements、 SnippetsMaker、 SublimeCodeIntel、 css snippets ColorPicker、 html/css/js Pretty、 SpinnetMacker、 DocBlockr、 MultiEditUtils、 javascript & node spinnet、JavaScript & NodeJS Snippets、 jsLint、cssLint代碼自動化檢查fecs四、html、css與重構(gòu)jpeg、webp、apng、 bpg圖片編碼原理特點與優(yōu)劣勢適用場景iconfont使用與實現(xiàn)原理自動打包構(gòu)建方法iconf
10、ont兼容性寫法fonthello、fontawesome、icom00n.io、 線上工具頁面響應(yīng)式設(shè)計layout布局響應(yīng)式html結(jié)構(gòu)響應(yīng)式 css樣式響應(yīng)式image媒體響應(yīng)式 javascript 響應(yīng)式media query與平臺判斷css重置resetnomalizeneatsass/compass/less/postcss 常用語法與使用常用語法功能組件化UI設(shè)計管理構(gòu)建工具實現(xiàn)方案雪碧圖自動合成iconfont自動接入等等media query與常見頁面尺寸了解媒體類型引入和媒體特性引入device-width 適應(yīng)retina屏幕適應(yīng) em,rem原理與實現(xiàn)rem計算:wi
11、dth*retina/10,相當(dāng)于屏幕寬度為10rem字體在rem情況下仍然使用pxcode4ui、code4app、初頁、maka 等前端dom操作即使刷新前端頁面根據(jù)dom操作生成組件config配置保存到db根據(jù)config配置使用r.js或webpack打包發(fā)布打包后輸出文件css3動畫 transformanimation transiction3D加速與動畫加速動畫庫緩動函數(shù)速查表: HYPERLINK /easeing/easeing/ /easeing/easeing/Ceaser: HYPERLINK /easeing/ceaser/ /easeing/ceaser/cubi
12、c-bezier: HYPERLINK / /css網(wǎng)格布局susyResponsive Grid SystemFluid 960 Grid(adaptjs)Simple Grid搜索引擎與前端SEOtdk優(yōu)化頁面內(nèi)容優(yōu)化唯一的H1標(biāo)題img設(shè)置alt屬性nofollowurl優(yōu)化統(tǒng)一鏈接301跳轉(zhuǎn) canonicalrobot優(yōu)化robots.txtmeta robotssitemapSEO工具各種站長工具等瀏覽器緩存種類, resources,webSQL,indexDB, localstorage,cookie,app cache,cache storagestore.js、cookie
13、.jsUI框架 bootstrap、jqwidgets、semantic ui、amaze ui微信手 Q ui: frozenui、weui、blend ui extjs、echart 圖表 ui五、native/hybrid/桌面開發(fā)ionic移動開發(fā)方案運行架構(gòu)hybrid混合開發(fā) cordova 交互離線包更新性能瓶頸nativescript移動開發(fā)方案reactNative移動開發(fā)方案運行架構(gòu):js引擎性能缺陷與內(nèi)存泄露更新機制使用場景android/ios原生開發(fā)與框架 javaoc、swift web與native交互屏幕旋轉(zhuǎn)搖一搖錄像,拍照,選取本地圖片打電話,發(fā)短信電池電量地
14、理位置日期選擇開啟硬件加速桌面應(yīng)用開發(fā)nodewebkit atom-shell(后改名為 electron)網(wǎng)易Hexpomelo(游戲服務(wù)器框架)react desktopappjs:六、前端/H5優(yōu)化(另一個圖已給出)yslow、pagespeed移動 web性能優(yōu)化手機瀏覽器”省流量”原理增量更新原理及注意事項本地存儲的應(yīng)用加載優(yōu)化圖片優(yōu)化單頁面及路由實現(xiàn)業(yè)內(nèi)著名站點案例分析七、全棧/全端開發(fā)express/nodeclub + mongodb、thinkjs 等框架 node.js 直出實時 web 開發(fā), meteor/express.ioMEAN(mongodb/express/
15、angular/nodejs)http 與 http2 協(xié)議、bigpipe,pipeline 離線緩存,cookie、localstorage、 indexdbcdn 與 dns動態(tài)域名加速cdn 原理與 cdn combo八、研究實驗 WebAssembly、webTRC、typescriptMaterial design規(guī)范的前端框架交互動效庫AMP-HTML 規(guī)范使用受限HTML以及緩存技術(shù)來提高移動網(wǎng)絡(luò)中靜態(tài)內(nèi)容 的性能添加自定義的元素代替禁用掉的元素:amp-audio, amp-img、 amp-video 等九、數(shù)據(jù)分析與監(jiān)控badjs數(shù)據(jù)上報捕獲錯誤兩種方法:onerror、
16、try-catch。抽樣上報,先onerror統(tǒng)計語法錯誤,如果是script erro一再使用 tryjs。后臺統(tǒng)計方法、不同業(yè)務(wù)接入體系、抽樣統(tǒng)計onerror:可以捕捉語法錯誤和運行時錯誤;可以拿到出錯的信 息,堆棧,出錯文件、行號、列號;當(dāng)前頁面執(zhí)行的js腳本 出錯都會捕捉到;跨域的資源需要特殊頭部支持。try-catch:無法捕捉語法錯誤,只能捕捉運行時錯誤;可以拿 到出錯的信息,堆棧,出錯文件、行號、列號;需要借助工 具把function塊以及文件塊加入try,catch,可以在這個階段 打入更多的靜態(tài)信息。點擊熱力圖clickHeat、heatMapjs加載失敗優(yōu)化方案失敗重發(fā)機制加載源域名服務(wù)器文件https反劫持 百度alog數(shù)據(jù)上報十、其它軟技能axure原型圖設(shè)計xmind腦圖管理效率管理cani use、github知識管理/總結(jié)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度高端住宅項目分銷渠道合作協(xié)議3篇
- 二零二五版市政道路砍割樁施工項目合同2篇
- 2025年度生態(tài)農(nóng)業(yè)餐飲食材配送框架協(xié)議3篇
- 梧州職業(yè)學(xué)院《推拿學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024版醫(yī)療機構(gòu)餐飲服務(wù)合作協(xié)議版B版
- 二零二五版醫(yī)療設(shè)備檢驗試劑配套供應(yīng)協(xié)議2篇
- 2024版行政人員合同
- 二零二五版單位食堂餐飲服務(wù)設(shè)施升級改造合同3篇
- 2024版廣告設(shè)計與發(fā)布合同
- 太湖創(chuàng)意職業(yè)技術(shù)學(xué)院《輕化工程專業(yè)發(fā)展概論》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024年醫(yī)師定期考核臨床業(yè)務(wù)知識考試題庫及答案(共三套)
- 2014新PEP小學(xué)英語六年級上冊-Unit5-What-does-he-do復(fù)習(xí)課件
- 建筑材料供應(yīng)鏈管理服務(wù)合同
- 孩子改名字父母一方委托書
- 2024-2025學(xué)年人教版初中物理九年級全一冊《電與磁》單元測試卷(原卷版)
- 江蘇單招英語考綱詞匯
- 2024年事業(yè)單位財務(wù)工作計劃例文(6篇)
- 2024年工程咨詢服務(wù)承諾書
- 青桔單車保險合同條例
- 車輛使用不過戶免責(zé)協(xié)議書范文范本
- 2023-2024學(xué)年天津市部分區(qū)九年級(上)期末物理試卷
評論
0/150
提交評論