프레임워크


지니PHP는 PHP언어로 개발된 프레임워크 입니다. 프레임워크는 개발자들을 위한 플렛폼이라 할 수 있습니다.


코드 재사용


프레임워크는 서비스를 개발할 수 있는 코드의 집합체 입니다.

프레임워크는 이미 여러 완성된 코드들을 같이 제공하기 때문에 전문적인 PHP개발자가 아니더라도 품질 높은 서비스를 만들 수 있습니다.

하지만, 전문적인 서비스를 생성하고 운영을 하기 위해서는 PHP언어에 대한 정확한 학습이 필요합니다.
프레임웍을 원활하게 사용을 하기 위해서는 객체지향 코드와 프레임웍의 원리를 알고 있으면 수월합니다.


지니 코어


지니 프레임워크는 자체적은 동작 코어를 가지고 있습니다. 코어는 모든 코드들의 기본과 처리 흐름을 관리합니다.

지니는 MVC 패턴으로 제작되어 Controller 와 데이터 모델이 연동됩니다.

MVC는 최신 트랜드 개발패턴입니다. model /view /controller 패턴으로 객체지향적으로 코딩할수 있습니다.
지니PHP는 MVC 와 객체지행 코딩방식을 학습하는데 매우 유용합니다.

또한 처리된 데이터를 View로 전달화여 화면을 출력할 수 있습니다.


MVC 패턴


최신 개발 드랜드는 코드와 화면을 분리하여 개발을 할 수 있는 기술들을 사용합니다. 소프트웨어 공학적으로는 이를 디자인 패턴이라 합니다. 모던 스타일의 개발자라면 한번을 들어볼듯한 단어라 생각이 듭니다.

프레임웍과 관련된 여러 디자인 패턴들이 있습니다. 대표적으로 많이 적요하는 기술은 MVC 패턴입니다.
이는 모델(M) + 뷰(V) + 컨트롤러(C)를 구분 처리하는 방법입니다.
먼저 서비스에 고객이 접속을 하면 컨트롤러가 처리동작을 합니다.

이때, 필요한 데이터가 있으면 모델과 통신을 하고, 결과를 뷰로 전달하여 화면에 출력되게 됩니다. 지니PHP 또한 위와 같은 MVC 디자인 패턴을 적용하고 있습니다. 생각하시는 아이디어를 MVC 패턴 유형으로 작성하여 서비스를 만드실 수 있습니다.


컨트롤러


입력된 url요청은 부트스트랩 과정을 통하여 실제작인 로직처리를 하는 객체를 호출하게 됩니다.
이렇게 실제적인 동작을 처리하는 객체를 컨트롤러라고 합니다.



뷰는 화면을 출력하는 기능을 합니다. 뷰는 컨트롤러에 의해서 호출되며, html파일과 데이터를 경합하여 화면에 출력을 합니다.


모델


데이터를 처리하는 기능을 담당합니다. 모델은 데이터베이스와 연결이 됩니다.


지니 패키지


지니 프레임웍은 코어 이외에도 여러개의 자체 페키지들과 연동되어 동작을 하고 있습니다.
각각의 페키지는 필요에 따라 분리하여, 새로운 자신만의 코드로 만들어 사용을 하실 수도 있습니다.

주요기능

  • 코어시작
  • 설정
  • 부트스트랩
  • 라우터
  • HTTP
  • 컨트롤러
  • 템플릿
  • 테마

보다 자세한 부분은 세부적인 설명을 참고해 주시길 바랍니다.


라우팅


컨트롤러는 특정한 규칙의 url과 매핑되어 동작을 하게 됩니다.

하지만 이러한 동작을 처리하기 전에 사용자 지정된 url에 따라 처리해야 하는 작업들을 지정합니다.


부트스트랩


모든 웹페이지의 요청은 url과 디렉토리를 일치하여 웹서버에서 동작을 합니다. 이러한 물리적 연결방식의 구조는 패턴으로 동작하기 어렵습니다.

Public 폴더에는 .htaccess 파일을 통하여 reRwrite 기능을 사용합니다. 모든 웹 요청은 이 설정을 통하여 ./public/index.php 파일로 리다이렉션 됩니다. 입력된 url주소는 구분되어 클래스 및 매소드, 파라미터로 구분되어 전달됩니다. 이 작업은 코어로 동작하는 applucation.php에서 동작합니다.

이러한 처음 컨트롤러를 구동하는 단계를 부트스트랩 이라고 합니다.


페이지 처리


기존 mvc형태로 동작과 화면, 데이터를 같이 처리하는것 이외에 단순하게 화면만 출력하는 경우도 필요할 것입니다. 장적페이지를 가지고 있는 웹사이트의 경우 별도의 컨트롤러를 만들지 않고도 쉽게 페이지를 처리할 수 있는 장점이 있습니다.