ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [CodeIgniter] 1. CodeIgniter 소개
    Web/CodeIgniter 2015. 7. 17. 10:31

    Chapter 1. CodeIgniter 소개

     

     CodeIgniter는 PHP로 웹 사이트를 구축하고자 하는 사람들을 위한 개발 프레임워크(Framework)입니다. CodeIgniter는 일반적인 방식으로 코딩하는 PHP 개발자에게 풍부한 라이브러리, 직관적 인터페이스, 쉬운 로직을 제공함으로써 개발 속도를 높여 줍니다. 불필요한 코딩을 최소화하여 비지니스 로직에만 집중하게 해줍니다.



     

     1.1 CodeIgniter의 특징

      

      - 가벼움(Lightness)

       : CodeIgniter는 상당히 적은 리소스만 사용하여 상당히 가볍습니다.  


      - 최소한의 노력으로 사용할 수 있고 설정이 거의 필요 없습니다.

       : APM이 설치된 환경에 CodeIgniter 소스를 복사하는 것만으로도 'Welcome to CodeIgniter' 페이지를 볼 수 있습니다.


      - 코딩 규칙에 제한이 없고 동적인 작동과 느슨한 결합 구조로 되어 있습니다.

       : 어떤 프레임워크는 MVC 모델에 해당하는 파일이 모두 있어야 동작합니다. CodeIgniter는 컨트롤러 하나만으로도 동작합니다. 개발자에게 충분한 자유를 주어 마음대로 프레임워크를 활용하게 해줍니다.


      - 손쉽게 확장할 수 있습니다.

       : 나만의 라이브러리나 공개된 PHP 클래스를 CodeIgniter 내부에서 손쉽게 사용할 수 있고, CodeIgniter의 시스템 클래스인 COre도 수정이 아닌 확장하여 사용할 수 있습니다.



     Tip !   CodeIgniter 업그레이드를 대비하여 시스템 Core는 수정하지 않는 것이 좋습니다. 



      - 쉽게 작성된 한글화된 문서와 커뮤니티

       : 한국어 문서와 질답, 소스, 강좌 등을 제공하는 한국사용자포럼(http://www.cikorea.net/)이 있습니다.


      - MVC 패턴, Clean URL, 자체 템플릿, 30여개의 라이브러리 및 20여 개의 헬퍼, 각종 보안툴, 후킹, 데이터베이스 캐시, 페이지 캐시, 프로파일링(성능 측정) 등을 지원 합니다.








     1.2 모델-뷰-컨트롤러 개발이란

      

      CodeIgniter는 모델-뷰-컨트롤러(MVC) 개발 패턴에 기반합니다. MVC는 프로그램의 로직을 표현 부분(View)에서 분리하는 소프트웨어 개발 방법론입니다. MVC 패턴이 적용되면 웹 페이지에 최소한의 PHP 소스 코드만 작성하게 됩니다.






       - 모델(model)은 데이터 구조를 표현합니다. 일반적으로 모델 클래스는 데이터를 추출, 입력, 갱신하는 등의 함수를 포함하게 됩니다.

       - 뷰(View)는 사용자에게 보여질 부분을 표현합니다. 일반적으로 뷰는 웹 페이지만을 의미하지만, CodeIgniter에서는 뷰가 헤더나 푸터처럼 웹 페이지의 조각일 수도 있습니다. 또한 RSS 페이지나 혹은 다른 형태의 페이지일 수도 있습니다.

       - 컨트롤러(Controller)는 일반적으로 모델과 뷰 사이에서 동작하며 비지니스 로직을 처리합니다.


      


      CodeIgniter는 모델없이 작동될 만큼 MVC를 매우 느슨하게 접근했습니다. 모델을 분리할 필요가 없거나 모델을 따로 분리했을 경우 더 복잡해진다면 컨트롤러와 뷰 파일만으로 프로그램을 만들 수 있습니다. 또는 컨트롤러만으로도 프로그램을 만들 수 있습니다.













    * 이 포스트는 서적 '만들면서 배우는 CodeIgniter 프레임워크'를 참고하여 작성하였습니다.

    댓글

Designed by Tistory.