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