3.1 개발 환경 구성 (JDK, IntelliJ)

김찬미·2024년 6월 4일

이번 글에선 스프링 부트 기반의 프로젝트를 진행하기 위한 전반적인 개발 환경 구축에 대해 알아보자. 먼저 앞으로 책에서 사용할 개발 환경은 다음과 같다.

스프링 부트 완벽 가이드의 개발 환경

  • Windows 10 64-bit
  • IntelliJ Ultimate
  • JDK 11 JDK 17
  • 스프링 부트 2.5.6~2.5.8
  • MariaDB 10.6.5
  • Maven

책에 나온 개발 환경에선 JDK 11을 사용했지만, 난 스프링 부트 3.X.X 프로젝트도 병행중이기에 JDK를 17로 수정해주었다.

이중에 내가 사용해보지 않은 것은 MariaDB와 Maven이다. 평소엔 Gradle을 이용해 개발을 했기에 이 프로젝트는 Maven으로 진행을 하며 공부해 보려고 한다.

여기선 JDK와 IntelliJ에 대해 간단히 소개해보겠다. (+설치 방법)

JDK(java Development Kit)

Java Development Kit (JDK) 란, Java 개발자들이 자바 애플리케이션, 애플릿, 그리고 구성 요소를 개발하는 데 필요한 도구와 라이브러리의 집합이다. JDK는 다음과 같은 주요 구성 요소로 이루어져 있다.

JDK의 구성 요소

  • Java 컴파일러 (javac) : 자바 소스 파일(.java)을 바이트코드(.class)로 컴파일한다. 바이트코드는 자바 가상 머신(JVM)이 실행할 수 있는 형식이다.

  • Java 런타임 환경 (JRE) : 자바 애플리케이션을 실행하는 데 필요한 JVM, 클래스 라이브러리, 그리고 다른 구성 요소들을 포함한다. JRE는 JDK의 부분 집합으로, 애플리케이션 실행만을 위한 환경을 제공한다.

  • 자바 표준 라이브러리 : 자바 개발에 필요한 표준 API를 포함하고 있습니다. 이 라이브러리는 컬렉션, 파일 I/O, 네트워크, 데이터베이스 연결 등의 다양한 기능을 제공한다.

JDK는 Oracle JDK, OpenJDK, 그리고 Amazon Corretto와 같은 다양한 배포판으로 제공된다. 이 배포판들은 대부분 비슷한 기능을 제공하지만, 라이선스 정책이나 추가 기능에서 차이가 있을 수 있다.

JDK는 자바 개발의 필수적인 도구로, 자바 프로그래밍 언어를 사용하여 애플리케이션을 개발하고 배포하는 데 핵심적인 역할을 한다. JDK를 설치함으로써 개발자는 자바 소스 코드를 작성하고, 컴파일하고, 디버깅하고, 실행할 수 있는 모든 필요한 도구를 사용할 수 있다.

인텔리제이 IDEA(IntelliJ IDEA)

인텔리제이 IDEA는 제트브레인(Jetbrains)에서 제작한 자바용 IDE(통합 개발 환경)이다. 이전에는 자바용 IDE로 이클립스(Eclipse)가 가장 많이 사용되었는데, 최근에는 인텔리제이 IDEA가 많이 사용되는 추세이다.

에디션 종류

IntelliJ IDEA는 두 가지 에디션으로 제공된다.

  • Community Edition: 무료로 제공되며, 주로한다.및 Kotlin 개발에 필요한 기본적인 기능을 포함한다.
  • Ultimate Edition: 유료로 제공되며, 웹 개발, 엔터프라이즈 개발, 데이터베이스 툴, 고급 코드 분석 및 디버깅 도구 등의 추가 기능을 포함한다.

사용 장점

  • 생산성 향상: 다양한 자동화 도구와 코드 완성 기능으로 개발 속도를 높일 수 있다.
  • 강력한 디버깅: 디버깅과 테스팅 도구를 통해 코드 품질을 높이고, 버그를 효율적으로 잡을 수 있다.
  • 풍부한 플러그인 생태계: 필요에 따라 다양한 기능을 추가할 수 있어 확장성이 뛰어나다.

IntelliJ IDEA는 강력한 기능과 사용자 친화적인 인터페이스로 인해 개발자들 사이에서 인기를 끌고 있으며, 특히 자바 개발을 하는데 매우 유용한 도구로 자리잡고 있다.

나 또한 이클립스에서 인텔리제이로 넘어왔을 때 신세계였다. 일단 인터페이스가 굉장히 깔끔하고 호환성과 확장성이 뛰어난 점이 좋은 것 같다.

다음 장에선 Gradle과 Maven의 차이에 대해 말해보려 한다. 잘 공부해두자!

profile
백엔드 지망 학부생

0개의 댓글