데이터 엔지니어가 되기 위해 우선 백엔드 공부를 진행하고자 한다. 가장 처음 공부할 것은 바로 "Java" 이다. Python 이나 C, C++ 등 다양한 언어를 접해보았지만, Java 는 처음이다. 자바를 공부하고자 선정한 책은 바로 "혼자 공부하는 자바" 이다.

여기에서는 이클립스를 툴로 사용하고 있지만, 나는 Intellij 를 사용하고자 한다. 그 이유는 개발자들에게 더 많이 사용되기도 하고, 더 편리하다고 판단하기 때문이다.
Topics
- Java Program 개발 과정
- Program Source Analysis
Java Program 개발 과정
자바 프로그램을 개발하기 위해서는 파일 확장명이 .java 인 텍스트 파일을 생성하고, 자바 언어로 코드를 작성하여야 한다.

Java Source File 은 운영체제에서 바로 실행될 수 없고, JVM 번역기가 필요하다. 그렇다면, 여기서 말하는 JVM 은 무엇일까?
JVM (Java Virtual Machine) 은 JDK에 포함되어있는 소프트웨어이다. JDK는 Java Development Kit 의 약자로, 자바 개발 도구라는 의미이다. 이 JDK는 Open JDK와 Oracle JDK로 나뉜다.
| JDK | Open JDK | Oracle JDK |
| 개발 및 학습용 | 무료 | 무료 |
| 상업용 | 무료 | 유료 |
이 중에서, Oracle JDK를 사용하는 것을 추천하는데, 그 이유는 우선 LTS (Long Term Support : 장기 지원) 서비스를 제공하여 기술 지원 및 버그를 개선한 update version을 꾸준히 받을 수 있어서이다.
Java 특징
1. 모든 운영체제에서 실행 가능
- 윈도우에서 개발된 프로그램을 수정하지 않고 바로 리눅스에서도 실행할 수 있다.
2. 객체지향 프로그래밍 (OOP : Object-Oriented Programming)
- 객체(부품)를 만들고, 이 객체들을 서로 연결해서 더 큰 프로그램을 완성하는 기법
3. 메모리 자동 정리
- 자바는 메모리(RAM)를 자동 관리하므로 (Garbage collector의 역할이지 않을까 생각한다), 개발자는 메모리를 관리하는 수고를 덜 수 있다.
4. 무료 라이브러리 풍부
- 무료로 다운로드해서 사용할 수 있는 오픈 소스 라이브러리가 풍부하여 프로그램 개발 기간을 단축한다.
Program Source Analysis
package sec03.exam01;
Public class Hello {
}
Public class 는 클래스 선언부, Hello 는 클래스 이름이다. 클래스 이름은 소스 파일명과 동일하여야 한다 (대소문자도 일치).
{ .. } 부분은 Class block 이라고 한다. Source file 에서, 어떤 패키지에서 생성되었다고 하는 정보가 있어야 한다.
소스 코드 상단 위에 패키지 선언이 필요하다.
- Class : Field 또는 method 를 포함하는 블록
- Method : 어떤 일을 처리하는 실행문들을 모아 놓은 블록
Javac 명령어로 컴파일하면 클래스 이름에 .class 가 붙어 Byte code file 이 생성된다. 근데, Java 명령어로 Byte code file 을 생성하려면 클래스 블록 내부에 main() 메소드 블록을 가지고 있어야 한다.
public static void main(String[] args) {
system.out.println("Hello, Java");
}
Public static void 부분을 메소드 선언부라고 하고, main 을 메소드 이름, {...} 부분을 메소드 블록이라고 한다.
따라서, Java 명령어로 Byte code file 을 실행하면 제일 먼저 main() 메소드를 찾아 블록 내부를 실행한다. 이러한 특징을 이름으로 판단하여 main() method 를 진입점 (entry point) 이라고 한다.
주석 사용
주석이란, 코드에 설명을 붙인 것으로 프로그램 실행과는 상관이 없다. 해석에 용이할 수 있도록 적극적으로 사용을 권장한다 (단, 문자열 내부에는 사용이 불가능함).
| 구분 | 주석 기호 | 설명 |
| 라인 주석 | // ... | // 부터 라인 끝까지 주석 처리 |
| 범위 주석 | /* ... */ | /* 부터 */ 사이에 있는 내용 주석 처리 |
| document 주석 | /** ... */ | /** 부터 */ 사이에 있는 내용 주석 처리 주로 Javadoc 명령어로 API document 생성하는 데 사용함 |
실행문과 세미콜론(;)
실행문이란 변수 선언, 값 저장, 메소드 호출에 해당하는 코드로 실행문 끝에는 반드시 세미콜론이 들어가야 한다. (c, c++과 동일)
'Java' 카테고리의 다른 글
| Java study Day 5 - TIL (3) | 2024.04.30 |
|---|---|
| Java study Day 4 - TIL (0) | 2024.04.05 |
| Java study Day 3 - TIL (0) | 2024.03.29 |
| Java study Day 2 - TIL (2) | 2024.03.13 |