3. Java Build Tool?
컴파일
소스코드를 사용할 수 있는 실행 파일로 변환
빌드
빌드 > 컴파일
컴파일, 테스팅, 점검, 배포
소스의 컴파일을 포함해 어플리케이션을 사용할 수 있는 형태로 만들어주는 과정.
소프트웨어가 응집력있는 하나의 단위로써 잘 동작하는지 확인하는 과정.
6. Ant
완전 개발자 친화적
● 정해진 규칙, 프로세스 X
● 모든 것을 개발자가 정의
● Task 중심
Ant 자체는 XML이나 Remote Repository(Dependency)를 사용할 수 없음
그래서
+
7. Maven
Strong convention but hard to implement custom logic
규칙, 프로세스가 뚜렷하게 정의,
그러나 맞춤 로직을 구현하기 어렵다
CoC, Convention over Configuration
명확한 관습으로 인해 더 편해진다는 의미
14. Gradle
개발적 친화적 + CoC
즉, Ant와 Maven의 장점만을 취함
ant : flexibility / full control / chaining of targets
ivy : dependency management
maven : convention over configuration / multimodule projects / extensibility via plugins
gant : Groovy DSL(Domain specific language) on top of Ant