SlideShare a Scribd company logo
1 of 53
phpdocument
우리의 코드를 예쁘게 포장하는 방법
phpDocumentor란?
제작한 프로젝트에 대해서 주석을 이용하여 문서화 해주는 도구
Php가 스크립트 언어에서 오브젝트 언어로 변화하는 시점
=> Javadoc과 같은 자동화 도구가 가능해짐
phpDocumentor란?
주석이란?
자신을 포함하여 프로젝트에 참여하는 사람들에게
이해할 수 있도록 도와주는 역할
# 한 줄 주석 사용
// 한 줄 주석 사용
/* 여러 줄 주석 사용
닫을 때까지 마음대로 쓸 수 있습니다. */
주석이란?
Ex>
/*
* 이름 변수값 할당 받아서 출력해 주는 함수
* : 여러 줄 주석
*/
public function getName(name)
{
//이름 변수에 할당하는 부분 : 한 줄 주석
$str_name = name ? name : null;
return $str_name;
}
주석이란?
여러 줄 주석
한 줄 주석
/**
* {원하는 내용 넣기}
*/
Phpdoc 사용법
함께 사용할 수 있는 대표적인 데이터 표현 방식
@author 작성자
@copyright 저작권 표시
@param 파라미터 정보
@see 참고한 레퍼런스 정보
@return 리턴 값 정보
Phpdoc 사용법
참고 : http://www.phpdoc.org/docs/latest/index.html
1. PHP 5.3.3
2. Intl extension for PHP
3. Graphviz
Phpdoc 요구 스펙
1. composer를 이용한 방법
2. Pear를 이용한 방법
Phpdoc 설치 방법
Phpdoc 설치 방법 : composer를 이용한 방법
Composer는 의존성 관리 도구.
해당 프로젝트가 의존하고 있는 라이브러리를
변경 및 업데이트 등을 관리해주는 역할을 한다.
1. composer.phar 생성
2. 실행파일 생성 : composer.bat
3. 세팅 파일 생성 : composer.json
4. Phpdoc 다운로드 진행
5. phpdoc 확인
Phpdoc 설치 방법 : composer를 이용한 방법
Phpdoc 설치 방법 : composer를 이용한 방법
1. composer.phar 생성
Phpdoc 작업을 시작할 폴더에서 인스톨러 파일 제작
> php –r “eval(‘?>’.file_get_contents(‘https://getcomposer.org/installer’));”
Composer.phar 파일 생성 확인
• Php 명령어를 사용할 수 없을 때 대처
- Php 명령어를 사용하기 위해서는 php가 글로벌로 선언되어 있어야 한다
Ex> 내컴퓨터-시스템 속성-환경변수 의 시스템 변수 PATH
php 경로 입력 C:xampp1.8.3php; 추가
Phpdoc 설치 방법 : composer를 이용한 방법
1. composer.phar 생성
Composer.phar를 이용하여 bat 파일로 생성
> echo @php “%~dp0composer.phar” %*>composer.bat
Composer.bat 파일 생성 확인
Composer 동작 확인 : 정상 동작할 경우 composer 버전 출력
> composer -V
Phpdoc 설치 방법 : composer를 이용한 방법
2. 실행파일 생성 : composer.bat
Phpdoc 설치 방법 : composer를 이용한 방법
2. 실행파일 생성 : composer.bat
Composer.json 파일 생성
{
"require-dev": {
"phpdocumentor/phpdocumentor": "2.*"
}
}
Phpdoc 설치 방법 : composer를 이용한 방법
3. 세팅 파일 생성 : composer.json
Phpdoc 설치 방법 : composer를 이용한 방법
3. 세팅 파일 생성 : composer.json
composer를 이용해서 phpdoc을 사용할 수 있도록 다운로드 진행
> php composer.phar install
Phpdoc 설치 방법 : composer를 이용한 방법
4. Phpdoc 다운로드 진행
Phpdoc 설치 방법 : composer를 이용한 방법
4. Phpdoc 다운로드 진행
Phpdoc 설치 방법 : pear를 이용한 방법
php 확장과 응용프로그램 저장소
(PHP Extension and Application Repository)
재사용 가능한 php 컴포넌트를 위한 시스템
1. pear 명령어 실행
2. phpdoc 확인
Phpdoc 설치 방법 : pear를 이용한 방법
> pear channel-discover pear.phpdoc.org
> pear install phpdoc/phpDocumentor
Phpdoc 설치 방법 : pear를 이용한 방법
Phpdoc 설치 방법 : pear를 이용한 방법
Phpdoc 설치 방법 : pear를 이용한 방법
Phpdoc 설치 방법 : pear를 이용한 방법
Phpdoc 설치 방법 : pear를 이용한 방법 - 오류
Phpdoc 설치 방법 : pear를 이용한 방법 - 오류
> pear upgrade pear
> pear upgrade Console_Getopt
> pear upgrade Structures_Graph
> pear install PhpDocumentor
Phpdoc 설치 방법 : pear를 이용한 방법 - 오류
Phpdoc 설치 방법 : pear를 이용한 방법 - 오류
Phpdoc 설치 방법 : pear를 이용한 방법 - 오류
Phpdoc 설치 방법 : pear를 이용한 방법 - 오류
Phpdoc 설치 방법 : pear를 이용한 방법 - 오류
Phpdoc 설치 방법 : pear를 이용한 방법 - 오류
Phpdoc 설치 방법 : pear를 이용한 방법 - 오류
Phpdoc 제작 방법
변환할 코드
phpdoc 실행하여 문서 제작하기
> phpdoc run –d “{소스폴더}” –t “{제작폴더}”
Phpdoc 제작 방법
Phpdoc 제작 방법
Phpdoc 제작 방법
Phpdoc 제작 방법
Phpdoc 제작 방법
Phpdoc 제작 방법
Phpdoc 제작 방법 – Graphviz 설치
Phpdoc의 그래프를 시각화 해주는 오픈 소스
참고 : http://www.graphviz.org/
Phpdoc 제작 방법 – Graphviz 설치
참고 : http://www.graphviz.org/
1. 다운로드
2. 설치
3. 환경 변수 등록
Phpdoc 제작 방법 – Graphviz 설치
1. 다운로드
1. 자신의 운영체제에 맞는 다운로드 페이지 접속
Download – windows
2. 버전에 맞는 설치 파일 다운로드
graphviz-2.38.msi
graphviz-2.38.zip
Phpdoc 제작 방법 – Graphviz 설치
2. 설치
* graphviz-2.38.msi : 클릭하여 설치
Phpdoc 제작 방법 – Graphviz 설치
2. 설치
* graphviz-2.38.zip : 압축 해제
Phpdoc 제작 방법 – Graphviz 설치
3. 환경변수 등록
1. 환경 변수 등록 : Graphviz 명령어(dot)를 사용할 수 있도록
등록하지 않았을 때 phpdoc 생성 시 ‘dot’을 사용할 수 없다는 에러가 출력된다.
Error> Error – Unable to find `dot` command of the GraphViz package
2. Graphviz를 사용할 수 있는지 테스트 : 사용할 수 없음
> dot -V
Phpdoc 제작 방법 – Graphviz 설치
3. 환경변수 등록
1. 환경변수 등록
내 컴퓨터 – 시스템 속성 – 고급 시스템 설정 – 고급 탭 – 환경 변수
2. 시스템 변수의 ‘PATH’ 변수에 Graphviz의 bin 폴더 등록
ex> {기존내용};D:phpdocgraphviz-2.38releasebin
3. Graphviz를 사용할 수 있는지 테스트 : 버전 확인
> dot -V
Phpdoc 제작 방법 – Graphviz 설치
3. 환경변수 등록
Phpdoc 제작 방법
마무리
설치와 사용법보다 중요한 것은 내용물이다.
체계적인 코드를 작성할 때 phpDocumentor가 빛을 발할 수 있다.
그리고 약간의 의지.
마무리
도구는 도구일 뿐이다.
도구를 사용하는 것은 결국 사람이다.

More Related Content

Similar to [2015:1] phpdocumentor 설치와 사용법

FCGI, C++로 Restful 서버 개발
FCGI, C++로 Restful 서버 개발FCGI, C++로 Restful 서버 개발
FCGI, C++로 Restful 서버 개발현승 배
 
공간정보아카데미 - Day1 오픈소스개발 일반
공간정보아카데미 - Day1 오픈소스개발 일반공간정보아카데미 - Day1 오픈소스개발 일반
공간정보아카데미 - Day1 오픈소스개발 일반BJ Jang
 
게임 개발에 도움을 주는 CruiseControl.NET과 Windows Terminal
게임 개발에 도움을 주는 CruiseControl.NET과 Windows Terminal게임 개발에 도움을 주는 CruiseControl.NET과 Windows Terminal
게임 개발에 도움을 주는 CruiseControl.NET과 Windows TerminalOnGameServer
 
오픈세미나 플러그인만들기(한번더)
오픈세미나 플러그인만들기(한번더)오픈세미나 플러그인만들기(한번더)
오픈세미나 플러그인만들기(한번더)승훈 오
 
리스펙토링 세미나 - 나만의 카카오 챗봇 만들기
리스펙토링 세미나 - 나만의 카카오 챗봇 만들기리스펙토링 세미나 - 나만의 카카오 챗봇 만들기
리스펙토링 세미나 - 나만의 카카오 챗봇 만들기Wooyoung Ko
 
도구를 활용한 더 나은 웹 개발: Yeoman
도구를 활용한 더 나은 웹 개발: Yeoman도구를 활용한 더 나은 웹 개발: Yeoman
도구를 활용한 더 나은 웹 개발: YeomanJae Sung Park
 
Node.js Cloud Service Publish
Node.js Cloud Service PublishNode.js Cloud Service Publish
Node.js Cloud Service PublishHyun Jin Moon
 
Laravel 로 배우는 서버사이드 #1
Laravel 로 배우는 서버사이드 #1Laravel 로 배우는 서버사이드 #1
Laravel 로 배우는 서버사이드 #1성일 한
 
Softcon_하재권_Only javascript의 하이브리드 앱서버 도전기
Softcon_하재권_Only javascript의 하이브리드 앱서버 도전기Softcon_하재권_Only javascript의 하이브리드 앱서버 도전기
Softcon_하재권_Only javascript의 하이브리드 앱서버 도전기hajaekwon
 
Django로 배우는 쉽고 빠른 웹개발 study 자료
Django로 배우는 쉽고 빠른 웹개발 study 자료Django로 배우는 쉽고 빠른 웹개발 study 자료
Django로 배우는 쉽고 빠른 웹개발 study 자료Han Sung Kim
 
Envoy 를 이용한 코드 배포 자동화
Envoy 를 이용한 코드 배포 자동화Envoy 를 이용한 코드 배포 자동화
Envoy 를 이용한 코드 배포 자동화Juwon Kim
 
chatbot-seminar-1806
chatbot-seminar-1806chatbot-seminar-1806
chatbot-seminar-1806juneyoungdev
 
Codeveloper 개발기
Codeveloper 개발기Codeveloper 개발기
Codeveloper 개발기Jay Lee
 
Web2.0mission
Web2.0missionWeb2.0mission
Web2.0missionwiim
 
[NEXT] Android 개발 경험 프로젝트 4일차 (Networking)
[NEXT] Android 개발 경험 프로젝트 4일차 (Networking)[NEXT] Android 개발 경험 프로젝트 4일차 (Networking)
[NEXT] Android 개발 경험 프로젝트 4일차 (Networking)YoungSu Son
 
Udamp3 django apache-my_sql_python3_ubuntu14.04-v11
Udamp3 django apache-my_sql_python3_ubuntu14.04-v11Udamp3 django apache-my_sql_python3_ubuntu14.04-v11
Udamp3 django apache-my_sql_python3_ubuntu14.04-v11Dongil Yeom
 
Tensorflow service & Machine Learning
Tensorflow service & Machine LearningTensorflow service & Machine Learning
Tensorflow service & Machine LearningJEEHYUN PAIK
 

Similar to [2015:1] phpdocumentor 설치와 사용법 (20)

FCGI, C++로 Restful 서버 개발
FCGI, C++로 Restful 서버 개발FCGI, C++로 Restful 서버 개발
FCGI, C++로 Restful 서버 개발
 
공간정보아카데미 - Day1 오픈소스개발 일반
공간정보아카데미 - Day1 오픈소스개발 일반공간정보아카데미 - Day1 오픈소스개발 일반
공간정보아카데미 - Day1 오픈소스개발 일반
 
게임 개발에 도움을 주는 CruiseControl.NET과 Windows Terminal
게임 개발에 도움을 주는 CruiseControl.NET과 Windows Terminal게임 개발에 도움을 주는 CruiseControl.NET과 Windows Terminal
게임 개발에 도움을 주는 CruiseControl.NET과 Windows Terminal
 
(스프링프레임워크 강좌)스프링부트개요 및 HelloWorld 따라하기
(스프링프레임워크 강좌)스프링부트개요 및 HelloWorld 따라하기(스프링프레임워크 강좌)스프링부트개요 및 HelloWorld 따라하기
(스프링프레임워크 강좌)스프링부트개요 및 HelloWorld 따라하기
 
오픈세미나 플러그인만들기(한번더)
오픈세미나 플러그인만들기(한번더)오픈세미나 플러그인만들기(한번더)
오픈세미나 플러그인만들기(한번더)
 
JetsonTX2 Python
 JetsonTX2 Python  JetsonTX2 Python
JetsonTX2 Python
 
리스펙토링 세미나 - 나만의 카카오 챗봇 만들기
리스펙토링 세미나 - 나만의 카카오 챗봇 만들기리스펙토링 세미나 - 나만의 카카오 챗봇 만들기
리스펙토링 세미나 - 나만의 카카오 챗봇 만들기
 
도구를 활용한 더 나은 웹 개발: Yeoman
도구를 활용한 더 나은 웹 개발: Yeoman도구를 활용한 더 나은 웹 개발: Yeoman
도구를 활용한 더 나은 웹 개발: Yeoman
 
Node.js Cloud Service Publish
Node.js Cloud Service PublishNode.js Cloud Service Publish
Node.js Cloud Service Publish
 
Laravel 로 배우는 서버사이드 #1
Laravel 로 배우는 서버사이드 #1Laravel 로 배우는 서버사이드 #1
Laravel 로 배우는 서버사이드 #1
 
Softcon_하재권_Only javascript의 하이브리드 앱서버 도전기
Softcon_하재권_Only javascript의 하이브리드 앱서버 도전기Softcon_하재권_Only javascript의 하이브리드 앱서버 도전기
Softcon_하재권_Only javascript의 하이브리드 앱서버 도전기
 
Django로 배우는 쉽고 빠른 웹개발 study 자료
Django로 배우는 쉽고 빠른 웹개발 study 자료Django로 배우는 쉽고 빠른 웹개발 study 자료
Django로 배우는 쉽고 빠른 웹개발 study 자료
 
Envoy 를 이용한 코드 배포 자동화
Envoy 를 이용한 코드 배포 자동화Envoy 를 이용한 코드 배포 자동화
Envoy 를 이용한 코드 배포 자동화
 
chatbot-seminar-1806
chatbot-seminar-1806chatbot-seminar-1806
chatbot-seminar-1806
 
Codeveloper 개발기
Codeveloper 개발기Codeveloper 개발기
Codeveloper 개발기
 
Web2.0mission
Web2.0missionWeb2.0mission
Web2.0mission
 
[NEXT] Android 개발 경험 프로젝트 4일차 (Networking)
[NEXT] Android 개발 경험 프로젝트 4일차 (Networking)[NEXT] Android 개발 경험 프로젝트 4일차 (Networking)
[NEXT] Android 개발 경험 프로젝트 4일차 (Networking)
 
Udamp3 django apache-my_sql_python3_ubuntu14.04-v11
Udamp3 django apache-my_sql_python3_ubuntu14.04-v11Udamp3 django apache-my_sql_python3_ubuntu14.04-v11
Udamp3 django apache-my_sql_python3_ubuntu14.04-v11
 
Node.js intro
Node.js introNode.js intro
Node.js intro
 
Tensorflow service & Machine Learning
Tensorflow service & Machine LearningTensorflow service & Machine Learning
Tensorflow service & Machine Learning
 

[2015:1] phpdocumentor 설치와 사용법

  • 2. phpDocumentor란? 제작한 프로젝트에 대해서 주석을 이용하여 문서화 해주는 도구
  • 3. Php가 스크립트 언어에서 오브젝트 언어로 변화하는 시점 => Javadoc과 같은 자동화 도구가 가능해짐 phpDocumentor란?
  • 4. 주석이란? 자신을 포함하여 프로젝트에 참여하는 사람들에게 이해할 수 있도록 도와주는 역할
  • 5. # 한 줄 주석 사용 // 한 줄 주석 사용 /* 여러 줄 주석 사용 닫을 때까지 마음대로 쓸 수 있습니다. */ 주석이란?
  • 6. Ex> /* * 이름 변수값 할당 받아서 출력해 주는 함수 * : 여러 줄 주석 */ public function getName(name) { //이름 변수에 할당하는 부분 : 한 줄 주석 $str_name = name ? name : null; return $str_name; } 주석이란? 여러 줄 주석 한 줄 주석
  • 7. /** * {원하는 내용 넣기} */ Phpdoc 사용법
  • 8. 함께 사용할 수 있는 대표적인 데이터 표현 방식 @author 작성자 @copyright 저작권 표시 @param 파라미터 정보 @see 참고한 레퍼런스 정보 @return 리턴 값 정보 Phpdoc 사용법 참고 : http://www.phpdoc.org/docs/latest/index.html
  • 9. 1. PHP 5.3.3 2. Intl extension for PHP 3. Graphviz Phpdoc 요구 스펙
  • 10. 1. composer를 이용한 방법 2. Pear를 이용한 방법 Phpdoc 설치 방법
  • 11. Phpdoc 설치 방법 : composer를 이용한 방법 Composer는 의존성 관리 도구. 해당 프로젝트가 의존하고 있는 라이브러리를 변경 및 업데이트 등을 관리해주는 역할을 한다.
  • 12. 1. composer.phar 생성 2. 실행파일 생성 : composer.bat 3. 세팅 파일 생성 : composer.json 4. Phpdoc 다운로드 진행 5. phpdoc 확인 Phpdoc 설치 방법 : composer를 이용한 방법
  • 13. Phpdoc 설치 방법 : composer를 이용한 방법 1. composer.phar 생성 Phpdoc 작업을 시작할 폴더에서 인스톨러 파일 제작 > php –r “eval(‘?>’.file_get_contents(‘https://getcomposer.org/installer’));” Composer.phar 파일 생성 확인 • Php 명령어를 사용할 수 없을 때 대처 - Php 명령어를 사용하기 위해서는 php가 글로벌로 선언되어 있어야 한다 Ex> 내컴퓨터-시스템 속성-환경변수 의 시스템 변수 PATH php 경로 입력 C:xampp1.8.3php; 추가
  • 14. Phpdoc 설치 방법 : composer를 이용한 방법 1. composer.phar 생성
  • 15. Composer.phar를 이용하여 bat 파일로 생성 > echo @php “%~dp0composer.phar” %*>composer.bat Composer.bat 파일 생성 확인 Composer 동작 확인 : 정상 동작할 경우 composer 버전 출력 > composer -V Phpdoc 설치 방법 : composer를 이용한 방법 2. 실행파일 생성 : composer.bat
  • 16. Phpdoc 설치 방법 : composer를 이용한 방법 2. 실행파일 생성 : composer.bat
  • 17. Composer.json 파일 생성 { "require-dev": { "phpdocumentor/phpdocumentor": "2.*" } } Phpdoc 설치 방법 : composer를 이용한 방법 3. 세팅 파일 생성 : composer.json
  • 18. Phpdoc 설치 방법 : composer를 이용한 방법 3. 세팅 파일 생성 : composer.json
  • 19. composer를 이용해서 phpdoc을 사용할 수 있도록 다운로드 진행 > php composer.phar install Phpdoc 설치 방법 : composer를 이용한 방법 4. Phpdoc 다운로드 진행
  • 20. Phpdoc 설치 방법 : composer를 이용한 방법 4. Phpdoc 다운로드 진행
  • 21. Phpdoc 설치 방법 : pear를 이용한 방법 php 확장과 응용프로그램 저장소 (PHP Extension and Application Repository) 재사용 가능한 php 컴포넌트를 위한 시스템
  • 22. 1. pear 명령어 실행 2. phpdoc 확인 Phpdoc 설치 방법 : pear를 이용한 방법
  • 23. > pear channel-discover pear.phpdoc.org > pear install phpdoc/phpDocumentor Phpdoc 설치 방법 : pear를 이용한 방법
  • 24. Phpdoc 설치 방법 : pear를 이용한 방법
  • 25. Phpdoc 설치 방법 : pear를 이용한 방법
  • 26. Phpdoc 설치 방법 : pear를 이용한 방법
  • 27. Phpdoc 설치 방법 : pear를 이용한 방법 - 오류
  • 28. Phpdoc 설치 방법 : pear를 이용한 방법 - 오류 > pear upgrade pear > pear upgrade Console_Getopt > pear upgrade Structures_Graph > pear install PhpDocumentor
  • 29. Phpdoc 설치 방법 : pear를 이용한 방법 - 오류
  • 30. Phpdoc 설치 방법 : pear를 이용한 방법 - 오류
  • 31. Phpdoc 설치 방법 : pear를 이용한 방법 - 오류
  • 32. Phpdoc 설치 방법 : pear를 이용한 방법 - 오류
  • 33. Phpdoc 설치 방법 : pear를 이용한 방법 - 오류
  • 34. Phpdoc 설치 방법 : pear를 이용한 방법 - 오류
  • 35. Phpdoc 설치 방법 : pear를 이용한 방법 - 오류
  • 37. phpdoc 실행하여 문서 제작하기 > phpdoc run –d “{소스폴더}” –t “{제작폴더}” Phpdoc 제작 방법
  • 43. Phpdoc 제작 방법 – Graphviz 설치 Phpdoc의 그래프를 시각화 해주는 오픈 소스 참고 : http://www.graphviz.org/
  • 44. Phpdoc 제작 방법 – Graphviz 설치 참고 : http://www.graphviz.org/ 1. 다운로드 2. 설치 3. 환경 변수 등록
  • 45. Phpdoc 제작 방법 – Graphviz 설치 1. 다운로드 1. 자신의 운영체제에 맞는 다운로드 페이지 접속 Download – windows 2. 버전에 맞는 설치 파일 다운로드 graphviz-2.38.msi graphviz-2.38.zip
  • 46. Phpdoc 제작 방법 – Graphviz 설치 2. 설치 * graphviz-2.38.msi : 클릭하여 설치
  • 47. Phpdoc 제작 방법 – Graphviz 설치 2. 설치 * graphviz-2.38.zip : 압축 해제
  • 48. Phpdoc 제작 방법 – Graphviz 설치 3. 환경변수 등록 1. 환경 변수 등록 : Graphviz 명령어(dot)를 사용할 수 있도록 등록하지 않았을 때 phpdoc 생성 시 ‘dot’을 사용할 수 없다는 에러가 출력된다. Error> Error – Unable to find `dot` command of the GraphViz package 2. Graphviz를 사용할 수 있는지 테스트 : 사용할 수 없음 > dot -V
  • 49. Phpdoc 제작 방법 – Graphviz 설치 3. 환경변수 등록 1. 환경변수 등록 내 컴퓨터 – 시스템 속성 – 고급 시스템 설정 – 고급 탭 – 환경 변수 2. 시스템 변수의 ‘PATH’ 변수에 Graphviz의 bin 폴더 등록 ex> {기존내용};D:phpdocgraphviz-2.38releasebin 3. Graphviz를 사용할 수 있는지 테스트 : 버전 확인 > dot -V
  • 50. Phpdoc 제작 방법 – Graphviz 설치 3. 환경변수 등록
  • 52. 마무리 설치와 사용법보다 중요한 것은 내용물이다. 체계적인 코드를 작성할 때 phpDocumentor가 빛을 발할 수 있다. 그리고 약간의 의지.
  • 53. 마무리 도구는 도구일 뿐이다. 도구를 사용하는 것은 결국 사람이다.

Editor's Notes

  1. phpDocumentor란? phpDocumentor는 제작한 프로젝트에 대해서 문서화 해주는 도구를 말한다. 공식 홈페이지에서는 'PHP에 대한 세계 표준 자동 문서 도구(phpDocumentor is the world standard auto-documentation tool for PHP.)'라고 설명하고 있다.  우선은 phpDocumentor가 왜 수면위로 떠오르게 되었는지에 대해서 짚고 넘어가야 할 것 같다. PHP는 본래 컴파일 없이 라인단위로 처리하는 스크립트 언어이다. 아무래도 스크립트 언어는 라인별 처리라는 개념 덕분인지 진입장벽이 낮아 독학하기에 좋은 언어였다. 그로 인해 사용률이 많아지고 인기가 많아지는 동시에 스크립트 언어에 대한 약점에 대해서 생각하게 되었던 것 같다. PHP5로 넘어가면서 본격적으로 객체에 대한 개념이 강화되고, 이를 이용한 다양한 프레임워크가 개발되고 있다. 스크립트 언어에 대한 약점을 컴파일 언어에서 그 해답을 찾고자 했던 것 같다.  사용하는 이유? 컴파일 언어의 대표적인 사례인 JAVA에서는 이미 javadoc이라는 문서화 도구가 존재하고 있었다. 아마도 javadoc의 php 버전이었으리라. 사용방법도 javadoc과 크게 다르지 않다. php도 객체지향 개념이 나오면서 어떤 정형화된 패턴이 나오기 때문에 그 공통적인 부분으로 문서를 만들 수 있다. 
  2. 주석? 주석은 자신을 포함하여 프로젝트에 참여하는 사람들에게 쉽게 알아볼 수 있도록 하는 역할을 해준다. 주석을 최소화하는 것을 장려하는 사람들도 있긴하지만, 프로젝트가 커질 수록 작은 코드가 어떤 역할을 할 수 있는지 모를 수도 있다. 그때 작업자는 그 코드에 대해서 설명글을 달아줄 수 있다. 주석은 사람이 알아볼 수 있게 쓰는 일종이 메모의 역할을 한다고 할 수 있다. 우선, 문서화 하기 위해서는 php 주석을 어떻게 사용해야하는지 알아야 한다.
  3. 보통은 #은 오류가 난 곳이나 잘 모르는 곳에 적는 것이 보통이지만, 프로젝트나 개발자들의 협의에 따라서 각각의 용도로 설정하여 사용할 수도 있다. 그런데 어떤 불문율의 규칙같은 것은 아니여서 혼용해서 쓰는 경우가 거의 대부분인 것 같다.
  4. phpDocumentor로 대단한 것을 할 수 있는 것은 아니다. 어쩌면 이 도구로 할 수 있는 것은 자료보관일 뿐일 것이다. 사실 Phpdoc이 많은 곳에서 쓰이고 있지는 않다. 대부분의 개발자들은 코드를 보면 쉽게 알 수 있을 것이라고 말하거나 귀찮아 한다. 그만큼 손도 많이 가고 굳이 해야 하나 싶기도 하는 작업이 바로 이 작업이다. 프로젝트가 개발자에 종속되는 것은 매우 좋지 않은 현상이며, 많은 개발자들이 수긍할 수 있는 코드가 좋은 프로젝트라고 생각한다. 그들이 쉽게 프로젝트의 유지보수에 투입되려면 한눈에 정리되어있는 문서가 필요한데 문서의 유지보수는 생각보다 어렵다. 그래서 이 도구가 문서를 작성하는 데에 중요한 역할을 하는 것이다. 어렵지 않은 일이다. 코드를 짤 때마다 양식에 맞춰 관련된 주석을 달아주는 것 뿐이다. 역시, 이 도구를 가장 잘 활용하는 것은 좋은 코드를 생산해 내고 지속적인 유지보수라고 생각한다. 다양한 활용법이 있을지는 모르겠지만, 처음 프로젝트에 투입된 사람이 한 눈에 볼 수 있는 유일한 도구이기 때문에 phpDoc을 제작하는 것이 중요하다고 생각한다. (뭔소리야 나중에 정리하기)