Giter VIP home page Giter VIP logo

hackday-conventions-java's Introduction

캠퍼스 핵데이 Java 코딩 컨벤션

빠른 적용 가이드

최소한의 규칙으로 빠르게 적용을 하고 싶다면 아래 단락만 참고합니다.

가이드 특징

판단 기준이 명확한 규칙만을 서술

'짧고 간결한 이름', '불필요한 주석 지양' 등 사람마다 기준이 다른 규칙은 제외했습니다. 앞으로도 준수여부를 판단하는데 토론이 필요한 요소나 프로그래밍 프랙티스 등은 이 가이드에는 포함하지 않을 예정입니다.

규칙 식별자 활용

규칙마다 식별자를 지정하고 이를 문서 링크와 설정 파일에 표기했습니다.

예를 들어 '하드탭 사용' 규칙은 indentation-tab 라는 식별자가 부여되어 있습니다. 이 규칙의 링크는 https://naver.github.io/hackday-conventions-java/#indentation-tab 이고, 각종 설정 파일에서도 이 식별자를 표기했습니다. 규칙을 커스터마이징 하거나 제거할 때 설정 파일 안에서 식별자로 검색을 하는 것을 추천합니다.

editorconfig 설정
[*.java]
# [indentation-tab]
indent_style = tab
Checkstyle 설정
<!-- [indentation-tab] -->
<module name="RegexpSinglelineJava">
    <property name="format" value="^\t* "/>
    <property name="message" value="[indentation-tab] Indent must use tab characters"/>
    <property name="ignoreComments" value="true"/>
</module>
Eclipse 포멧터 설정
<!-- [indentation-tab] -->
<setting id="org.eclipse.jdt.core.formatter.tabulation.char" value="tab"/>

커스터마이징 방법 설명

이 가이드의 규칙을 프로젝트별로 재정의해서 사용할 경우를 대비해서 각종 도구들을 커스터마이징 할수 있는 방법을 설명했습니다.

문서 빌드 & 배포

문서 빌드

./gradlew build 를 수행하면 build/asciidoc/index.html 경로에 가이드 문서가 생성됩니다.

문서 배포

gradle-git-publish 플러그인을 이용해서 GitHub Pages로 배포됩니다.

./gradlew gitPublishPush 을 실행하면 {프로젝트 홈}/build/gitPublish 디렉토리에 gh-pages 브랜치와 연결된 Local Git repoisitory가 생깁니다.

빌드서버에서는 https://github.com/settings/tokens 에서 Access Token을 발급받아서 Token 값을 아래와 같이 지정할수 있습니다.

 ./gradlew gitPublishPush -Dorg.ajoberstar.grgit.auth.username=[token]

또는 OS의 환경변수에 GRGIT_USER 변수에 token값을 설정해도 됩니다.

hackday-conventions-java's People

Contributors

benelog avatar djunnni avatar jaeyeonling avatar hepheir avatar eunbii0213 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.