XML形式的配置文件是Web開發中最常見的文件,如web.xml、applicationContext.xml、*.hbm.xml等等,這些文件在為應用程序提供強大的靈活性的同時也大大增加配置的復雜度。而Rails框架拋棄了這些配置文件,使用嚴格的約定,要求開發者將View、Controller、Model等各種類型文件放在自己專屬的文件夾下,從而大大降低開發的復雜度,也即其Convention Over Configuration思想。
下圖是一個典型的ROR應用程序結構:
下面介紹圖中的主要目錄:
app:
該目錄下存放了Rails應用程序的主要文件,其子目錄有models、controllers、views和helper等幾個,從名字上就可以看出它們分別存放應用程序中哪種類型的文件,helpers和views一樣都是用來存放視圖文件。Rails是一個典型的
MVC
框架,所以其子目錄也是按照MVC框架的結構劃分和命名,使用起來非常方便。
components:
該目錄下保存被應用程序中的model、controller和view使用的小組件。
config:
這個目錄用來存放Rails應用程序中為數不多的配置文件,主要有數據庫配置(database.yml)、Rails環境結構(environment.rb)以及web請求的處理路由(routes.rb)。另外還可以在environment子目錄中分別配置測試(test.rb)、開發(development.rb)和生產(production.rb)三種不同的環境。
db:
該目錄用來存放管理應用程序中的數據庫的腳本文件。
doc:
Rails應用程序的文檔目錄。Ruby有一個
RubyDoc
工具,可以根據代碼中的注釋自動生成文檔。
lib:
該目錄存放應用程序的類庫。如果類庫是第三方類庫,需要放在另外一個目錄vendor下。
log:
日志信息無論軟件的開發、測試還是運行階段都有著非常重要的作用。Rails應用程序的所有日志信息都被存放在該目錄下,主要的日志信息有針對服務器的獨立日志信息(server.log)以及針對三種不同的Rails環境的日志信息(test.log、development.log和production.log)。
public:
該目錄存放應用程序中的靜態文件,如圖片、JavaScript腳本、CSS樣式表文件和靜態的HTML文件,其中images、javascripts和styles三個子目錄分別存放圖片、.js和.css文件,靜態的html文件,可以直接存放在public下。
script:
這個目錄存放了一些腳本文件,這些腳本文件用來管理或者啟動Rails中各種類型的工具,例如生成代碼、啟動服務器等。
test:
該目錄存放Rails自動產生的或者自己創建的測試文件,其中fixtures、mocks、unit和functional分別對應不同類型的測試。
vendor:
該目錄存放第三方的類庫,如數據庫操作類庫。
tmp:
上圖中沒有出現該目錄,在運行過程中可能會出現。該目錄存放作為中間處理過程的臨時文件。
由于Rails應用程序是按照慣例或者說約定來存放文件,從而簡化開發的,所以我認為連了解這些目錄的作用,總是比較好的。不過剛開始接觸,還是有些目錄的不是很清楚,等慢慢深入了,再回過來補充吧。
Ruby On Rails學習筆記(2)——Convention over Configuration(ROR應用程序的目錄結構)
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
