XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

49
내가 아는 Laravel Framework소개합니다. 안정수 @findstar

Transcript of XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

Page 1: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

내가 아는 Laravel Framework를 소개합니다.

안정수@findstar

Page 2: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

발표자 소개

안정수

Xpressengine 개발PHP, Java, Objective-c, react.js

@findstar

Page 3: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

3

Page 4: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

그동안 뭘 했나요?

놀고 먹진 않았습니다(!)

Page 5: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

XE3 개발

약 1년

9명의 인원

약 600개의 파일

약 70000 코드 라인

Page 6: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

Tech Research

Page 7: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

Redesign

Redesign of Everything

처음에서 부터

다시 고민해서

만들었습니다!

Page 8: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

Coding with Coffee

CodingCodingCodingCodingCodingCodingCodingCoding

Page 9: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

새롭게 태어난………….

다시

만들었습니다!

Page 10: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

Self Comparison

XE1

약 8만 라인 약 7만 라인

XE3

Page 11: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

More Comparison

XE3

30,000 30,000 150,000 70,000

Page 12: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

오늘 공개

xpressengine.io

3.0.0-dev1

Page 13: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

그간의 나날들…

삽. 질.

Page 14: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

Objects

1. 플러그인을 쉽게 만들 수 있게!

2. 유연한 개발을 지원하자!

3. 견고한 구조를 가지자!

Page 15: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

플러그인을 쉽게 만들 수 있게!

1. Docs

2. Code Generation

3. ScreenCast

Page 16: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

1. Docs

Easy Plugin Develop -1

2. Code Generation

3. ScreenCast

지속적으로 문서 업데이트!

Page 17: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

1. Docs

2. Code Generation

3. ScreenCast

지속적으로 문서 업데이트!

Easy Plugin Develop -2

플러그인, 테마 생성

Page 18: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

1. Docs

2. Code Generation

3. ScreenCast

Easy Plugin Develop -3

플러그인, 테마 생성 자동화

지속적으로 문서 업데이트!

동영상 강좌 제공

Page 19: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

유연한 개발을 지원하자!

1. Plugin Structure

2. Hooking Point

3. Composer

Page 20: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

From XE1 To XE3

XE1

모듈

스킨

레이아웃

위젯

위젯 스타일

에디터 컴퍼넌트

애드온

XE3

플러그인

Page 21: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

Plugin

플러그인

모듈 스킨 위젯 UIObject 테마

Dynamic Field Interception

Page 22: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

Hooking Point

약 350여개의 Hooking Point

Page 23: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

Composer

1. 바퀴를 재발명 하지 말자

2. No more ‘Include hell’

3. PSR

Page 24: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

견고한 구조를 가지자!

1. Laravel

2. Packages

3. Tested Structure

Page 25: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

Build on Top of Laravel

라라벨의 잘 정리된 코드

설계 기반으로 구성

Page 28: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

Menu Category

Register

Tag Storage Skin Routing

Settings Capcha

Http

Counter

Media Member

Database Document

KeygenRegister

Permission

Config

Plugin

InterceptionTemporary DynamicField

Seo

SupportSite

Presenter

Theme

ToggleMenu Translation Trash UIObject

Widget

SSH

URL Redis

Event

DB

Crypt

Cookie

Session

Cache

Schema

ViewQueue

Auth

Mail

Log

File

Panigator

Input

Hash

Validator Form

HTML Route

Lang

Request Response Redirect

Packages

Module

총 34개의 Core 패키지 지원

27개의 Laravel 패키지 사용 가능

Page 29: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

Tested Structure

Test 된 코드

76% Code Coverage

Page 30: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

This is XE3

일단 한번 빠져 보겠습니다.

Page 31: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

Install 시연

http://xpressengine.io/docs/3.0/install

Page 32: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

Requirement

- php 5.5.9 이상

- OpenSSL PHP Extension

- PDO PHP Extension

- Mbstring PHP Extension

- Tokenizer PHP Extension

Page 33: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

XpressEngine 3.0.0-dev1

Page 34: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

이것만은 알고 갑시다 1

게시판 생성은 - 메뉴에서 부터

Page 35: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

이것만은 알고 갑시다 1

게시판 생성은 - 메뉴에서 부터

메뉴 추가

ex) 메인 메뉴, 하단 메뉴, 사이드 메뉴…

Page 36: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

이것만은 알고 갑시다 1

게시판 생성은 - 메뉴에서 부터

게시판 추가페이지 추가..

Page 37: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

이것만은 알고 갑시다 1

게시판 생성은 - 메뉴에서 부터

홈 으로 설정

Page 38: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

이것만은 알고 갑시다 2

플러그인 - 다양한 요소를 포함합니다.

Page 39: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

이것만은 알고 갑시다 2- case1

플러그인 - Case 1

테마가 3개

플러그인 이름

Page 40: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

이것만은 알고 갑시다 2- case2

플러그인 - Case 2

UI 출력 Object 1개

플러그인 이름

모듈 1개

관리자 스킨 1개

사용자 스킨 1개

Page 41: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

Open Seminar

2015.12.12 XE3 오픈 세미나 진행

Page 42: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

ScreenCast

공식 문서와 더불어 영상 자료 준비중..

Page 43: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

packgist.xpressengine.io

내년 초에 오픈합니다.

Page 44: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

Release Plan

NOW : dev 1

NEXT : dev 2 ~ 3

2016.01 : RC1 ~

2016 상반기 : 3.0.0

Page 45: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

할일이 태산

Install - 인스톨 가능 3.0.0-dev1

Demo - 체험하기 가능

Page 46: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

2016년.

PHP7 출시

변화하는 PHP 환경.

Page 47: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

Runing with US

Page 48: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

Q & A

살살 부탁드립니다 ^^

Page 49: XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기

감사합니다

감사합니다.

안정수@findstar