코드이그나이터에 객체지향을 도입하기 위해 추가한 것
- Service Layers(비즈니스 로직을 처리할 부분)
- DTO (데이터 전달을 위한 객체)
- Entity (테이블과 매핑되는 객체)
- VO (DTO와 Entity만 사용하고 추후에 필요시 도입)
- DAO (데이터베이스에 접근하는 클래스)
- Domain (도메인 객체)
변경된 app 디렉토리 구조
/app
/Config 구성 파일 저장
/Controllers 프로그램 흐름을 결정하는 컨트롤러
/Database 데이터베이스 마이그레이션 및 시드(seed) 파일 저장
/Filters 컨트롤러 전후에 실행할 수 있는 필터 클래스 저장
/Helpers 독립형 함수 모음(Helper) 저장
/Language 다국어 지원을 위한 언어 파일 저장
/Libraries 카테고리에 포함되지 않는 유용한 클래스 모음
/Models 데이터베이스와 함께 작동하는 모델 저장 Repositories로 대체
/Services 비즈니스 로직 처리 레이어
/Repositories 데이터베이스와 함께 작동하는 모델 저장
/Entities 도메인 객체 모음
/DTO 데이터 전달 객체들 모음
/Mappers Entity→DTO, DTO->Entity 변환 해주는 객체들 모음
/ThirdParty 어플리케이션에서 사용할 수 있는 타사 라이브러리
/Views 클라이언트에 표시되는 HTML로 구성된 뷰 (필요하지 않을 것 같음)
반응형