オープンソースプロジェクト XpressEngineとは? コンテンツの生産と発行を支援するCMSです。
?

Shortcut

Prev前へ 書き込み

Next次へ 書き込み

Larger Font Smaller Font 上へ 下へ Go comment 印刷
XE3紹介

XE3의 소개-배경

by XEJapan posted Nov 22, 2015
?

Shortcut

Prev前へ 書き込み

Next次へ 書き込み

Larger Font Smaller Font 上へ 下へ Go comment 印刷

배경

XE1 에서 XE3으로의 변화

  • XE1 이 시작한 2007년 이래 XE 는 계속해서 사용자들의 요구사항과 변화하는 웹 개발 트렌드에 맞추어 변화하고 또 발전해 왔습니다. 근래에는 CMS 고유의 기능에 더해 보안 이슈에 대응하는 데 초점을 맞추어 계속해서 버전업을 지속해 나가고 있습니다.
  • 스마트폰의 등장으로 인해 웹사이트를 비롯한 웹서비스는 다양한 도전에 직면하게 되었습니다. 반응형 디자인과, 모바일 페이지 대응, UX라고 일컫는 컨텐츠를 사용자에게 전달하는 방식의 변화등 다양한 변화 앞에서 XE 또한 다양하게 노력해 왔습니다.
  • XE가 이러한 변화를 하는 동안 XE의 근본이 되는 php 환경 또한 변화되어 왔습니다. XE가 처음 세상에 나온 이후로 php는 네임스페이스, 트레이트, 제너레이터, 클로저등의 다양한 요소들을 추가해 왔고, 2012년 의존성 관리 도구인 composer 의 등장으로 인해서 보다 현대적인 php 개발방법에 대한 논의가 활발하게 진행되어 왔습니다. 최근의 PHP는 다양하고 폭넓은 애플리케이션, 방대한 라이브러리와 사용자층을 갖추고 현대적인 프로그래밍 기법을 제공하는 언어로 변화하고 있습니다.
  • 최근에는 라라벨 프레임워크와 같은 보다 생산적이고, 세련된 개발을 할 수 있게 도와주는 많은 툴들과 패키지들이 나오면서 php를 통한 웹 개발환경은 크게 변화하고 있습니다.
  • XE3는 그러한 환경에 발맞추기 위한 고민에서 부터 출발하여 새롭게 선보여 드리는 CMS 입니다.
  • 라라벨과 composer를 기반으로 하여 보다 생산적이고, 세련된 개발을 할 수 있는 다양한 기능들을 CMS로 구성하여 제공합니다.

모던 PHP - 현대적인 PHP 개발

  • php 는 프로그래밍 언어로써 많은 결함이 있다고 알려져 왔습니다. 제대로된 OOP를 구현하지 못한다는 의심으로 부터 잘못된 프랙탈이라고 하는 공격을 받아왔습니다. 하지만 그럼에도 불구하고 php는 전세계 서버 사이트 프로그래밍의 80%이상을 차지하고 있을 만큼 다양한 사용자를 가지고 있습니다. (http://w3techs.com/technologies/history_overview/programming_language/ms/y) 최근의 php는 보다 현대적인 개발 방법을 정립하고 보다 생산적이고 효율적인 개발을 지향하고 있습니다. 이러한 PHP 를 모던PHP 라고 지칭하며 이전의 개발방법과는 다른 모습을 구성하고 있습니다.

Composer 의 이해

  • 모던PHP에서 composer 는 기본적이고 필수적인 요소라고 할 수 있습니다. composer 는 php 를 개발하는데 있어서 패키지간의 의존성을 관리하는 의존성 관리자로, node.js 의 npm, ruby의 bundle과 같은 역할을 수행합니다. php를 개발하는데 있어서 다양한 패키지들을 설치하고 의존성을 관리하며 Autoload를 사용하는데 Composer가 꼭 필요하다고 할 수 있습니다. 모던 PHP 에서는 PSR 기반의 autoload 방법을 권장하고 있으므로 composer 는 모던PHP 개발을 하는데 기초적으로 이해하고 있어야 될 요소라고 할 수 있습니다.

PHP 버전

  • 현재 안정적인 PHP 의 버전은 5.6 입니다. (support php version)[http://php.net/supported-versions.php] php는 5 대에 이르러서(주요하게는 5.3 이후) 네임스페이스, 트레이트, 제너레이터, 클로저등의 다양한 언어적 기능들을 갖추고 있습니다. php 5.5 부터는 OPCache 가 내장되어 보다 빠른 성능을 보여주고 있으며 차기 버전인 PHP 7.0 에서는 하위 호환성을 지키면서도 보다 나은 성능을 보여주고 있습니다. php는 현재 5.6을 공식적으로 지원하고 있으며 5.5 버전은 보안패치만을 지원하고 있습니다. 따라서 현재 사용하는 php 버전이 5.5 미만을 사용하고 있다면 사용하는 php 버전을 더 높은 버전으로 업그레이드 하는것이 좋습니다.

Laravel Framework 도입

  • XE3 를 구성함에 있어서 새로운 웹 개발 환경과 사용자의 다양한 요구사항들에 대응하기 위해서 보다 생산적이고 범용적인 방법들이 논의되었습니다. 그 결과 모든것을 처음부터 새롭게 구성하기 보다는 잘 정립되어 있는 프레임워크를 도입하여 보다 안정적이고, 생산적으로 개발을 진행하는 것이 구조적인 안정성과 더불어 바퀴를 재발명하지 않고서도, CMS 자체의 기능에 집중할 수 있는 방법이라고 생각되었습니다. 라라벨 프레임워크는 그 고민의 결과로 도입된 PHP 프레임워크로 최근의 php 프레임워크중에서 가장 세련된 기능들을 제공하고 있으며, 활발한 커뮤니티를 통해서 손쉽게 정보를 확인할 수도 있었습니다.
  • XE3 는 Laravel 프레임워크의 핵심적인 기능들을 활용하여 CMS 를 구성하고 있으며 많은 부분들을 Laravel 프레임워크를 기반으로 구성되었습니다. Storage, Session, Cache 에서 부터 QueryBuilder, Routing, IoC Contailer에 이르는 핵심적인 기능들은 XE3 가 보다 더 Test 가 가능하고, 핵심적인 CMS 로직에 집중할 수 있도록 해주었습니다.

List of Articles
カテゴリ タイトル 日付 最終修正日
XE3 XpressEngine 매뉴얼 2015.11.22 2015.11.22
XE3紹介 XE3의 소개-배경 2015.11.22 2015.11.22
XE3紹介 XE3 소개 - 중요 개념 소개 2015.11.22 2015.11.22
Get Started インストールする 2015.11.22 2015.12.15
View要素 Presenter 2015.11.22 2015.11.22
View要素 FrontEnd 2015.11.22 2015.11.22
プラグイン 플러그인 2015.11.22 2015.11.22
プラグイン Plugin 2015.11.22 2015.11.22
プラグイン Register 2015.11.22 2015.11.22
コンポーネント 컴포넌트 2015.11.22 2015.11.22
コンポーネント Theme 2015.11.22 2015.11.22
コンポーネント Module 2015.11.22 2015.11.22
コンポーネント Skin 2015.11.22 2015.11.22
コンポーネント UIObject 2015.11.22 2015.11.22
コンポーネント Widget 2015.11.22 2015.11.22
パッケージ 패키지 2015.11.22 2015.11.22
パッケージ Captcha 2015.11.22 2015.11.22
パッケージ Category 2015.11.22 2015.11.22
パッケージ Comment 2015.11.22 2015.11.22
パッケージ Config 2015.11.22 2015.11.22
Board Pagination Prev 1 2 3 Next
/ 3