일상에서 멍때리기

ruby on rails 폴더 구조 본문

프로그래밍/개발이야기

ruby on rails 폴더 구조

로 얄 2014. 4. 14. 23:29
반응형

디렉터리의 용도에 대하여 알아보겠습다.

app
이 디렉토리는 애플리케이션 컴포넌트를 담고 있다. 즉 모델. 뷰, 컴트롤러에 해당하는 각각의 디렉토리가 존재한다.

components
이 디렉토리는 모델, 뷰, 그리고 컨트롤러를 각각 담당하고 있는 작은 애플리케이션들이 컴포넌트화되어 저장되어 있다.

config
이 디렉토리는 레일즈 애플리케이션에 대한 아주 작은 양의 설정 코드들을 담고 있다. 이 설정 코드에는 데이터베이스 설정(database.yml), 레일즈 설정(environment.rb), 웹 라이팅 설정(routers.rb) 등이 포함된다. 또한, environments 디렉토리에 저장된 파일들을 이용하여 테스트, 개발, 서비스(배포)에 관한 세가지 레일즈 환경 설정을 할 수 있다.

db 
통상적인 레일즈 애플리케이션에서는 관계형 데이터베이스를 액세스하는 모델 객체를 사용한다. 이 디렉토리는 관계형 데이터베이스를 관리할 수 있는 스크립트들을 만들고 저장하는 곳이다.

doc
루비는 RubyDoc이라는 프레임워크가 있는데, 이것은 프로그래머가 작성한 코드를 자동적으로 문서화시켜주는 툴이다. 코드에 주석을 달아줌으로써 더 자세한 RubyDoc 문서를 만들 수 있다. 이 디렉토리는 RubyDoc으로 만든 레일즈 및 애플리케이션에 관한 모든 문서들을 저장하는 곳이다.

lib 
외부 라이브러리를 제외한 모든 라이브러리들은 모두 이 디렉토리에 저장한다.

log 
에러 로그는 이곳에 생성된다. 레일즈는 여러 가지 에러 로그를 관리하는 스크립트를 생성해준다. 또한 서버 자체에 대한 로그(server.log)와 레일즈 환경에 따른 로그(development.test.log production.log)들도 따로 나누어서 생성한다.

public 
웹 서버의 public 디렉토리처럼 자바스크립트(public/javascript) 이미지(public/images), 스타일시트(public/stylesheet), HTML 파일(public) 등과 같은 변하지 않는 정적 웹 파일들을 넣어두는 디렉토리이다. 

script
레일즈 애플리케이션에서 쓰이는 다양한 툴과 관련된 스크립트들을 담고 있다. 예를 들어 코드를 생성(generate)할 수도 있고, 웹 서버를 시작(server)할 수도 있다. 이 책에서 다양한 스크립트의 사용법을 배우게 될 것이다.

test
테스트에 관련된 코드는 모두 이 디레토리에 둔다.

tmp
레일즈가 내부적으로 중간 처리 과정에서 사용하는 임시 파일들을 저장하는 디렉토리이다.

vendor 
보안 라이브러리나 데이터베이스 유틸리티처럼 레일즈에서 기본적으로 배포하지 않고 서드파트 벤더들이 제공하는 외부라이브러리들을 저장하는 곳이다. 

출처 : Ruby on Rails(초고속 웹 개발의 시작) <도서> 

반응형
Comments