Ruby on Rails-프레임 워크
프레임 워크는 대부분의 애플리케이션을 작성하는 프로그램, 프로그램 세트 및 / 또는 코드 라이브러리입니다. 프레임 워크를 사용하는 경우 원하는 특정 작업을 수행하는 응용 프로그램 부분을 작성해야합니다.
Rails 애플리케이션을 작성하고 구성 및 기타 관리 작업은 제외하고 세 가지 기본 작업을 수행해야합니다.
Describe and model your application's domain− 도메인은 응용 프로그램의 세계입니다. 도메인은 음악 상점, 대학, 데이트 서비스, 주소록 또는 하드웨어 인벤토리 일 수 있습니다. 그래서 여기서 여러분은 그 안에 무엇이 있고,이 우주에 어떤 존재가 존재하는지, 그리고 그 안에있는 항목들이 서로 어떻게 관련되어 있는지 알아 내야합니다. 이것은 엔티티와 그 관계를 유지하기 위해 데이터베이스 구조를 모델링하는 것과 같습니다.
Specify what can happen in this domain− 도메인 모델은 정적입니다. 동적으로 만들어야합니다. 주소록에 주소를 추가 할 수 있습니다. 악보는 음악 상점에서 구입할 수 있습니다. 사용자는 데이트 서비스에 로그인 할 수 있습니다. 학생들은 대학에 등록 할 수 있습니다. 도메인의 요소가 참여할 수있는 가능한 모든 시나리오 또는 작업을 식별해야합니다.
Choose and design the publicly available views of the domain−이 시점에서 웹 브라우저 용어로 생각할 수 있습니다. 도메인에 학생이 있고 학생들이 수업에 등록 할 수 있다고 결정하면 시작 페이지, 등록 페이지 및 확인 페이지 등을 구상 할 수 있습니다. 이러한 각 페이지 또는보기는 사용자에게 작업 방법을 보여줍니다. 특정 지점에 서십시오.
위의 세 가지 작업을 기반으로 Ruby on Rails는 MVC (Model / View / Controller) 프레임 워크를 다룹니다.
Ruby on Rails MVC 프레임 워크
그만큼 MOdel View C온 트롤러 원칙은 애플리케이션의 작업을 세 개의 분리되어 있지만 긴밀하게 협력하는 하위 시스템으로 나눕니다.
모델 (ActiveRecord)
개체와 데이터베이스 간의 관계를 유지하고 유효성 검사, 연결, 트랜잭션 등을 처리합니다.
이 서브 시스템은 관계형 데이터베이스의 테이블과 데이터베이스 레코드를 조작하는 Ruby 프로그램 코드 간의 인터페이스와 바인딩을 제공하는 ActiveRecord 라이브러리에서 구현됩니다. Ruby 메소드 이름은 데이터베이스 테이블의 필드 이름에서 자동으로 생성됩니다.
보기 (ActionView)
데이터를 표시하기로 한 컨트롤러의 결정에 의해 트리거되는 특정 형식의 데이터 표시입니다. JSP, ASP, PHP와 같은 스크립트 기반 템플릿 시스템이며 AJAX 기술과 매우 쉽게 통합됩니다.
이 서브 시스템은 데이터 프레젠테이션을위한 프레젠테이션 템플릿을 정의하기위한 Embedded Ruby (ERb) 기반 시스템 인 ActionView 라이브러리에서 구현됩니다. Rails 애플리케이션에 대한 모든 웹 연결은 뷰를 표시합니다.
컨트롤러 (ActionController)
한편으로는 특정 데이터에 대한 모델을 쿼리하고, 다른 한편으로는 해당 데이터를 특정 뷰의 요구에 맞는 형식으로 구성 (검색, 정렬, 메시징)하는 트래픽을 전달하는 애플리케이션 내의 기능입니다.
이 서브 시스템은 ActiveRecord (데이터베이스 인터페이스)와 ActionView (프레젠테이션 엔진) 사이에있는 데이터 브로커 인 ActionController에서 구현됩니다.
MVC 프레임 워크의 그림 표현
아래는 Ruby on Rails Framework의 그림 표현입니다.
MVC 프레임 워크의 디렉토리 표현
Linux에 대한 표준 기본 설치를 가정하면 다음과 같이 찾을 수 있습니다.
tp> cd /usr/local/lib/ruby/gems/2.2.0/gems
tp> ls
다음을 포함하지만 이에 국한되지 않는 하위 디렉토리가 표시됩니다.
- actionpack-x.y.z
- activerecord-x.y.z
- rails-x.y.z
Windows 설치를 통해 다음과 같이 찾을 수 있습니다.
tp>cd ruby\lib\ruby\gems\2.2.0\gems
ruby\lib\ruby\gems\2.2.0\gems\>dir
다음을 포함하지만 이에 국한되지 않는 하위 디렉토리가 표시됩니다.
ActionView와 ActionController는 ActionPack 아래에 함께 번들로 제공됩니다.
ActiveRecord는 SQL 데이터베이스에서 데이터를 조작하기위한 다양한 프로그래밍 기술과 단축키를 제공합니다. ActionController 및 ActionView는 해당 데이터를 조작하고 표시하는 기능을 제공합니다. Rails는이 모든 것을 하나로 묶습니다.