2014-07-11 4 views
0

저는 기본적인 레일 어플리케이션을 만들 수있는 시점에 있으며 레일이 작동하는 방법에 대한 더 나은 개요를 찾고 있습니다.레일 프로젝트의 단순화는 무엇입니까

이것은 내가 시각화 한 것입니다. 이 올바른지?

  1. 레일 젬을 설치하십시오. 이것은 또한 레일 스크립트를 설치합니다.
  2. rails new ...은 프레임 워크 파일 구조를 만듭니다.
  3. rails 스크립트를 사용하면 명령 줄에서 파일 구조와 상호 작용할 수 있지만 실제로 레일 라이브러리 자체에는 아무 것도하지 않습니다.
  4. gem 파일의 "gem 'rails'"는 새로운 프로젝트에 전체 레일 라이브러리를 가져옵니다. 레일스 응용 프로그램에서 작업하면 레일스 젬을 약간 확장하여 (상대적으로 말하면) 사용자의 필요에 맞게
+0

새 프로젝트를 시작하거나 스캐 폴드 코드를 만들거나 데이터베이스를 마이그레이션하는 데 필요한 일부 명령 줄 도우미와 함께 제공되는 프레임 워크입니다. 아무것도 여기에서 상상하지 마라. 질문이 뭐야? – rubiii

답변

1

레일의 개요와 작동 원리에 대해서는 내 기사 What is Ruby on Rails?이 도움이 될 수 있습니다.

Rails는 Ruby 프로그래밍 언어를 확장 한 소프트웨어 라이브러리입니다. 운영 체제 명령 행 인터페이스를 사용하여 설치되는 패키지 라이브러리 (특히 RubyGem)입니다. 이 젬은 기본 레일스 프로젝트 (rails new ...)를 생성하는 생성기 (스크립트)를 포함한 여러 도구를 포함합니다. 기본 Rails 프로젝트는 일련의 규칙을 준수하는 파일 세트를 제공하므로 모든 Rails 애플리케이션은 동일한 아키텍처를 사용합니다.

레일즈는 웹 사이트 구축을위한 프레임 워크입니다. 따라서 Rails는 협업과 유지 보수를 쉽게하기위한 규칙을 수립합니다. 이러한 규칙은 Rails API (코드 작성을 제어하는 ​​애플리케이션 프로그래밍 인터페이스 또는 지시문)로 성문화되어 있습니다. Rails API는 온라인으로 문서화되며 책, 기사 및 블로그 게시물에 설명되어 있습니다. Rails를 배우는 것은 Rails 규칙과 API를 사용하는 법을 배우는 것을 의미합니다.

프로젝트 디렉토리에 rails new ...으로 생성 된 많은 파일은 Rails 젬에 숨겨진 상위 클래스로부터 상속되며 Rails API에 정의 된 동작을 제공합니다. 예를 들어 ActiveRecord에서 상속하는 모델을 만들 때 ActiveRecord API의 메서드를 사용하여 데이터베이스에 액세스 할 수 있습니다.

응용 프로그램 서버와 함께 Rails 응용 프로그램을 실행하면 Rails 프로젝트 디렉토리에 추가 한 사용자 정의 코드가 브라우저 요청에 응답하기 위해 Rails gem에 제공된 코드와 결합됩니다.

간략한 설명이 그리 멀지 않습니다. "레일 스크립트"는 없습니다. 개발 중에 사용되는 많은 생성기 (모델, 컨트롤러, 프로젝트 디렉토리 등을 생성하기 위해)가 있습니다. rails new ... 생성자 (스크립트)는 명령 행에서 프로젝트 디렉토리를 설정하지만 gem에서 제공하는 Rails 라이브러리는 수정하지 않습니다. Ruby 개발 환경에 Rails 젬을 설치할 때, 파일 시스템에서 생성 한 레일스 프로젝트에서 Rails 소프트웨어 라이브러리 (API)를 사용할 수 있습니다. 빌드 한 모든 Rails 프로젝트는 Rails gem에서 제공하는 코드를 사용하여 초기 프로젝트 파일을 만들고 프레임 워크의 전체 동작을 제공합니다. 새로운 프로젝트가 (많은 프로젝트에서 사용되는 기능을 추가하는 것을 의미하는) 레일스 젬을 "확장"한다고 말할 수는 없지만, 확실히 새로운 프로젝트는 레일스 젬을 통합하거나 "빌드"합니다.