2010-04-05 5 views
2

우리가 작업하고있는 대규모 프로젝트에 적합한 품질의 코드 프로세스를 구현하려고합니다. 현재 많은 개발자가 Javadoc 또는 인라인 코드 주석을 코드에 삽입하지 않습니다. 좋아, 지금. 그러나 그것은 가까운 장래에 심하게 우리를 해칠 것입니다. 우리는 Maven 2.0.9를 빌드 툴로, Hudson for Continuous Integration을 사용하고 있습니다. Subversion을 소스 버전 관리 도구/코드 저장소, Rational Application Developer 및 Rational Softare Architect (본질적으로 Eclipse) 7.5.1을 IDE로 사용하고 Subclipse를 Eclipse 플러그인으로 사용하여 SVN에 연결합니다.Javadoc 및/또는 인라인 코드 주석의 존재를 확인하는 방법이 있습니까?

SVN에 커밋을 허용하기 위해 개발자가 Javadoc 및/또는 인라인 코드 주석을 넣었음을 확인하는 플러그인 또는 방법이 있습니까? 이것은 좋은 코드 리뷰를 대체하기위한 것이 아니라 커밋하기 전에 개발자가이 문서를 추가하도록 상기시키는 것입니다. 우리는 여전히 문서를 검토하는 코드 리뷰를 수행하려고합니다.

누구나 이런 플러그인을 발견 한 적이 있습니까? 어떤 링크? 어떤 아이디어?

답변

1

원본 텍스트를 스캔하고 javadocs가 제 위치에 있는지 확인할 수있는 도구가 필요합니다. 이상적으로 이러한 도구는 원하는 javadocs가 현재 소프트웨어의 구성 (존재하지 않는 매개 변수에 대한 Javadoc 주석보다 나쁨)을 언급하고 있음을 확인합니다.

이상적으로 이러한 도구는 누락 된 javadoc의 골격을 텍스트와 함께 삽입하여 제대로 채워지지 않았 음을 나타냅니다.

이 작업을 수행하는 이상적인 도구는 프로그램 변환 엔진으로 소스 코드를 읽을 수있는 주석 (또는 해당 없음)이 있고 주석을 코드에서 확인할 수있는 정도까지 정확성을 확인합니다 문서화 된 유형 등)을 입력하고 필요에 따라 뼈대를 삽입하십시오.

전체 기능을 갖춘 자바 파서를 가지고 DMS Software Reengineering Toolkit를 사용하여 수행 할 수 있습니다, [유지 의견]하는 AST 및 기호 테이블을 작성합니다. 나무를 걷고 검사/주석 삽입을 수행하려면 사용자 정의 코드가 필요하지만 이는 매우 간단해야합니다.

1

확실히 Checkstyle Eclipse 플러그인을 확인하십시오. 그것은 구성 할 수있는 많은 스타일 검사를 지원하며 Hudson 플러그인에 대해 들어 봤습니다. 다른 사람들도 의견이 있는지 점검합니다.

0

doxygen은 javadoc보다 더 많은 설정 가능성이 있습니까? 기존의 javadoc 주석과 호환되어야하므로 코드 기반에서 주석을 실행 해 볼 가치가 있습니다.

코드에 문서화되지 않은 것이있는 경우 doxygen 빌드를 실패하게 만들 수 있습니다. 그러나 doxygen은 svn checkin hook으로 사용하는 것이 좋은지 의심 스럽지만 느리게 실행됩니다.

1

저는 최근 오픈 소스 JavaDoc 검사 유틸리티 인 OpenJavaDocCheck을 시작했습니다.이 프로젝트는 상당히 젊은이지만, 몇 가지 기능은 다음과 같습니다

  • XHTML + RDFa를 출력 (또는 XML, 당신이 무엇을 만들 XSLT를 사용할 수 있도록)
  • 확장을 (프로젝트 자바 독의 패턴과 같은 테스트하기

) 사용자 정의 태그로 난 당신이 쉽게 필터 후크 precommit SVN로를 연결할 수 있는지 확실하지 않습니다,하지만 메이븐에 통합이 demo.xml 빌드 스크립트에서 찍은 같은 개미()를 호출하여 수행 할 수 있습니다 :

<target name="demo"> 
    <antcall target="ojdcheck-project"> 
    <param name="project" value="com.github.ojdcheck"/> 
    <param name="path" value="com.github.ojdcheck/src"/> 
    </antcall> 
</target> 

<target name="ojdcheck-project"> 
    <javadoc private="false" public="true"> 
    <doclet name="com.github.ojdcheck.OpenJavaDocCheck" 
      path="ojdcheck.jar:ojdcheck-jazzy.jar"> 
     <param name="-xhtml"/> 
     <param name="-file" 
      value="../ojdcheck-ghpages/${project}.html"/> 
     <param name="-tests" 
      value="com.github.ojdcheck.jazzy.SpellCheckerTest"/> 
    </doclet> 
    <sourcepath> 
     <pathelement path="${path}"/> 
    </sourcepath> 
    </javadoc> 
</target> 

물론 두 개의 대상으로 분할하는 것은 물론 필요하지 않지만 여러 프로젝트에서 OpenJavaDocCheck를보다 쉽게 ​​실행할 수 있습니다.

관련 문제