XE3 a부터 z까지(1) xe3 구조와 간단한 페이지 만들기승훈 오
2016년 8월 6일 세미나 입니다.
XE3 beta4.
발표에 사용된 샘플 플러그인
https://github.com/akasima/openseminar_myplugin1
https://github.com/akasima/openseminar_myplugin_ftp
XE3 설치 참고 영상
https://www.youtube.com/watch?v=ganh967NkP4
https://www.youtube.com/watch?v=ubtggblEvuw
XE3 a부터 z까지(1) xe3 구조와 간단한 페이지 만들기승훈 오
2016년 8월 6일 세미나 입니다.
XE3 beta4.
발표에 사용된 샘플 플러그인
https://github.com/akasima/openseminar_myplugin1
https://github.com/akasima/openseminar_myplugin_ftp
XE3 설치 참고 영상
https://www.youtube.com/watch?v=ganh967NkP4
https://www.youtube.com/watch?v=ubtggblEvuw
* 혼자 공부하려고 만든 자료이기 때문에 정확하지 않는 내용이나 오류가 있을 수 있습니다. 잘못된 점은 언제든지 고쳐주시면 배우겠습니다.
* phpDocumentor란?
phpDocumentor는 제작한 프로젝트에 대해서 문서화 해주는 도구를 말한다. 공식 홈페이지에서는 'PHP에 대한 세계 표준 자동 문서 도구(phpDocumentor is the world standard auto-documentation tool for PHP.)'라고 설명하고 있다.
우선은 phpDocumentor가 왜 수면위로 떠오르게 되었는지에 대해서 짚고 넘어가야 할 것 같다. PHP는 본래 컴파일 없이 라인 단위로 처리하는 스크립트 언어이다. 아무래도 스크립트 언어는 라인별 처리라는 개념 덕분인지 진입장벽이 낮아 독학하기에 좋은 언어였다. 그로 인해 사용률이 많아지고 인기가 많아지는 동시에 스크립트 언어에 대한 약점에 대해서 생각하게 되었던 것 같다. PHP 5로 넘어가면서 본격적으로 객체에 대한 개념이 강화되고, 이를 이용한 다양한 프레임워크가 개발되고 있다. 스크립트 언어에 대한 약점을 컴파일 언어에서 그 해답을 찾고자 했던 것 같다.
컴파일 언어의 대표적인 사례인 JAVA에서는 이미 javadoc이라는 문서화 도구가 존재하고 있었다. 아마도 phpDocumentor는 javadoc의 php 버전이었으리라. 사용 방법도 javadoc과 크게 다르지 않다. php도 객체지향 개념이 나오면서 어떤 정형화된 패턴이 나오는 것이 가정해졌기 때문에 그 공통적인 부분을 문서를 만들 수 있게 되었다.
* 주석
주석은 자신을 포함하여 프로젝트에 참여하는 사람들에게 쉽게 알아볼 수 있도록 하는 역할을 해준다. 주석을 최소화하는 것을 장려하는 사람들도 있긴 하지만, 프로젝트가 커질 수록 작은 코드가 어떤 역할을 할 수 있는지 모를 수도 있다. 그때 작업자는 그 코드에 대해서 설명글을 달아줄 수 있다. 주석은 사람이 알아볼 수 있게 쓰는 일종이 메모의 역할을 한다.
* 마무리
phpDocumentor로 대단한 것을 할 수 있는 것은 아니다. 어쩌면 이 도구로 할 수 있는 것은 자료보관일 뿐일 것이다.
사실 Phpdoc이 많은 곳에서 쓰이고 있지는 않다. 대부분의 개발자들은 코드를 보면 쉽게 알 수 있을 것이라고 말하거나 귀찮아 한다. 그만큼 손도 많이 가고 굳이 해야 하나 싶기도 하는 작업이 바로 이 작업이다. 프로젝트가 개발자에 종속되는 것은 매우 좋지 않은 현상이며, 많은 개발자들이 수긍할 수 있는 코드가 좋은 프로젝트라고 생각한다. 그들이 쉽게 프로젝트의 유지보수에 투입되려면 한눈에 정리되어있는 문서가 필요한데 문서의 유지보수는 생각보다 어렵다. 그래서 이 도구가 문서를 작성하는 데에 중요한 역할을 하는 것이다.
PHP 개발자에게 단비 같은 책!
『이클립스 PDT』는 이클립스 PDT를 사용하기 위한 첫 단계부터 디버그, 배포, 협업 도구 등을 자세히 다루었다. 이클립스 PDT의 설치 방법과 기능, 사용법, 그리고 이클립스 PDT 활용법으로 구성되어 있는 이 책은, PHP 개발자들이 JRE 환경에 익숙하지 않다는 것을 전제로 쉽고 자세하게 기술하였다. 이클립스 PDT가 어떤 기능을 제공하고, 이 기능들을 어떻게 잘 활용할지 알려주고, 특히 개발자가 코딩 이외에 가장 많은 시간을 보내는 디버그, 배포 과정에서 이클립스 PDT를 활용하는 방법도 자세히 설명하였다.
http://book.naver.com/bookdb/book_detail.nhn?bid=6471689
NHN NEXT 게임 서버 프로그래밍 강의 자료입니다. 최소한의 필요한 이론 내용은 질문 위주로 구성되어 있고 (답은 학생들 개별로 고민해와서 피드백 받는 방식) 해당 내용에 맞는 실습(구현) 과제가 포함되어 있습니다.
참고로, 서버 아키텍처에 관한 과목은 따로 있어서 본 강의에는 포함되어 있지 않습니다.
9xD Django Study
파이썬 웹프로그래밍 - Django로 배우는 쉽고 빠른 웹개발 Charter 2
발표자 - 김한성
ppt 내용 : 실습 예제 및 내용 요약
개발툴 : pycharm
개발환경 : python 3.5 이용(일부 예제의 경우 동작안함 - 주석 참고)
소스코드 : 2 page github 링크이용
안녕하세요!
2016년도에 작성한 문서입니다.
기존에 PHP5에 익숙하신 분들이 새로이 PHP7이 나오면서,
간략하게 나마 무엇이 바뀌었는지,
그리고 PHP 프레임워크를 시작하기 전에 표준적인 코딩은 어떤 것인지 알아보기 위해 문서를 작성하였습니다.
많은 분들에게 도움이 되길 바라며!! ^^
* 참고 : PHP 5.5.9 이상 버전에서도 위 예제코드가 됩니다! >.<
이번 강의에서는 방대한 파이썬 표준 라이브러리의 내용과 기능을 살펴보고 파이썬 외부 라이브러리에 대해서도 살펴보겠습니다.
- 강의 키노트 자료는 다음 링크를 통해 다운 받으세요
https://drive.google.com/drive/folders/1UrrO4_ch4xcIErbExstwpUVY6vFvPdkW
- 강의 소스코드는 다음 링크를 통해 다운 받으세요
https://github.com/dongupak/Basic-Python-Programmingwjd
[2014 CodeEngn Conference 10] 심준보 - 급전이 필요합니다GangSeok Lee
2014 CodeEngn Conference 10
열혈 취약점 헌터들의 고분군투기!
취약점을 찾게되면 어떤 일이 벌어질까? 급전이 필요한 외롭고 찌질한 대한민국 해커들의 급전을 위한 취약점 찾기 여행기. 과연 우리는 취약점을 찾고 급전을 만들어 외롭고 찌질한 이 상황을 타개할 수 있을 것인가?
http://codeengn.com/conference/10
http://codeengn.com/conference/archive
4. 등장배경
1. PEAR 의 문제
• 선택의 여지가 없다.
• 기여되는 패치에 대한 의구심
2. PEAR2, Pyrus 의 등장
• 느린 성장, 발전 속도
5. 등장배경
Turning Point
• “PHP 프로젝트의 표준을 만들자” - David Coallier
• PHP Framework Interop Group (PHP-FIG)
http://www.php-fig.org/
• PHP5.3 Release (namespace)
11. PSR-0 Autoloading Standard www.php-fig.org
1. 일반
• FooBarBaz
=> project/path/vendor/Foo/Bar/Baz.php
2. Underscore
• NamespacePackageClass_Name
=>
project/path/vendor/Namespace/Package/Class/Name.php
• NamespacePackage_NameClass_Name
=>
project/path/vendor/Namespace/Package_Name/Class/Name.p
hp
12. PSR-0 Autoloading Standard www.php-fig.org
1. 일반
• FooBarBaz
=> project/path/vendor/Foo/Bar/Baz.php
2. Underscore
• NamespacePackageClass_Name
=>
project/path/vendor/Namespace/Package/Class/Name.php
• NamespacePackage_NameClass_Name
=>
project/path/vendor/Namespace/Package_Name/Class/Name.p
hp
13. PSR-1 Basic Coding Standard www.php-fig.org
• PHP시작태그 “<?php” or “<?=” 만 사용
• 파일 인코딩은 UTF-8
• Class 이름은 “StudlyCaps”
• Method 이름은 “camelCase”
• Class 상수는 대문자와 Underscore 만 사용
14. PSR-2 Coding Style Guide www.php-fig.org
• 들여쓰기는 space 4회
• 한줄에 문자는 최대 120자
• namespace 와 use 사이는 한칸 띄움
• Class 와 Method 여는 중괄호는 다음 줄에
• 제어구조문의 여는 중괄호는 같은 줄에
• 기타 등등…
15. PSR-3 Logger Interface www.php-fig.org
• 8가지 Method 를 포함
(debug, info, notice, warning, error, critical, alert,
emergency)
• 9번째 Method “log” 의 첫 인자는 Log의 레벨
• 정의되지 않은 Method 호출시
“PsrLogInvalidArgumentException” 으로 예외처리
• 정의된 8가지 레벨이외의 레벨은 사용하지 않음