SlideShare a Scribd company logo
거 XE 모듈 개발하기 좋은 날씨네 
게시판 하나는 만들 수 있게 해드릴게 
신승엽 
NHN Entertainment 
2014.11.08 Session 2-4 
XECon + PHPFest 2014
신승엽 @ NHN Entertainment 
•SocialXE 개발 (2011) 
•XE Core 개발 (~2013)
모듈 구상 
목표 XE의 기본 요소들을 활용하는 간단한 모듈을 제작 요구사항 Document, Comment 모듈 사용 사이트 메뉴 편집과 호환
나의 게시판 
목록 보기 
내용 보기 
글 쓰기 
댓글 쓰기 
사이트 메뉴 편집을 통해 추가/설정
모듈 폴더 생성 
XE ROOT/modules/myboard 폴더 생성
info.xml 생성 
MODULE ROOT/conf/info.xml 파일 생성
http://me2.do/5nfH4nyf
module.xml 생성 
MODULE ROOT/conf/module.xml 파일 생성 
권한 관련 정보 
액션 실행 퍼미션 관련 정보 
모듈이 가진 액션 관련 정보 
http://me2.do/54gObkCW
module.xml 생성 
MODULE ROOT/myboard.class.php 파일 생성
XE의 모든 모듈 class 파일은 ModuleObject를 상속 받아야 함 
XE 초기 설치/ 
쉬운설치 시에 호출됨 
모듈 업데이트 여부를 
체크하기 위해 호출 됨 
http://me2.do/GPf5odjx
모듈 업데이트 시 
호출 됨 
모듈 삭제 시 호출 됨 
모듈이 쉬운 설치에 올라가 
있을 때만 삭제가 가능 
http://me2.do/GPf5odjx
메뉴 타입으로 등록 
MODULE ROOT/myboard.class.php 파일 수정
트리거 발생 시 실행할 모듈 이름 
http://me2.do/5Mfg7fNd
http://me2.do/5Mfg7fNd 
모듈과 관련된 조작 메소드를 가지고 있음 
트리거를 등록하는 메소드 
모듈 설치 시...
http://me2.do/5Mfg7fNd 
트리거를 정보를 받는 메소드 
if (트리거가 없다) { 업데이트가 필요하다 } 
모듈 업데이트 체크 시...
http://me2.do/5Mfg7fNd 
모듈 업데이트 시...
if (트리거가 없다) { 트리거 등록 } 
http://me2.do/5Mfg7fNd 
end of foreach
http://me2.do/5Mfg7fNd 
트리거를 제거하는 메소드 
모듈 업데이트 삭제 시...
메뉴 타입으로 등록 
MODULE ROOT/myboard.model.php 파일 생성
http://me2.do/xuYhaz0i
클래스 이름 규칙 
파일명 
클래스명 
상위 클래스 
myboard.class.php 
myboard 
ModuleObject 
myboard.admin.controller.php 
myboardAdminController 
myboard 
myboard.admin.model.php 
myboardAdminModel 
myboard.admin.view.php 
myboardAdminView 
myboard.controller.php 
myboardController 
myboard.model.php 
myboardModel 
myboard.view.php 
myboardView
http://me2.do/xuYhaz0i 
트리거 정보
http://me2.do/xuYhaz0i 
파라미터로 받은 배열에 모듈 이름을 추가
메뉴 타입으로 등록 
지금까지 잘 따라왔다면 관리자 페이지 접속 시 모듈 업데이트가 표시 됨
메뉴 타입으로 등록 
업데이트 후 사이트 메뉴 편집으로 접속한 후 메뉴 추가를 눌러보면 
'나의 게시판'이 추가된 것을 확인할 수 있음
권한 설정 만들기 
MODULE ROOT/conf/module.xml 파일 수정
http://me2.do/59pJ1jtr
http://me2.do/59pJ1jtr 
코드에서 사용할 이름 
기본 권한 설정 
- guest: 모든 사용자 
- member: 로그인 사용자 
- manager: 관리자 
권한 체크를 자동으로 해주진 않는다 
코드에서 직접 처리
권한 설정 만들기
간단 설정 만들기 
MODULE ROOT/conf/module.xml 파일 수정
Front에서 요청할 수 있는 
모듈의 특정 액션에 대한 정보 
true이면 간단 설정용으로 
사용한다는 의미이며 
응답은 설정을 위한 HTML 
http://me2.do/GOBAs7xo
액션에 사용할 '퍼미션' 
- 퍼미션은 '권한1'과는 다른 개념 
- 해당 액션의 최소한 '권한2' 
- 액션 실행 전 자동 체크 
퍼미션 적용할 액션 이름 
적용할 퍼미션 
- guest 
- member 
- manager 
http://me2.do/GOBAs7xo
액션 이름 규칙 
파일명 
접두어 
결과 
myboard.admin.controller.php 
procMyboardAdmin 
procMyboardAdminXxxx 
myboard.admin.model.php 
getMyboardAdmin 
getMyboardAdminXxxx 
myboard.admin.view.php 
dispMyboardAdmin 
dispMyboardAdminXxxx 
myboard.controller.php 
procMyboard 
procMyboardXxxx 
myboard.model.php 
getMyboard 
getMyboardXxxx 
myboard.view.php 
dispMyboard 
dispMyboardXxxx
간단 설정 만들기 
MODULE ROOT/myboard.admin.model.php 파일 생성
http://me2.do/5MfEonvo 
여기서 할일 
- 모듈 정보, 모듈 설정을 가져와서 
- 템플릿에서 사용할 수 있도록 세팅하고 
- 템플릿 컴파일한 결과를 반환
김예솔님의 생일을 축하드립니다. 1월 10일에 태어난 신승엽님! 생일을 진심으로 축하드립니다. 생일이신 회원님을 위한 혜택... 
홍경원님의 생일을 축하드립니다. 
8월 14일에 태어난 신승엽님! 생일을 진심으로 축하드립니다. 
생일이신 회원님을 위한 혜택... 
템플릿? 
출력 내용을 미리 준비해 두고 필요한 부분만 대치하여 사용 
메일 머지 기능과 유사 
[NAME]님의 생일을 축하드립니다. 
[DATE]에 태어난 [NAME]님! 생일을 진심으로 축하드립니다. 
생일이신 회원님을 위한 혜택... 
NAME 
DATE 
신승엽 
4월 23일 
홍경원 
8월 14일 
김예솔 
1월 10일 
신승엽님의 생일을 축하드립니다. 
4월 23일에 태어난 신승엽님! 생일을 진심으로 축하드립니다. 
생일이신 회원님을 위한 혜택... 
미리 준비된 내용 
Data 
결과 
머지
템플릿? 
미리 준비된 내용: 템플릿 Data: Context 변수 머지: 템플릿 컴파일 
템플릿 
Context 변수 
결과 
컴파일
http://me2.do/5MfEonvo 
여기서 할일 - 모듈 정보, 모듈 설정을 가져와서 - 템플릿에서 사용할 수 있도록 세팅하고 - 템플릿 컴파일한 결과를 반환 
모듈 번호 
상세 설정 URL
http://me2.do/5MfEonvo
http://me2.do/5MfEonvo 
모듈 번호 
상세 설정 URL 
여기서 할일 - 모듈 정보, 모듈 설정을 가져와서 - 템플릿에서 사용할 수 있도록 세팅하고 - 템플릿 컴파일한 결과를 반환 
모듈의 정보를 반환 
모듈의 설정을 반환
http://me2.do/5MfEonvo 
여기서 할일 
- 모듈 정보, 모듈 설정을 가져와서 
- 템플릿에서 사용할 수 있도록 세팅하고 
- 템플릿 컴파일한 결과를 반환 
템플릿 변수를 세팅하는 메소드 
변수 이름 
값
http://me2.do/5MfEonvo 
여기서 할일 
- 모듈 정보, 모듈 설정을 가져와서 
- 템플릿에서 사용할 수 있도록 세팅하고 
- 템플릿 컴파일한 결과를 반환 
템플릿을 다루기 위한 클래스 
특정 템플릿을 컴파일한 결과를 반환
간단 설정 만들기 
MODULE ROOT/tpl/simple_setup.html 파일 생성
http://me2.do/FOxkPBoJ
http://me2.do/FOxkPBoJ 
설정 저장할 모듈의 번호 
실행할 액션
http://me2.do/FOxkPBoJ 
{$varname}: 변수를 출력하는 템플릿 문법 
$lang: 언어 변수
간단 설정 만들기 
MODULE ROOT/lang/lang.xml 파일 생성
http://me2.do/FYvjt1Tl
http://me2.do/FYvjt1Tl 
언어 변수 
언어를 지정
간단 설정 만들기 
MODULE ROOT/myboard.admin.controller.php 파일 생성
http://me2.do/GZta9W7q 
여기서 할일 
- 정상적인 요청인지 확인한 후 
- 설정을 저장
http://me2.do/GZta9W7q
http://me2.do/GZta9W7q 
여기서 할일 
- 정상적인 요청인지 확인한 후 
- 설정을 저장 
요청 파라미터를 받는 메소드
http://me2.do/GZta9W7q 
여기서 할일 
- 정상적인 요청인지 확인한 후 
- 설정을 저장 
if (module_srl에 해당하는 모듈이 
myboard가 아니면) { 
잘못된 요청 
}
http://me2.do/GZta9W7q 
여기서 할일 - 정상적인 요청인지 확인한 후 - 설정을 저장 
개별 모듈에 대한 설정을 저장하는 메소드
간단 설정 만들기
XE Control Path 
Context 초기화 
실행 모듈 결정 
모듈 실행 
결과 출력 
요청 
응답
XE Control Path 
요청 
index.php?act=procMyboardAdminUpdateSimpleSetup
XE Control Path 
요청 
Context 초기화
XE Control Path 
요청 
Context 초기화 
실행 모듈 결정 
procMyboardAdminUpdateSimpleSetup 
XE: 내가 실행할 모듈은... 
Type은 Controller 
Module은 Myboard 
Admin 계열이군
액션 이름 규칙 
파일명 
접두어 
결과 
myboard.admin.controller.php 
procMyboardAdmin 
procMyboardAdminXxxx 
myboard.admin.model.php 
getMyboardAdmin 
getMyboardAdminXxxx 
myboard.admin.view.php 
dispMyboardAdmin 
dispMyboardAdminXxxx 
myboard.controller.php 
procMyboard 
procMyboardXxxx 
myboard.model.php 
getMyboard 
getMyboardXxxx 
myboard.view.php 
dispMyboard 
dispMyboardXxxx
클래스 이름 규칙 
파일명 
클래스명 
상위 클래스 
myboard.class.php 
myboard 
ModuleObject 
myboard.admin.controller.php 
myboardAdminController 
myboard 
myboard.admin.model.php 
myboardAdminModel 
myboard.admin.view.php 
myboardAdminView 
myboard.controller.php 
myboardController 
myboard.model.php 
myboardModel 
myboard.view.php 
myboardView
XE Control Path 
요청 
Context 초기화 
실행 모듈 결정 
XE: 내가 실행할 모듈은... 
myboard.admin.controller.php를 include하면 되고 필요한 클래스는 myboardAdminController구나!
XE Control Path 
요청 
Context 초기화 
실행 모듈 결정 
myboardAdminController의 
procMyboardAdminUpdateSimpleSetup 
메서드 실행 
모듈 실행
XE Control Path 
요청 
Context 초기화 
실행 모듈 결정 
모듈 실행 
결과 출력 
응답
글 쓰기 화면 만들기 
MODULE ROOT/conf/module.xml 파일 수정
해당 액션이 반드시 mid를 가지고 실행되어야 할 경우 false로 세팅 이 속성을 사용하지 않으면 보안 문제가 생길 수 있음 
http://me2.do/FecSNlje
글 쓰기 화면 만들기 
MODULE ROOT/myboard.view.php 파일 생성
http://me2.do/GdsHTOaw
여기서 할일 - 모듈 설정을 가져와서 - 템플릿에서 사용할 수 있도록 세팅하고 - 템플릿 파일을 세팅 
액션 실행 전 먼저 실행되는 메소드 
http://me2.do/GdsHTOaw
http://me2.do/GdsHTOaw
여기서 할일 
- 모듈 설정을 가져와서 
- 템플릿에서 사용할 수 있도록 세팅하고 
- 템플릿 파일을 세팅 
http://me2.do/GdsHTOaw
여기서 할일 
- 모듈 설정을 가져와서 
- 템플릿에서 사용할 수 있도록 세팅하고 
- 템플릿 파일을 세팅 
PC 스킨 경로로 
템플릿 경로 설정 
액션명에서 접두어만 제외하고 
템플릿 파일명으로 사용 
http://me2.do/GdsHTOaw
권한만을 체크하고 따로 하는 것은 없음 
권한(grant)는 코드에서 직접 체크! 
http://me2.do/GdsHTOaw
글 쓰기 화면 만들기 
MODULE ROOT/skins/default/skin.xml 파일 생성 
skins 폴더 아래 스킨 위치 
기본 스킨 폴더명은 무조건 default
글 쓰기 화면 만들기 
MODULE ROOT/skins/default/_head.html 파일 생성 
http://me2.do/5ZfB1VaH
글 쓰기 화면 만들기 
MODULE ROOT/skins/default/Write.html 파일 생성
http://me2.do/xKdaLajQ 
현재 위치에 다른 템플릿 삽입 
XE 템플릿에서만 사용되는 가상 태그 
cond 속성 
조건에 맞을 경우에만 태그가 표시 됨
글 쓰기 화면 만들기
글 쓰기 처리 만들기 
MODULE ROOT/conf/module.xml 파일 수정
http://me2.do/IGToqmv4
글 쓰기 처리 만들기 
MODULE ROOT/myboard.controller.php 파일 생성
여기서 할일 
- 권한 체크하고 
- 데이터를 준비한 후 
- document 모듈에 등록하고 
- 글보기 화면으로 이동 
http://me2.do/xLoLzp02
http://me2.do/xLoLzp02
여기서 할일 - 권한 체크하고 - 데이터를 준비한 후 - document 모듈에 등록하고 - 글보기 화면으로 이동 
http://me2.do/xLoLzp02
여기서 할일 
- 권한 체크하고 
- 데이터를 준비한 후 
- document 모듈에 등록하고 
- 글보기 화면으로 이동 
http://me2.do/xLoLzp02
여기서 할일 
- 권한 체크하고 
- 데이터를 준비한 후 
- document 모듈에 등록하고 
- 글보기 화면으로 이동 
http://me2.do/xLoLzp02
여기서 할일 
- 권한 체크하고 
- 데이터를 준비한 후 
- document 모듈에 등록하고 
- 글보기 화면으로 이동 
http://me2.do/xLoLzp02
글 보기 화면 만들기 
MODULE ROOT/conf/module.xml 파일 수정
true로 세팅하면 act 값이 없어도 해당 모듈 접속 시 해당 액션이 실행 됨 
http://me2.do/5xbzWMQU
글 보기 화면 만들기 
MODULE ROOT/myboard.view.php 파일 수정
http://me2.do/G97uVvrl
http://me2.do/xO6tyuuN 
여기서 할일 
- 권한 체크하고 
- document 모듈에서 글을 가져오고 
- 조회수를 증가시키고 
- 템플릿을 지정한다
http://me2.do/xO6tyuuN
http://me2.do/xO6tyuuN 
여기서 할일 
- 권한 체크하고 
- document 모듈에서 글을 가져오고 
- 조회수를 증가시키고 
- 템플릿을 지정한다
http://me2.do/xO6tyuuN 
여기서 할일 
- 권한 체크하고 
- document 모듈에서 글을 가져오고 
- 조회수를 증가시키고 
- 템플릿을 지정한다
http://me2.do/xO6tyuuN 
여기서 할일 
- 권한 체크하고 
- document 모듈에서 글을 가져오고 
- 조회수를 증가시키고 
- 템플릿을 지정한다
http://me2.do/xO6tyuuN 
여기서 할일 - 권한 체크하고 - document 모듈에서 글을 가져오고 - 조회수를 증가시키고 - 템플릿을 지정한다
글 보기 화면 만들기 
MODULE ROOT/skins/default/View.html 파일 생성
http://me2.do/5eEkr53g
글 보기 화면 만들기
글 보기 화면 만들기 
MODULE ROOT/myboard.view.php 파일 수정
http://me2.do/x4XqDrqn 
여기서 할일 - 권한 체크하고 - document 모듈에서 글 목록을 가져오고 - 템플릿을 지정한다
http://me2.do/x4XqDrqn
http://me2.do/x4XqDrqn 
여기서 할일 
- 권한 체크하고 
- document 모듈에서 글 목록을 가져오고 
- 템플릿을 지정한다
http://me2.do/x4XqDrqn 
여기서 할일 
- 권한 체크하고 
- document 모듈에서 글 목록을 가져오고 
- 템플릿을 지정한다
http://me2.do/x4XqDrqn 
여기서 할일 
- 권한 체크하고 
- document 모듈에서 글 목록을 가져오고 
- 템플릿을 지정한다
글 보기 화면 만들기 
MODULE ROOT/skins/default/List.html 파일 생성
http://me2.do/x4XqDrqn
http://me2.do/x4XqDrqn
글 보기 화면 만들기
못 다한 이야기... 
XE 모듈 개발 강좌 참고 
http://www.xpressengine.com/learn/22801598

More Related Content

What's hot

Spring cloud on kubernetes
Spring cloud on kubernetesSpring cloud on kubernetes
Spring cloud on kubernetes
SangSun Park
 
톰캣 운영 노하우
톰캣 운영 노하우톰캣 운영 노하우
톰캣 운영 노하우
jieunsys
 
CoreOS : 설치부터 컨테이너 배포까지
CoreOS : 설치부터 컨테이너 배포까지CoreOS : 설치부터 컨테이너 배포까지
CoreOS : 설치부터 컨테이너 배포까지
충섭 김
 
15 Lecture BIOL 1030-30 Gillette College
15 Lecture BIOL 1030-30 Gillette College15 Lecture BIOL 1030-30 Gillette College
15 Lecture BIOL 1030-30 Gillette College
deskam2
 
[오픈소스컨설팅]Ansible overview
[오픈소스컨설팅]Ansible overview[오픈소스컨설팅]Ansible overview
[오픈소스컨설팅]Ansible overview
Open Source Consulting
 
Spring mvc
Spring mvcSpring mvc
Spring mvc
Harshit Choudhary
 
2조 프로젝트 보고서 김동현
2조 프로젝트 보고서 김동현2조 프로젝트 보고서 김동현
2조 프로젝트 보고서 김동현
kdh24
 
Apache Tomcat ( 아파치 톰캣 ) 설치 가이드
Apache Tomcat ( 아파치 톰캣 ) 설치 가이드Apache Tomcat ( 아파치 톰캣 ) 설치 가이드
Apache Tomcat ( 아파치 톰캣 ) 설치 가이드
Opennaru, inc.
 
July OpenNTF Webinar - HCL Presents Keep, a new API for Domino
July OpenNTF Webinar - HCL Presents Keep, a new API for DominoJuly OpenNTF Webinar - HCL Presents Keep, a new API for Domino
July OpenNTF Webinar - HCL Presents Keep, a new API for Domino
Howard Greenberg
 
[2012 CodeEngn Conference 06] beist - Everyone has his or her own fuzzer
[2012 CodeEngn Conference 06] beist - Everyone has his or her own fuzzer[2012 CodeEngn Conference 06] beist - Everyone has his or her own fuzzer
[2012 CodeEngn Conference 06] beist - Everyone has his or her own fuzzer
GangSeok Lee
 
AWS 6월 웨비나 | AWS에서 MS SQL 서버 운영하기 (김민성 솔루션즈아키텍트)
AWS 6월 웨비나 | AWS에서 MS SQL 서버 운영하기 (김민성 솔루션즈아키텍트)AWS 6월 웨비나 | AWS에서 MS SQL 서버 운영하기 (김민성 솔루션즈아키텍트)
AWS 6월 웨비나 | AWS에서 MS SQL 서버 운영하기 (김민성 솔루션즈아키텍트)
Amazon Web Services Korea
 
Elastic Search (엘라스틱서치) 입문
Elastic Search (엘라스틱서치) 입문Elastic Search (엘라스틱서치) 입문
Elastic Search (엘라스틱서치) 입문
SeungHyun Eom
 
Fundamental of ELK Stack
Fundamental of ELK StackFundamental of ELK Stack
Fundamental of ELK Stack
주표 홍
 
DevOps Taiwan Monitor Tools 大亂鬥 - Prometheus
DevOps Taiwan Monitor Tools 大亂鬥 - PrometheusDevOps Taiwan Monitor Tools 大亂鬥 - Prometheus
DevOps Taiwan Monitor Tools 大亂鬥 - Prometheus
Adam Chen
 
[GitOps] Argo CD on GKE (v0.9.2).pdf
[GitOps] Argo CD on GKE (v0.9.2).pdf[GitOps] Argo CD on GKE (v0.9.2).pdf
[GitOps] Argo CD on GKE (v0.9.2).pdf
Jo Hoon
 
200.마이크로서비스에 적합한 오픈소스 WAS는 무엇?
200.마이크로서비스에 적합한 오픈소스 WAS는 무엇?200.마이크로서비스에 적합한 오픈소스 WAS는 무엇?
200.마이크로서비스에 적합한 오픈소스 WAS는 무엇?
Opennaru, inc.
 
DDD로 복잡함 다루기
DDD로 복잡함 다루기DDD로 복잡함 다루기
DDD로 복잡함 다루기
beom kyun choi
 
[오픈소스컨설팅]Scouter 설치 및 사용가이드(JBoss)
[오픈소스컨설팅]Scouter 설치 및 사용가이드(JBoss)[오픈소스컨설팅]Scouter 설치 및 사용가이드(JBoss)
[오픈소스컨설팅]Scouter 설치 및 사용가이드(JBoss)
Ji-Woong Choi
 
Effective testing with pytest
Effective testing with pytestEffective testing with pytest
Effective testing with pytest
Hector Canto
 
하둡 고가용성(HA) 설정
하둡 고가용성(HA) 설정하둡 고가용성(HA) 설정
하둡 고가용성(HA) 설정
NoahKIM36
 

What's hot (20)

Spring cloud on kubernetes
Spring cloud on kubernetesSpring cloud on kubernetes
Spring cloud on kubernetes
 
톰캣 운영 노하우
톰캣 운영 노하우톰캣 운영 노하우
톰캣 운영 노하우
 
CoreOS : 설치부터 컨테이너 배포까지
CoreOS : 설치부터 컨테이너 배포까지CoreOS : 설치부터 컨테이너 배포까지
CoreOS : 설치부터 컨테이너 배포까지
 
15 Lecture BIOL 1030-30 Gillette College
15 Lecture BIOL 1030-30 Gillette College15 Lecture BIOL 1030-30 Gillette College
15 Lecture BIOL 1030-30 Gillette College
 
[오픈소스컨설팅]Ansible overview
[오픈소스컨설팅]Ansible overview[오픈소스컨설팅]Ansible overview
[오픈소스컨설팅]Ansible overview
 
Spring mvc
Spring mvcSpring mvc
Spring mvc
 
2조 프로젝트 보고서 김동현
2조 프로젝트 보고서 김동현2조 프로젝트 보고서 김동현
2조 프로젝트 보고서 김동현
 
Apache Tomcat ( 아파치 톰캣 ) 설치 가이드
Apache Tomcat ( 아파치 톰캣 ) 설치 가이드Apache Tomcat ( 아파치 톰캣 ) 설치 가이드
Apache Tomcat ( 아파치 톰캣 ) 설치 가이드
 
July OpenNTF Webinar - HCL Presents Keep, a new API for Domino
July OpenNTF Webinar - HCL Presents Keep, a new API for DominoJuly OpenNTF Webinar - HCL Presents Keep, a new API for Domino
July OpenNTF Webinar - HCL Presents Keep, a new API for Domino
 
[2012 CodeEngn Conference 06] beist - Everyone has his or her own fuzzer
[2012 CodeEngn Conference 06] beist - Everyone has his or her own fuzzer[2012 CodeEngn Conference 06] beist - Everyone has his or her own fuzzer
[2012 CodeEngn Conference 06] beist - Everyone has his or her own fuzzer
 
AWS 6월 웨비나 | AWS에서 MS SQL 서버 운영하기 (김민성 솔루션즈아키텍트)
AWS 6월 웨비나 | AWS에서 MS SQL 서버 운영하기 (김민성 솔루션즈아키텍트)AWS 6월 웨비나 | AWS에서 MS SQL 서버 운영하기 (김민성 솔루션즈아키텍트)
AWS 6월 웨비나 | AWS에서 MS SQL 서버 운영하기 (김민성 솔루션즈아키텍트)
 
Elastic Search (엘라스틱서치) 입문
Elastic Search (엘라스틱서치) 입문Elastic Search (엘라스틱서치) 입문
Elastic Search (엘라스틱서치) 입문
 
Fundamental of ELK Stack
Fundamental of ELK StackFundamental of ELK Stack
Fundamental of ELK Stack
 
DevOps Taiwan Monitor Tools 大亂鬥 - Prometheus
DevOps Taiwan Monitor Tools 大亂鬥 - PrometheusDevOps Taiwan Monitor Tools 大亂鬥 - Prometheus
DevOps Taiwan Monitor Tools 大亂鬥 - Prometheus
 
[GitOps] Argo CD on GKE (v0.9.2).pdf
[GitOps] Argo CD on GKE (v0.9.2).pdf[GitOps] Argo CD on GKE (v0.9.2).pdf
[GitOps] Argo CD on GKE (v0.9.2).pdf
 
200.마이크로서비스에 적합한 오픈소스 WAS는 무엇?
200.마이크로서비스에 적합한 오픈소스 WAS는 무엇?200.마이크로서비스에 적합한 오픈소스 WAS는 무엇?
200.마이크로서비스에 적합한 오픈소스 WAS는 무엇?
 
DDD로 복잡함 다루기
DDD로 복잡함 다루기DDD로 복잡함 다루기
DDD로 복잡함 다루기
 
[오픈소스컨설팅]Scouter 설치 및 사용가이드(JBoss)
[오픈소스컨설팅]Scouter 설치 및 사용가이드(JBoss)[오픈소스컨설팅]Scouter 설치 및 사용가이드(JBoss)
[오픈소스컨설팅]Scouter 설치 및 사용가이드(JBoss)
 
Effective testing with pytest
Effective testing with pytestEffective testing with pytest
Effective testing with pytest
 
하둡 고가용성(HA) 설정
하둡 고가용성(HA) 설정하둡 고가용성(HA) 설정
하둡 고가용성(HA) 설정
 

Viewers also liked

GitHub 실습 교육
GitHub 실습 교육GitHub 실습 교육
GitHub 실습 교육
승엽 신
 
XE 오픈 세미나(2014 05) - XE 모듈 강의 - 달리기
XE 오픈 세미나(2014 05) - XE 모듈 강의 - 달리기XE 오픈 세미나(2014 05) - XE 모듈 강의 - 달리기
XE 오픈 세미나(2014 05) - XE 모듈 강의 - 달리기
XpressEngine
 
XE 오픈 세미나(2014-04-26) - 김동현 "XE 코어 구조론"
XE 오픈 세미나(2014-04-26) - 김동현 "XE 코어 구조론"XE 오픈 세미나(2014-04-26) - 김동현 "XE 코어 구조론"
XE 오픈 세미나(2014-04-26) - 김동현 "XE 코어 구조론"
XpressEngine
 
XE 오픈 세미나(2014 05) - XE 모듈 강의 - 날기
XE 오픈 세미나(2014 05) - XE 모듈 강의 - 날기XE 오픈 세미나(2014 05) - XE 모듈 강의 - 날기
XE 오픈 세미나(2014 05) - XE 모듈 강의 - 날기
XpressEngine
 
XE 오픈 세미나(2014-06-28) - (2/3) 레이아웃 제작 노하우
XE 오픈 세미나(2014-06-28) - (2/3) 레이아웃 제작 노하우XE 오픈 세미나(2014-06-28) - (2/3) 레이아웃 제작 노하우
XE 오픈 세미나(2014-06-28) - (2/3) 레이아웃 제작 노하우
XpressEngine
 
XE 모듈 개발 - 걸음마부터 날기까지 - 날기
XE 모듈 개발 - 걸음마부터 날기까지 - 날기XE 모듈 개발 - 걸음마부터 날기까지 - 날기
XE 모듈 개발 - 걸음마부터 날기까지 - 날기
승엽 신
 
XE 모듈 개발 - 걸음마부터 날기까지 - 걸음마
XE 모듈 개발 - 걸음마부터 날기까지 - 걸음마XE 모듈 개발 - 걸음마부터 날기까지 - 걸음마
XE 모듈 개발 - 걸음마부터 날기까지 - 걸음마
승엽 신
 
XE 모듈 개발 - 걸음마부터 날기까지 - 걷기
XE 모듈 개발 - 걸음마부터 날기까지 - 걷기XE 모듈 개발 - 걸음마부터 날기까지 - 걷기
XE 모듈 개발 - 걸음마부터 날기까지 - 걷기
승엽 신
 
[141217 박민근] Visual Studio 2013의 (잘모르는) 유용한 기능들
[141217 박민근] Visual Studio 2013의 (잘모르는) 유용한 기능들[141217 박민근] Visual Studio 2013의 (잘모르는) 유용한 기능들
[141217 박민근] Visual Studio 2013의 (잘모르는) 유용한 기능들
MinGeun Park
 
XE 모듈 개발 - 걸음마부터 날기까지 - 달리기
XE 모듈 개발 - 걸음마부터 날기까지 - 달리기XE 모듈 개발 - 걸음마부터 날기까지 - 달리기
XE 모듈 개발 - 걸음마부터 날기까지 - 달리기
승엽 신
 
Vagrant를 이용한 개발환경 구축과 NetBeans를 이용한 C/C++개발과 리모트 디버깅
Vagrant를 이용한 개발환경 구축과 NetBeans를 이용한 C/C++개발과 리모트 디버깅Vagrant를 이용한 개발환경 구축과 NetBeans를 이용한 C/C++개발과 리모트 디버깅
Vagrant를 이용한 개발환경 구축과 NetBeans를 이용한 C/C++개발과 리모트 디버깅
승엽 신
 
UXDS_Naver me UX 개선안 프로젝트_1차
UXDS_Naver me UX 개선안 프로젝트_1차UXDS_Naver me UX 개선안 프로젝트_1차
UXDS_Naver me UX 개선안 프로젝트_1차
Yeji Cho
 
Git 입문자를 위한 가이드
Git 입문자를 위한 가이드Git 입문자를 위한 가이드
Git 입문자를 위한 가이드
chandler0201
 
Github 사용법
Github 사용법Github 사용법
Github 사용법
jong seok Kim
 
UX, UX Design, UX Process (@Daum/2014)
UX, UX Design, UX Process (@Daum/2014)UX, UX Design, UX Process (@Daum/2014)
UX, UX Design, UX Process (@Daum/2014)
keesung kim
 
Git는 머꼬? GitHub는 또 머지?
Git는 머꼬? GitHub는 또 머지?Git는 머꼬? GitHub는 또 머지?
Git는 머꼬? GitHub는 또 머지?
Ian Choi
 

Viewers also liked (16)

GitHub 실습 교육
GitHub 실습 교육GitHub 실습 교육
GitHub 실습 교육
 
XE 오픈 세미나(2014 05) - XE 모듈 강의 - 달리기
XE 오픈 세미나(2014 05) - XE 모듈 강의 - 달리기XE 오픈 세미나(2014 05) - XE 모듈 강의 - 달리기
XE 오픈 세미나(2014 05) - XE 모듈 강의 - 달리기
 
XE 오픈 세미나(2014-04-26) - 김동현 "XE 코어 구조론"
XE 오픈 세미나(2014-04-26) - 김동현 "XE 코어 구조론"XE 오픈 세미나(2014-04-26) - 김동현 "XE 코어 구조론"
XE 오픈 세미나(2014-04-26) - 김동현 "XE 코어 구조론"
 
XE 오픈 세미나(2014 05) - XE 모듈 강의 - 날기
XE 오픈 세미나(2014 05) - XE 모듈 강의 - 날기XE 오픈 세미나(2014 05) - XE 모듈 강의 - 날기
XE 오픈 세미나(2014 05) - XE 모듈 강의 - 날기
 
XE 오픈 세미나(2014-06-28) - (2/3) 레이아웃 제작 노하우
XE 오픈 세미나(2014-06-28) - (2/3) 레이아웃 제작 노하우XE 오픈 세미나(2014-06-28) - (2/3) 레이아웃 제작 노하우
XE 오픈 세미나(2014-06-28) - (2/3) 레이아웃 제작 노하우
 
XE 모듈 개발 - 걸음마부터 날기까지 - 날기
XE 모듈 개발 - 걸음마부터 날기까지 - 날기XE 모듈 개발 - 걸음마부터 날기까지 - 날기
XE 모듈 개발 - 걸음마부터 날기까지 - 날기
 
XE 모듈 개발 - 걸음마부터 날기까지 - 걸음마
XE 모듈 개발 - 걸음마부터 날기까지 - 걸음마XE 모듈 개발 - 걸음마부터 날기까지 - 걸음마
XE 모듈 개발 - 걸음마부터 날기까지 - 걸음마
 
XE 모듈 개발 - 걸음마부터 날기까지 - 걷기
XE 모듈 개발 - 걸음마부터 날기까지 - 걷기XE 모듈 개발 - 걸음마부터 날기까지 - 걷기
XE 모듈 개발 - 걸음마부터 날기까지 - 걷기
 
[141217 박민근] Visual Studio 2013의 (잘모르는) 유용한 기능들
[141217 박민근] Visual Studio 2013의 (잘모르는) 유용한 기능들[141217 박민근] Visual Studio 2013의 (잘모르는) 유용한 기능들
[141217 박민근] Visual Studio 2013의 (잘모르는) 유용한 기능들
 
XE 모듈 개발 - 걸음마부터 날기까지 - 달리기
XE 모듈 개발 - 걸음마부터 날기까지 - 달리기XE 모듈 개발 - 걸음마부터 날기까지 - 달리기
XE 모듈 개발 - 걸음마부터 날기까지 - 달리기
 
Vagrant를 이용한 개발환경 구축과 NetBeans를 이용한 C/C++개발과 리모트 디버깅
Vagrant를 이용한 개발환경 구축과 NetBeans를 이용한 C/C++개발과 리모트 디버깅Vagrant를 이용한 개발환경 구축과 NetBeans를 이용한 C/C++개발과 리모트 디버깅
Vagrant를 이용한 개발환경 구축과 NetBeans를 이용한 C/C++개발과 리모트 디버깅
 
UXDS_Naver me UX 개선안 프로젝트_1차
UXDS_Naver me UX 개선안 프로젝트_1차UXDS_Naver me UX 개선안 프로젝트_1차
UXDS_Naver me UX 개선안 프로젝트_1차
 
Git 입문자를 위한 가이드
Git 입문자를 위한 가이드Git 입문자를 위한 가이드
Git 입문자를 위한 가이드
 
Github 사용법
Github 사용법Github 사용법
Github 사용법
 
UX, UX Design, UX Process (@Daum/2014)
UX, UX Design, UX Process (@Daum/2014)UX, UX Design, UX Process (@Daum/2014)
UX, UX Design, UX Process (@Daum/2014)
 
Git는 머꼬? GitHub는 또 머지?
Git는 머꼬? GitHub는 또 머지?Git는 머꼬? GitHub는 또 머지?
Git는 머꼬? GitHub는 또 머지?
 

Similar to 거 XE 모듈 개발하기 좋은 날씨네 - XECon + PHPFest 2014

XE Open seminar 테마만들기
XE Open seminar 테마만들기XE Open seminar 테마만들기
XE Open seminar 테마만들기
Sungbum Hong
 
Xe hack
Xe hackXe hack
Xe hack
sejin7940
 
[오픈소스컨설팅]Nginx 1.2.7 설치가이드__v1
[오픈소스컨설팅]Nginx 1.2.7 설치가이드__v1[오픈소스컨설팅]Nginx 1.2.7 설치가이드__v1
[오픈소스컨설팅]Nginx 1.2.7 설치가이드__v1
Ji-Woong Choi
 
파이썬 플라스크 이해하기
파이썬 플라스크 이해하기 파이썬 플라스크 이해하기
파이썬 플라스크 이해하기
Yong Joon Moon
 
Polymer따라잡기
Polymer따라잡기Polymer따라잡기
Polymer따라잡기
Han Jung Hyun
 
XECon2015 :: [3-2] 오승훈 - XE3 플러그인 제작 소개
XECon2015 :: [3-2] 오승훈 - XE3 플러그인 제작 소개XECon2015 :: [3-2] 오승훈 - XE3 플러그인 제작 소개
XECon2015 :: [3-2] 오승훈 - XE3 플러그인 제작 소개
XpressEngine
 
Vue 뽀개기 1장 환경설정 및 spa설정
Vue 뽀개기 1장 환경설정 및 spa설정Vue 뽀개기 1장 환경설정 및 spa설정
Vue 뽀개기 1장 환경설정 및 spa설정
leejungwang
 
도구를 활용한 더 나은 웹 개발: Yeoman
도구를 활용한 더 나은 웹 개발: Yeoman도구를 활용한 더 나은 웹 개발: Yeoman
도구를 활용한 더 나은 웹 개발: YeomanJae Sung Park
 
[오픈소스컨설팅] Docker를 활용한 Gitlab CI/CD 구성 테스트
[오픈소스컨설팅] Docker를 활용한 Gitlab CI/CD 구성 테스트[오픈소스컨설팅] Docker를 활용한 Gitlab CI/CD 구성 테스트
[오픈소스컨설팅] Docker를 활용한 Gitlab CI/CD 구성 테스트
Ji-Woong Choi
 
Python3 6장 모듈만들기
Python3 6장 모듈만들기Python3 6장 모듈만들기
Python3 6장 모듈만들기Jihoon Kong
 
Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템
Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템
Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템
Park JoongSoo
 
Internship backend
Internship backendInternship backend
Internship backend
Yein Sim
 
Django를 Django답게, Django로 뉴스 사이트 만들기
Django를 Django답게, Django로 뉴스 사이트 만들기Django를 Django답게, Django로 뉴스 사이트 만들기
Django를 Django답게, Django로 뉴스 사이트 만들기
Kyoung Up Jung
 
Yeoman(모던웹 개발을 위한 관리도구)설치사용가이드
Yeoman(모던웹 개발을 위한 관리도구)설치사용가이드Yeoman(모던웹 개발을 위한 관리도구)설치사용가이드
Yeoman(모던웹 개발을 위한 관리도구)설치사용가이드
수정 김
 
Web2.0mission
Web2.0missionWeb2.0mission
Web2.0mission
wiim
 
Cms All 091103
Cms All 091103Cms All 091103
Cms All 091103
wiim
 
[KGIT_EWD]class03 0322
[KGIT_EWD]class03 0322[KGIT_EWD]class03 0322
[KGIT_EWD]class03 0322
jylee6977
 
Meteor React Tutorial 따라하기
Meteor React Tutorial 따라하기Meteor React Tutorial 따라하기
Meteor React Tutorial 따라하기
Jiam Seo
 
Polymer, lego같이 만드는 웹어플리케이션
Polymer, lego같이 만드는 웹어플리케이션Polymer, lego같이 만드는 웹어플리케이션
Polymer, lego같이 만드는 웹어플리케이션
Jeado Ko
 

Similar to 거 XE 모듈 개발하기 좋은 날씨네 - XECon + PHPFest 2014 (20)

XE Open seminar 테마만들기
XE Open seminar 테마만들기XE Open seminar 테마만들기
XE Open seminar 테마만들기
 
Xe hack
Xe hackXe hack
Xe hack
 
[오픈소스컨설팅]Nginx 1.2.7 설치가이드__v1
[오픈소스컨설팅]Nginx 1.2.7 설치가이드__v1[오픈소스컨설팅]Nginx 1.2.7 설치가이드__v1
[오픈소스컨설팅]Nginx 1.2.7 설치가이드__v1
 
파이썬 플라스크 이해하기
파이썬 플라스크 이해하기 파이썬 플라스크 이해하기
파이썬 플라스크 이해하기
 
Polymer따라잡기
Polymer따라잡기Polymer따라잡기
Polymer따라잡기
 
XECon2015 :: [3-2] 오승훈 - XE3 플러그인 제작 소개
XECon2015 :: [3-2] 오승훈 - XE3 플러그인 제작 소개XECon2015 :: [3-2] 오승훈 - XE3 플러그인 제작 소개
XECon2015 :: [3-2] 오승훈 - XE3 플러그인 제작 소개
 
Vue 뽀개기 1장 환경설정 및 spa설정
Vue 뽀개기 1장 환경설정 및 spa설정Vue 뽀개기 1장 환경설정 및 spa설정
Vue 뽀개기 1장 환경설정 및 spa설정
 
도구를 활용한 더 나은 웹 개발: Yeoman
도구를 활용한 더 나은 웹 개발: Yeoman도구를 활용한 더 나은 웹 개발: Yeoman
도구를 활용한 더 나은 웹 개발: Yeoman
 
[오픈소스컨설팅] Docker를 활용한 Gitlab CI/CD 구성 테스트
[오픈소스컨설팅] Docker를 활용한 Gitlab CI/CD 구성 테스트[오픈소스컨설팅] Docker를 활용한 Gitlab CI/CD 구성 테스트
[오픈소스컨설팅] Docker를 활용한 Gitlab CI/CD 구성 테스트
 
Python3 6장 모듈만들기
Python3 6장 모듈만들기Python3 6장 모듈만들기
Python3 6장 모듈만들기
 
Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템
Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템
Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템
 
Maven
MavenMaven
Maven
 
Internship backend
Internship backendInternship backend
Internship backend
 
Django를 Django답게, Django로 뉴스 사이트 만들기
Django를 Django답게, Django로 뉴스 사이트 만들기Django를 Django답게, Django로 뉴스 사이트 만들기
Django를 Django답게, Django로 뉴스 사이트 만들기
 
Yeoman(모던웹 개발을 위한 관리도구)설치사용가이드
Yeoman(모던웹 개발을 위한 관리도구)설치사용가이드Yeoman(모던웹 개발을 위한 관리도구)설치사용가이드
Yeoman(모던웹 개발을 위한 관리도구)설치사용가이드
 
Web2.0mission
Web2.0missionWeb2.0mission
Web2.0mission
 
Cms All 091103
Cms All 091103Cms All 091103
Cms All 091103
 
[KGIT_EWD]class03 0322
[KGIT_EWD]class03 0322[KGIT_EWD]class03 0322
[KGIT_EWD]class03 0322
 
Meteor React Tutorial 따라하기
Meteor React Tutorial 따라하기Meteor React Tutorial 따라하기
Meteor React Tutorial 따라하기
 
Polymer, lego같이 만드는 웹어플리케이션
Polymer, lego같이 만드는 웹어플리케이션Polymer, lego같이 만드는 웹어플리케이션
Polymer, lego같이 만드는 웹어플리케이션
 

거 XE 모듈 개발하기 좋은 날씨네 - XECon + PHPFest 2014