Erzsamatory Weblog


※ 외국 문서 번역 자료입니다.

원문: Fundamentals - Development Workflow
http://goo.gl/M2PR6Q


Yii Framework를 이용한 웹 개발


지금까지 Yii Framework의 기본 개념에 대해서 설명하면서, 저는 Yii Framework를 이용한 웹 어플리케이션의 개발 흐름에 대해서 잠깐 언급했었습니다. 이 글에서는 이 개발 흐름에 대해서 좀 더 자세하게 설명하고자 합니다. 이 글에서 소개하는 Yii Framework 웹 어플리케이션의 개발 흐름은 기본적인 어플리케이션 구조 분석과 같은 웹 개발에 있어서 꼭 필요한 분석 작업을 마쳤다는 것을 가정으로 합니다.

1. 본격적인 웹 개발에 앞서 기본 뼈대가 되는 디렉토리 구조를 생성합니다. [2014/01/13 1-4. 첫 Yii 어플리케이션 생성] 글에서 설명하고 있는 yiic 도구를 사용하면 매우 쉽게 기본 디렉토리 구조를 만들 수 있습니다.

2. 기본 디렉토리를 만들었다면 이제는 웹 어플리케이션을 설정하는 단계입니다. Yii Framework에서 웹 어플리케이션을 설정한다는 것은 어플리케이션 설정 파일을 수정하는 것을 말합니다. 이 단계에는 사용자 정의 컴포넌트를 작성하는 것 또한 포함됩니다.

3. 데이터베이스에 저장되어 있는 각각의 데이터를 관리하는 모델 클래스를 생성합니다. [2014/01/13 1-4. 첫 Yii 어플리케이션 생성] 글에서 설명하고 있는 gii 도구를 이용하면 각각의 데이터베이스 테이블의 데이터를 관리하는 액티브 레코드 클래스를 매우 쉽게 자동으로 만들 수 있습니다.

4. 그 다음으로는 사용자 요청을 관리하고 처리하는 컨트롤러 클래스를 만들어야 합니다. 사용자의 실제 요청에 따라 웹 어플리케이션이 어떻게 작동해야 하는가를 이 컨트롤러에서 정의하게 됩니다. 일반적으로는 각각의 모델에 맞는 컨트롤러는 미리 정해져 있습니다. 따라서 모델과 컨트롤러는 하나의 세트로 보는 것이 맞습니다. 앞서 언급했던 gii 도구를 이용하면 컨트롤러 역시 매우 쉽게 자동으로 만들 수 있습니다.

5. 사용자의 요청을 받은 후 실제로 유의미한 작업을 수행하는 액션 스크립트를 작성합니다. 액션 스크립트는 사용자에게 전달되어야 하는 결과 값을 만들어냅니다. 이러한 결과 값은 하나의 데이터로 가공이 되며, 이 데이터를 웹브라우저에 출력하는 뷰 스크립트 역시 이 단계에서 만들어져야 합니다. 뷰 스크립트는 액션 스크립트에서 만들어진 결과 데이터를 사용자에게 보여주는 역할을 수행합니다.

6. 컨트롤러 클래스에 액션 필터 설정을 추가합니다. 필터에 관한 자세한 설명은 [2014/02/05 2-7. 기본 개념: 컴포넌트] 글을 참고하시기 바랍니다.

7. 사용자에게 직접적으로 보여지는 테마를 작성합니다. 테마는 뷰 스크립트와는 별개로 처리되어야 하는 것으로, 외부에 실제로 보여지는 디자인을 의미합니다. 뷰는 단지 HTML 소스만을 작성하는 스크립트라고 보면 되고, 테마는 실질적으로 외부에 보여지는 디자인 스크립트라고 보면 됩니다. HTML, CSS, 자바스크립트 등 웹 디자인을 할 때 필요한 모든 요소들이 이 테마에 포함됩니다.

8. 만약, 개발하고 있는 웹 어플리케이션이 전 세계적으로 사용되어야 하는 것이라면, 번역된 메시지를 작성하는 과정을 반드시 거쳐야 합니다. 경고 메시지, 메뉴 이름 등 한글로 작성된 모든 요소들을 영어 또는 기타 외국어로 번역 하는 과정을 거쳐야 본인이 현재 개발하고 있는 웹 어플리케이션을 전 세계인들이 아무런 불편함 없이 사용할 수 있을 것입니다.

9. 웹 어플리케이션에 요청이 입력될 때마다 새로운 데이터를 만들어내는 것은 매우 비효율적입니다. 항상 같은 결과 값을 만들어내는 과정이라면 이 과정을 생략할 수 있는 기능을 활용하는 것이 좋습니다. Yii Framework에서는 캐싱 기능을 통하여 반복되는 요청 작업을 생략할 수 있습니다. 이 단계에서는 개발된 웹 어플리케이션을 테스트해보면서 캐싱할 수 있는 데이터나 뷰 스크립트를 찾아내어 캐싱 데이터에 입력합니다.

10. 마지막으로 웹 어플리케이션의 개발을 마무리하고, 추후에는 유지 및 보수를 합니다.

목차
1. 시작하기
     1-1. Yii란 무엇인가?
     1-2. 설치
     1-3. 아파치 웹서버와 Nginx 설정
     1-4. 첫 Yii 어플리케이션 생성

2. 기본 개념
     2-1. 모델-뷰-컨트롤러 (MVC)
     2-2. 엔트리 스크립트
     2-3. 어플리케이션
     2-4. 컨트롤러
     2-5. 모델
     2-6.
     2-7. 컴포넌트
     2-8. 모듈
     2-9. 경로 별칭과 네임스페이스
     2-10. 일반 규칙
     2-11. 개발 흐름 (Workflow) (현재 페이지)
     2-12. MVC 예제

3. 양식(Form) 사용 연습
     3-1. 개요
     3-2. 모델 생성
     3-3. 액션 생성
     3-4. 양식 생성
     3-5. 테이블 추출
     3-6. 양식 생성기 사용하기

4. 데이터베이스 사용 연습
     4-1. 개요
     4-2. DB 액세스 객체
     4-3. 쿼리 빌더
     4-4. 동적 레코드
     4-5. Relational Active Record
     4-6. 데이터베이스 변환

5. 캐싱
     5-1. 개요
     5-2. 데이터 캐시
     5-3. 부분 캐시
     5-4. 페이지 캐시
     5-5. 동적 컨텐츠

6. Yii 확장
     6-1. 개요
     6-2. 확장 사용하기
     6-3. 확장 생성하기
     6-4. 써드파티 라이브러리 사용하기

7. 테스트
     7-1. 개요
     7-2. Defining Fixtures
     7-3. Unit Testing
     7-4. Functional Testing

원문: http://www.yiiframework.com/doc/guide/
http://www.erzsamatory.net/trackback/139

건전한 댓글 문화를 만들어주시기 바랍니다 ^^
불건전한 댓글이 등록되는 경우 관리자의 임의적 판단으로 삭제될 수 있음을 미리 공지드립니다.

비밀글로 작성하기