圖書信息
作 者:曹劉陽 著出 版 社:機械工業出版社
出版時間:2010-6-1
版 次:1
頁 數:281
印刷時間:2010-6-1
開 本:16開
紙 張:膠版紙
I S B N:9787111305958
包 裝:平裝
內容簡介
本書以網站重構為楔子,深刻而直接地指出了Web前端開發中存在的重要問題—代碼難以維護。如何才能提高代碼的可維護性?人是最關鍵的因素!於是本書緊接著全方位地解析了作為一名合格的前端開發工程師應該掌握的技能和承擔的職責,這對剛加入前端開發這一行的讀者來說有很大的指導意義。同時,還解讀了制定規範和團隊合作的重要性。
本書的核心內容是圍繞Web前端開發的三大技術要素——HTML、CSS和JavaScript來深入地探討編寫高質量的HTML代碼、CSS代碼和JavaScript代碼的方法、技巧、規範和最佳實踐,從而為編寫易於維護的Web前端代碼打下堅實的基礎。對於那些中初級水平的讀者而言,本書是一本不可多得的內功修煉秘籍。這不是一本單純的“技術”書籍,沒有系統地講解Web前端開發的基礎知識,它更專注於“技巧”,探索如何為“技術”提供最佳“技巧”。
本書包含了大量的開發思想和原則,都是作者在長期開發實踐中積累下來的經驗和心得,不同水平的Web前端開發者都會從中獲得啟發。尤其是對於那些中初級水平的讀者而言,本書是一本不可多得的內功修煉秘籍。
作者簡介
曹劉陽,網名阿當,資深web前端開發工程師,先後就職於中國雅虎和淘寶,現就職於新浪,一直從事Web前端開發工作,實戰經驗非常豐富,在通過提高代碼 質量來增強可維護性方面頗有心得。精通HTML、CSS、JavaScript等前端開發技術,對ActionScript、Flex、PHP、RoR等 Web開發技術也有較深入的研究。致力于敏捷開發實踐,喜歡讀書,閱讀過大量技術書籍;擅於總結歸納,能將各種技術融會貫通。
目錄
推薦序
讚譽
前言
致謝
第1章 從網站重構說起
1.1 糟糕的頁面實現,頭疼的維護工作
1.2 Web標準—結構、樣式和行為的分離
1.3 前端的現狀
1.4 打造高品質的前端代碼,提高代碼的可維護性—精簡、重用、有序
第2章 團隊合作
2.1 揭秘前端開發工程師
2.2 欲精一行,必先通十行
2.3 增加代碼可讀性—注釋
2.4 提高重用性—公共組件和私有組件的維護
2.5 冗餘和精簡的矛盾—選擇集中還是選擇分散
2.6 磨刀不誤砍柴工—前期的構思很重要
2.7 制訂規範
2.8 團隊合作的最大難度不是技術,是人
第3章 高質量的HTML
3.1 標籤的語義
3.2 為什麼要使用語義化標籤
3.3 如何確定你的標籤是否語義良好
3.4 常見模組你真的很了解嗎
3.4.1 標題和內容
3.4.2 表單
3.4.3 表格
3.4.4 語義化標籤應注意的一些其他問題3
第4章 高質量的CSS4
4.1 怪異模式和DTD
4.2 如何組織CSS
4.3 推薦的base.css
4.4 模組化CSS—在CSS中引入面向對象編程思想
4.4.1 如何劃分模組—單一職責
4.4.2 CSS的命名—命名空間的概念
4.4.3 掛多個class還是新建class —多用組合,少用繼承
4.4.4 如何處理上下margin
4.5 低權重原則—避免濫用子選擇器
4.6 css sprite
4.7 CSS 的常見問題
4.7.1 CSS的編碼風格
4.7.2 id和class
4.7.3 css hack
4.7.4 解決超連結訪問後hover樣式不出現的問題
4.7.5 hasLayout4
4.7.6 塊級元素和行內元素的區別
4.7.7 display:inline-block 和 hasLayout7
4.7.8 relative、absolute和float3
4.7.9 居中4
4.7.10 格線布局
4.7.11 z-index的相關問題以及Flash和IE 6下的select元素
4.7.12 插入png圖片
4.7.13 多版本IE並存方案—CSS的調試利器IETester
第5章 高質量的JavaScript
5.1 養成良好的編程習慣
5.1.1 團隊合作—如何避免JS衝突
5.1.2 給程式一個統一的入口—window.onload和DOMReady
5.1.3 CSS放在頁頭,JavaScript放在頁尾
5.1.4 引入編譯的概念—檔案壓縮
5.2 JavaScript的分層概念和JavaScript庫
5.2.1 JavaScript如何分層
5.2.2 base層3
5.2.3 common層
5.2.4 page層4
5.2.5 JavaScript庫
5.3 編程實用技巧7
5.3.1 彈性7
5.3.2 getElementById、getElementsByTagName和getElements-ByClassName3
5.3.3 可復用性
5.3.4 避免產生副作用9
5.3.5 通過傳參實現定製3
5.3.6 控制this關鍵字的指向7
5.3.7 預留回調接口
5.3.8 編程中的DRY規則
5.3.9 用hash對象傳參
5.4 面向對象編程
5.4.1 面向過程編程和面向對象編程
5.4.2 JavaScript的面向對象編程
5.4.3 用面向對象方式重寫代碼
5.5 其他問題
5.5.1 prototype和內置類
5.5.2 標籤的自定義屬性
5.5.3 標籤的內聯事件和event對象
5.5.4 利用事件冒泡機制
5.5.5 改變DOM樣式的三種方式
附錄A 寫在規則前面的話
附錄B 命名規則
附錄C 分工安排
附錄D 注釋規則
附錄E HTML規範
附錄F CSS規範
附錄G JavaScript規範