1. 程式人生 > >前端經典語錄(持續更新)

前端經典語錄(持續更新)

1、關於CSS全域性選擇器的衝突,制定CSS命名規則
與其費盡心思告訴別人遵守某種規則,以規避某種痛苦,不如從工具層面就消滅這種痛苦。


2、元件化 !== 模組化
模組化只是在檔案層面上,對程式碼和資源的拆分;而元件化是在設計層面,對UI(使用者介面)的拆分。從UI拆分下來的每個包含模板(HTML)+樣式(CSS)+邏輯(JS)功能完備的結構單元,我們稱之為元件。


3、元件化之間的關係
元件之間的關係包含(邏輯)繼承、(樣式)擴充套件、(模板)巢狀和包含等,這些關係都可以歸為依賴。


4、前端自動化
任何簡單機械的重複勞動都應該讓機器去完成。


5、前端工程化除了模組化、元件化、規範化還有什麼?

持續整合、自動化構建、 自動化部署、 自動化測試。


6、前端工程化的本質?
使用軟體工程這套早已存在的體系去對前端專案進行管理。軟體工程化關注的是效能、穩定性、可用性、可維護性等方面,一切以這些為目標的工作都是"前端工程化"。至於模組化、元件化、XX 打包方案、制定自動化流程、制定開發規範,這些都是"術"。可能現在是這樣,過兩年又變了。並且每個專案自身特點不同,所有這些"術"都不應該成為衡量一個專案是否做了"前端工程化"的標準。


7、JavaScript實現類
JavaScript是函式式語言,函式可以實現類,類就是面向物件程式設計中最基本的概念


8、為什麼要進行函數語言程式設計?
函式程式設計正規化對書寫高質量和易於維護的程式碼都大有好處。純函式相對於非純函式來說,在可快取性、可移植性、可測試性以及平行計算方面都有著巨大的優勢。函式柯里化是實現純函式的一種方式,將低階函式轉化為高階的函式。


9、宣告式和命令式程式碼
函數語言程式設計的一個明顯的好處就是這種宣告式的程式碼,對於無副作用的純函式,我們完全可以不考慮函式內部是如何實現的,專注於編寫業務程式碼。優化程式碼時,目光只需要集中在這些穩定堅固的函式內部即可。相反,不純的不函式式的程式碼會產生副作用或者依賴外部系統環境,使用它們的時候總是要考慮這些不乾淨的副作用。在複雜的系統中,這對於程式設計師的心智來說是極大的負擔。


10、含有DOM物件的迴圈引用將導致大部分當前主流瀏覽器記憶體洩露
DOM元素(節點)也是物件, 所以我們可以直接擴充套件DOM元素的屬性,但是如果給DOM元素新增自定義的屬性和過多的資料可能會引起記憶體洩漏,所以應該要儘量避免這樣做。 因此更好的解決方法是使用一種低耦合的方式讓DOM和快取資料能夠聯絡起來。