ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 자바 프로젝트 필수 유틸리티
    후기/Book Review 2018. 6. 23. 10:06



    책의 목차

    1. 빌드 도구 입문
    2. 메이븐 입문하기
    3. 메이븐 활용하기
    4. 그레이들 입문하기
    5. 그레이들 활용하기
    6. SBT 입문과 활용하기
    7. 깃/깃허브 입문하기
    8. 젠킨스 입문과 활용하기

    Maven, Gradle, SBT, git/github, Jenkins 모두 업무에서 많이 사용되는 툴들이다. 이미 구축되어 있는 것을 상요하는 상황이라 각 툴들에 대해 기본적인 것부터 살펴보고자 하였다.

    빌드 도구는 예전의 ant(군대에서 조금 써봄)이후 나온 maven이 제일 대중적으로 쓰이고 있지 않나 싶다. 하지만 안드로이드의 기본 빌드툴인 gradle을 사용하는 빈도도 늘어나고 있는 듯 하다. maven은 xml기반이라 코드가 불필요하게 길어지거나 장황해 질 수 있지만 스코프 설정이나 세세한 설정이 가능하다. gradle은 빠르지만 groovy라는 jvm기반의 스크립트 언어를 기반으로 하고 있기 때문에 언어를 익혀야 하는 비용이 들어간다.그리고 요새는 SBT도 뜨고 있다고 한다. play framework을 사용하면 sbt가 필수이고, 꼭 play를 쓰지 않더라도 사용할 수 있다. 스칼라로 작성되기 때문에 역시 스칼라 문법을 조금 알아야 하는 비용이 든다. 적절하게 필요한 것을 선택해서 사용하면 될 것 같다. 결국 세개 다 알아야 하겠지만.

    DVCS(Distributed Version Control System)는 git, Mercurial, Bazaar, Darcs등이 있는데 사실상 git이 표준이 된것 같다. git 호스팅 서버도 Github, Bitbucket, GitLab 등이 있는데 Github이 가장 유명하다. Github에서도 좋은 기능을 많이 제공하지만 git 터미널 명령어들에 익숙해져야 호스팅 서버에 관계없이 일을 진행할 수 있을것 같다.

    CI/CD(Continuous Integration/Continuous Delivery) 툴로는 젠킨스가 사실상 표준이다. Github과 연동되는 Travis CI도 있는데 안써봐서 잘 모르겠다. 젠킨스 UI는 약간 2000년대 같은 느낌이 들지만 기능만큼은 출중하다. 기본 기능인 git 연동하여 서버에 배포하기, 소나큐브를 사용한 코드 정적분석, 일련의 단계들을 파이프라인으로 엮어 단계별로 수행할 수 있는 파이프라인뷰 등 많은 기능이 있다. 플러그인도 많고 shell로 작성할 수 있는 부분들도 많아서 개발자들의 수고를 많이 덜어준다.

    전체적으로 쭉 훑어보고 따라하기 좋은 책이다. 대충 이런 것들이 있구나, 이건 이런식으로 쓰는구나 정도로 이해하고 직접 필요할 때 찾아보면서 하나씩 적용해 나가면 좋을 것 같다.



    '후기 > Book Review' 카테고리의 다른 글

    CODE  (0) 2018.07.23
    블록체인 무엇인가?  (0) 2018.07.08
    Java 9 모듈 프로그래밍  (0) 2018.06.16
    관계형 데이터베이스 실전 입문  (0) 2018.05.13
    NoSQL 철저 입문  (0) 2018.04.19

    댓글

Designed by Tistory.