通常常見的Web頁面的結構會由3部分組成:javascript
起先,最簡單的一個web頁面開始,就是一個html,而後css和javascript都是直接寫在html,
這時的頁面組成:css
而後,css和javascript開始增多,就把css和javascript分紅單獨的文件,經過link標籤和script引入html
最後,html,css,javascript愈來愈多,愈來愈複雜,尤爲是在多人開發的狀況下,這簡直是噩夢。前端
這個時候常作的事情就是按功能,按模塊劃分,剝離出公共的模板、樣式、javascript庫,java
這個時候一個Web頁面的組成成分就會是這樣:react
圍繞的最後的情形,各個開發者則根據本身的方法來構建本身的工程
或者直接依賴現有的工具,如yeaomanjquery
吐槽對象爲一個用yeoman構建的工程,基於compass和requriejs,jqueryweb
竟然是全部的頁面都是使用同一個css文件,構建工具竟然是把工程下全部的scss文件都編譯至一個文件,typescript
@import 'style1'; @import 'style2'; @import 'style3'; ...(如下省略一串)
而後全部的模板都引用這個文件,這致使後端
使用requirejs加載模塊,那麼詭異的地方在於,竟然是全部的第一級的頁面都引入了main.js,在main.js內部判斷頁面的類型,再加載相應的模塊。
其次是各類jquery插件,jquery的插件一般都是掛在$對象下,因此當你想要使用某個插件,只要引入jquery和該插件的js。
那麼在這裏jquery插件是如何使用的呢?竟然是一次性所有加載進來
//libs.js define(['jquery','addOne1','addOne2',...(省略一長串)],function($){ return $ })
在程序初始化時,工程下的全部jquery插件都會被初始化。
而後到時候須要使用插件時,雖然只要引入一個libs.js便可,可是很明顯很是多很是多的冗餘。
剩餘其它就懶得吐槽了,主要是針對其中各類冗餘的代碼,雖然問題不大,尤爲是在如今的電腦性能下,多個幾百KB基本不影響使用,但喔對於代碼的大量冗餘就是不爽。 做爲一個前端的小菜,我一直認爲程序猿,或說是工程師,使用各類的工具,應該是不斷爲了爲了追求更快,更輕,更簡潔的目標而努力的,不斷的向其靠近,這樣才能更快的成長起來。