CodeIgniter의 기본 폴더 구조는 프레임워크의 주요 구성 요소와 역할을 명확히 구분하여 유지 보수와 개발을 쉽게 할 수 있게 해줍니다. 각 폴더의 주요 기능을 설명드리겠습니다.
CodeIgniter 폴더 구조
일반적인 CodeIgniter 3의 폴더 구조는 다음과 같습니다:
/application
/system
/user_guide
/index.php
/.htaccess
1. /application
application 폴더는 CodeIgniter 애플리케이션의 주요 소스 코드를 저장하는 폴더입니다. 여기에는 컨트롤러, 모델, 뷰, 구성 파일 등이 포함됩니다. 세부 폴더 설명은 다음과 같습니다.
- /config: 애플리케이션 설정 파일들이 위치하는 폴더입니다. config.php, database.php 등 주요 설정 파일이 여기에 있으며, 라우팅 설정, 자동 로딩 설정 등이 포함됩니다.
- /controllers: 애플리케이션의 모든 컨트롤러 파일들이 위치하는 폴더입니다. 컨트롤러는 사용자의 요청을 받아 처리하며, 모델과 뷰를 연결하는 역할을 합니다.
- /models: 애플리케이션의 모든 모델 파일들이 위치하는 폴더입니다. 모델은 데이터베이스와의 상호작용을 담당하며, 데이터를 가져오거나 저장하는 기능을 제공합니다.
- /views: 애플리케이션의 뷰 파일들이 위치하는 폴더입니다. 뷰는 사용자에게 보여줄 화면을 구성하는 파일로, HTML 및 PHP가 포함되어 데이터를 시각화합니다.
- /helpers: 사용자 정의 헬퍼 함수 파일을 저장하는 폴더입니다. 자주 사용되는 기능이나 간단한 유틸리티 함수를 정의할 수 있습니다.
- /libraries: 사용자 정의 라이브러리를 저장하는 폴더입니다. CodeIgniter의 기본 라이브러리 외에 추가 기능이 필요할 경우 여기서 정의할 수 있습니다.
- /language: 다국어 지원을 위한 언어 파일들이 위치하는 폴더입니다. 다국어로 애플리케이션을 개발할 때, 각 언어별로 메시지 파일을 이곳에 저장합니다.
- /core: CodeIgniter의 기본 코어 기능을 확장할 때 사용하는 폴더입니다. 프레임워크 자체의 코어 기능을 변경하거나 커스터마이징할 때 사용됩니다.
- /hooks: 애플리케이션의 특정 이벤트나 시점에 실행되는 후킹 파일을 저장하는 폴더입니다. 후킹 기능을 통해 특정 지점에서 사용자 정의 작업을 수행할 수 있습니다.
2. /system
system 폴더는 CodeIgniter 프레임워크의 핵심 파일들이 위치하는 폴더입니다. 이 폴더에는 CodeIgniter의 내부 동작을 관리하는 라이브러리, 헬퍼, 코어 파일들이 포함됩니다. 애플리케이션 개발자는 일반적으로 이 폴더를 수정하지 않으며, 프레임워크 업그레이드를 쉽게 하기 위해 이 폴더를 그대로 유지합니다.
- /core: CodeIgniter의 핵심 코어 클래스들이 위치한 폴더입니다. 프레임워크의 기본 동작을 정의하며, CI_Controller, CI_Model 등의 클래스가 포함되어 있습니다.
- /database: 데이터베이스 드라이버와 데이터베이스 관련 기능이 포함된 폴더입니다. CodeIgniter의 데이터베이스 연동 및 쿼리 빌더가 이곳에 위치합니다.
- /helpers: 기본 제공되는 헬퍼 함수들이 위치한 폴더입니다. url_helper, form_helper 등 자주 사용되는 유틸리티 함수들이 정의되어 있습니다.
- /libraries: CodeIgniter에서 제공하는 다양한 라이브러리가 위치한 폴더입니다. 세션 관리, 이메일 전송, 폼 검증 등의 기능을 위한 라이브러리가 포함됩니다.
3. /user_guide
user_guide 폴더는 CodeIgniter의 사용 설명서가 포함된 폴더입니다. 일반적으로 HTML 형식으로 제공되며, CodeIgniter 프레임워크의 기능과 사용법을 설명하는 파일들이 포함됩니다.
4. /index.php
index.php 파일은 CodeIgniter 애플리케이션의 시작점으로, 모든 요청은 이 파일로부터 시작됩니다. CodeIgniter의 초기 설정을 로드하고 애플리케이션을 실행하는 역할을 합니다.
5. /.htaccess
.htaccess 파일은 서버 설정을 제어하는 파일로, URL에서 index.php를 제거하거나 특정 보안 설정을 적용하는 데 사용됩니다. CodeIgniter에서는 URL을 간소화하기 위해 주로 사용됩니다.
이 구조는 CodeIgniter가 MVC 패턴을 효과적으로 유지하면서도 빠르고 가벼운 웹 애플리케이션을 개발할 수 있도록 지원합니다.
'Codeigniter' 카테고리의 다른 글
Codeigniter 의 작동원리 (1) | 2024.11.13 |
---|