키보드워리어

[Build.gradle] 본문

개발 관련

[Build.gradle]

꽉 쥔 주먹속에 안경닦이 2023. 6. 7. 11:07
728x90

안녕하세요 【키보드 워리어】 블로그 방문자 여러분, 안경닦이입니다.

오늘은 Build.gradle에 대해 살펴보죠!


build.gradle
build.gradle

Gradle이란?

거의 모든 유형의 소프트웨어를 빌드할 수 있을 만큼 유연한 빌드 자동화 도구입니다. ⭐의존성 주입⭐을 지원해 줍니다.

자바를 컴파일을 할 때 의존성을 추가해서 실행 가능한 파일로 패키징을 해서 압축파일 .jar나 .war를 생성합니다.
생성된 파일로 빌드를 해서 서버로 배포할 수 있습니다.

 

 

이러한 과정을 자동화하여 수행하는 역할을 합니다.


빌드도구를 사용함으로 반복적인 작업을 줄이고 버전 업데이트나 의존성 파악이 어려운 문제를 해결할 수 있습니다.


Maven이나 Spring 이니셜라이즈를 사용해도 되지만 build.gradle의 코드가 무슨 역할을 하는지, 이니셜라이저 외에 추가로 의존성 추가가 필요할 때 어떻게 해야 할지 등을 모르는 상태로 개발하는 경우가 있습니다.

Gadle 등장 전

Gadle 등장 전 빌드 도구로 APACHE ANT나 Maven을 사용했습니다.

Ant, Maven

이것들은 .xml기반 파일들입니다. 의존관계가 복잡하고 정해진 규칙이 없어서 유지보수가 어려운 단점이 좀 있었습니다.

이러한 ANT와 Maven의 장점을 채택한 Gradle이 탄생됩니다.

 

 

Gadle 주요 특징

Gradle은 Groovy기반의 스크립트 언어입니다.
따라서 Gradle의 장점은 동적으로 실행가능하고 플러그인(Plugin)을 지원해 줍니다.
자바와 유사한 문법구조를 가져서 Java와 호환됩니다.
애플리케이션 주요 기능을 설정하는데 1000줄의 코드가 필요했다면

빌드 그래들을 사용하면 500개 정도로 줄어드는 마법을 체험할 수 있답니다.

 

그리고 
멀티 모듈에 대해서도 지원해 줍니다.

모듈화란 소프트웨어의 구성요소들을 논리적인 그룹으로 나누는 방법이에요. 모듈화를 통해 유지보수, 성능, 보안등을 향상할 수 있죠 예를 들어 어떤 A와 B라는 프로젝트에는 C라는 계산식이 필요해요. 이런 것들을 쉽게 관리하기 위해서 모듈화가 필요하죠. 

settings.gradle

이때 Root 프로젝트는 settings.gradle에서. 하위 프로젝트들은 build.gradle을 통해서 관리합니다. 공통된 설정은 공통된 대로, 공통 모듈은 공통 모듈로 관리 할 수 있습니다.

 

 

 

 

 참고하시면 좋은 글 / 영상 

https://gradle.org/

 

Gradle Build Tool

Accelerate developer productivity. Gradle helps teams build, automate and deliver better software, faster.

gradle.org

https://www.youtube.com/watch?v=V4knLFDG-ZM&t=292s 

 
 
728x90