在一個web應用程序,庫在這樣的目錄:JS庫和框架標準目錄
/lib
/library
/libraries
/lib中/庫/庫是事實上的標準。現在,
我們應該在哪裏找到JS庫? (例如jQuery)
我們應該在哪裏找到JS框架? (例如Backbone.js,Knockout.js,Ember.js,Angular.js)
在一個web應用程序,庫在這樣的目錄:JS庫和框架標準目錄
/lib
/library
/libraries
/lib中/庫/庫是事實上的標準。現在,
我們應該在哪裏找到JS庫? (例如jQuery)
我們應該在哪裏找到JS框架? (例如Backbone.js,Knockout.js,Ember.js,Angular.js)
這真的取決於你。
例如,在一個Django web應用程序中,將這些文件保存在您的設置文件指定的STATIC_FILES dir中是有意義的,因爲它們是由客戶端下載的,並且應該靜態地提供。
然後,您可能希望基於文件名或目錄名爲這些文件建立版本控制系統,以便您可以指示您的HTTP服務器設置正確的過期標題。
在C項目中,從/ lib存在一個根本區別,因爲這些文件是提供給客戶端的文件,應該能夠隨時緩存。
對於什麼是值得的,我把第三方庫和框架(我真的不需要區分它們)放在名爲/vendor
的目錄中。我更喜歡把它放在那裏,因爲它清楚地將我們編寫的庫(自然地在/lib
中)與未修改的供應商庫(a.k.a.依賴關係)分開。
需要考慮的一件事是很多庫(例如Bootstrap)不僅帶有JavaScript,還帶有CSS和圖像。沒有什麼比第三方庫更讓我惱火了,它想要把它的CSS放在我的根/css
,我的根目錄/img
等圖像中。我希望所有這些依賴項保持在一起。所以我的目錄結構看起來像這樣:
/
lib/
mylib.js
css/
mycss.css
img/
myimg.png
vendor/
jquery-1.10.0.min.js
bootstrap/
img/
bootstrapglphs.png
css/
bootstrapcss.css