본문 바로가기
인프런 강의/실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

Gradle란 무엇인가

by 해삼2 2024. 1. 10.
728x90
반응형
Gradle란

 

Gradle은 소프트웨어 빌드 도구로, Groovy DSL(Groovy Domain-Specific Language)을 사용하여 

프로젝트를 빌드하고 관리하는데 사용됩니다. 

Gradle은 Apache Ant와 Apache Maven의 장점을 결합하여 강력하면서도 유연한 빌드 

시스템을 제공합니다.

 

Gradle 주요 특징

 

Groovy DSL: 

Gradle은 빌드 스크립트를 작성하기 위해 Groovy DSL을 사용합니다. 

이는 Java와의 호환성이 뛰어나며, 더 간결하고 가독성이 높은 문법을 제공합니다.

유연성과 확장성: 

Gradle은 강력하면서도 유연한 빌드 스크립트를 작성할 수 있습니다. 

사용자는 기본적인 빌드 라이프사이클과 태스크를 정의하면서 필요에 따라 확장할 수 있습니다.

플러그인 시스템: 

Gradle은 다양한 플러그인을 제공하고, 

사용자가 직접 플러그인을 작성하여 빌드 프로세스를 확장할 수 있습니다. 

Android, Java, Scala, 등 다양한 언어 및 프레임워크에 대한 플러그인을 지원합니다.

멀티 프로젝트 빌드: 

Gradle은 여러 프로젝트를 하나의 빌드로 관리할 수 있는 멀티 프로젝트 빌드를 지원합니다. 

이를 통해 여러 모듈이나 하위 프로젝트 간의 의존성을 관리할 수 있습니다.

병렬 빌드와 캐시 기능: 

Gradle은 빌드 작업을 병렬로 실행하여 성능을 향상시킬 수 있습니다. 

또한 이전에 빌드한 결과를 캐시하여 반복 빌드 시간을 최소화합니다.

Android 빌드 지원: 

안드로이드 애플리케이션을 빌드하는 데에도 많이 사용되며, 안드로이드 스튜디오와의 통합이 원활합니다.

Gradle은 많은 기업 및 오픈 소스 프로젝트에서 사용되며, 강력한 기능과 확장성으로 인해 많은 

개발자들에게 선호되고 있습니다.

 

빌드란

 

빌드 도구(build tool)는 소프트웨어 개발 과정에서 소스 코드를 실행 가능한 어플리케이션 또는 라이브러리로 만들어주는 도구입니다. 빌드 도구는 소스 코드의 컴파일, 의존성 관리, 테스트 실행, 패키징, 문서 생성 등의 작업을 자동화하여 개발자가 일관된 방식으로 프로젝트를 관리할 수 있도록 돕는 것을 빌드라고 합니다.

 

빌드 도구 

 

Apache Ant: 

초기에 많이 사용되었던 빌드 도구 중 하나로 XML 기반의 빌드 스크립트를 사용합니다. 

간단하고 직관적인 구조를 가지고 있습니다.

Apache Maven: 

XML 기반의 빌드 도구로, 프로젝트 객체 모델(POM)을 사용하여 빌드 설정을 관리합니다. 

의존성 관리, 라이프사이클, 플러그인 시스템 등을 제공하여 일관된 프로젝트 구조를 유지하고 

다양한 라이브러리를 관리할 수 있습니다.

Gradle: 

Groovy DSL을 사용하는 빌드 도구로, Apache Maven과 Apache Ant의 장점을 결합하여 강력하면서도 

유연한 빌드 시스템을 제공합니다. 

스크립트 작성이 간결하고, 빌드 성능이 우수한 특징을 가지고 있습니다.

빌드 도구를 사용함으로써 개발자는 빌드 프로세스를 효과적으로 관리할 수 있으며, 

일관된 빌드 설정을 통해 팀 전체의 협업을 용이하게 할 수 있습니다. 

또한, 의존성 관리, 자동화된 테스트 실행, 배포 작업 등을 통해 소프트웨어 개발 생명 주기를 효과적으로 

관리할 수 있습니다.

 

 

*바쁜 사람을 위한 정리

Gradle란 소프트웨어 빌드 도구로, Groovy언어를 기반으로 사용하여 프로젝트를 빌드하고 관리하는데 사용하며 Apache Ant, Apache Maven의 장점을 다 모아 만든 것 입니다. 여기서 빌드란 소스 코드를 실행 가능한 어플리케이션으로 만들어 주는 것을 의미합니다. 
또한 Gradle은 Java 소스 코드로 구성된 프로젝트를 빌드하기 위해 Groovy나 Kotlin과 같은 스크립트 언어를 사용합니다. 하지만 사용자가 Java로 프로젝트를 작성하더라도 Gradle은 해당 프로젝트를 빌드하기 위해 자동으로 Groovy 스크립트를 생성하고 사용합니다.
즉 자바 언어로 된 소스를 Gradle라는 빌드 도구를 사용하면 자동으로 Groovy 스크립트를 생성하여
빌드를 해준다 라고 생각 하면 이해하기 쉬울거 같습니다.

 

728x90
반응형