본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.
자바 첫걸음: 왕초보를 위한 자바 기초 강의 후기 (언어 소개, 실행 원리, 코드 구조)

안녕하세요! 코딩의 세계에 이제 막 발을 들인 여러분, 그리고 자바에 대한 호기심으로 이 글을 클릭하신 모든 분들 반갑습니다! 👋
오늘은 제가 최근에 들었던 자바 기초 강의 내용을 바탕으로, 자바라는 언어와 처음 만난 설렘과 배움의 과정을 공유해볼까 합니다. 프로그래밍의 '프'자도 잘 몰랐던 제가 자바의 세계에 첫발을 내딛는 이야기, 지금부터 시작합니다! 😊
이번 시간에는 자바가 도대체 어떤 언어인지 알아보고, 우리가 작성한 자바 코드가 어떻게 컴퓨터가 알아들을 수 있는 언어로 변신해서 실행되는지 그 신기한 원리도 파헤쳐 볼 거예요. 그리고 가장 기본적인 자바 코드의 구조까지! 저처럼 자바를 처음 시작하시는 분들께 조금이나마 길잡이가 되었으면 하는 마음으로 정리해봤습니다. 자, 그럼 함께 자바의 세계로 떠나볼까요? 🚀

1. 자바(Java), 넌 대체 누구니? 🤔 (자바 언어 소개)
강의 첫 시간에 가장 먼저 다룬 내용은 바로 "자바란 무엇인가?" 였습니다. 1995년 썬 마이크로시스템즈(Sun Microsystems, 지금은 오라클에 인수되었죠!)에서 개발한 프로그래밍 언어인데, 정말 오랫동안 전 세계 개발자들에게 사랑받고 있는 언어 중 하나라고 해요.
자바의 가장 큰 특징 몇 가지를 꼽자면 다음과 같습니다.
- 객체 지향 프로그래밍 (Object-Oriented Programming, OOP) 언어: 세상을 바라보는 방식처럼, 관련된 데이터와 기능을 '객체'라는 단위로 묶어서 프로그램을 설계하고 개발하는 방식이에요. (아직은 좀 어렵지만, 앞으로 계속 배우게 될 핵심 개념이라고 강조하셨어요!)
- 플랫폼 독립성 (Platform Independence): 이게 정말 자바의 강력한 무기인데요! ✨ "Write Once, Run Anywhere (한 번 작성하면, 어디서든 실행된다)"라는 유명한 슬로건이 있죠? 운영체제(윈도우, 맥, 리눅스 등)에 상관없이 자바 실행 환경(JVM)만 있으면 코드를 수정하지 않고 동일하게 실행할 수 있다는 뜻입니다. 정말 매력적이지 않나요?
- 다양한 활용 분야: 웹 서버 개발(백엔드), 안드로이드 앱 개발, 빅데이터 처리, 데스크톱 애플리케이션 등 정말 안 쓰이는 곳을 찾기 힘들 정도로 활용 범위가 넓다고 합니다. 우리가 매일 사용하는 많은 서비스 뒤에 자바가 숨 쉬고 있을지도 몰라요!
2. 자바와 설레는 첫 만남: Hello, Java World! 👋 (자바 시작하기)
자, 이제 이론은 잠시 접어두고, 직접 자바 코드를 만나볼 시간입니다! 어떤 프로그래밍 언어든 처음 배울 때 국룰처럼 하는 게 있죠? 바로 "Hello, World!" 출력하기!
자바 코드를 작성하고 실행하려면 먼저 JDK(Java Development Kit) 라는 개발 도구를 설치해야 해요. (강의에서는 이 설치 과정부터 차근차근 알려주셨답니다!)
설치가 완료되었다면, 드디어 첫 자바 코드를 작성해 봅시다!

public class HelloWorld {
public static void main(String[] args) {
// 이 부분이 화면에 글자를 출력하는 명령입니다!
System.out.println("Hello, Java World!");
}
}
이 코드를 HelloWorld.java 라는 이름으로 저장하고, 특정 명령어(컴파일 및 실행)를 통해 실행하면…
실행 결과:
Hello, Java World!
짜잔! 🎉 화면에 우리가 입력한 문장이 나타났습니다! 비록 간단한 한 줄이지만, 내가 쓴 코드가 실제로 동작하는 것을 보니 정말 신기하고 뿌듯하더라고요.
(잠깐! 코드 속 public class HelloWorld, public static void main(String[] args), System.out.println 같은 낯선 용어들은 아래 '코드 구조' 섹션에서 조금 더 자세히 설명할게요!)
3. 내 코드가 컴퓨터 언어로? 마법의 번역기 JVM! ✨ (자바 코드가 실행되는 원리)
우리가 영어로 된 문서를 한국어로 번역해야 뜻을 알 수 있듯, 컴퓨터도 우리가 작성한 자바 코드를 바로 이해하지는 못합니다. 컴퓨터가 알아들을 수 있는 언어로 번역하는 과정이 필요한데요, 자바는 이 과정이 조금 독특합니다.
- 컴파일 (Compile): 우리가 작성한 자바 코드(.java 파일)를 자바 컴파일러(javac 라는 도구)를 이용해 바이트 코드(Bytecode) 라는 특별한 중간 언어(.class 파일)로 변환합니다. 이 바이트 코드는 아직 컴퓨터가 직접 실행할 수는 없어요.
- 실행 (Execution): 이때 등장하는 것이 바로 JVM(Java Virtual Machine, 자바 가상 머신) 입니다! JVM은 이 바이트 코드를 현재 컴퓨터의 운영체제(OS)가 이해할 수 있는 기계어로 실시간으로 번역하고 실행시켜 줍니다.
여기서 중요한 포인트! ✨ 윈도우용 JVM, 맥용 JVM, 리눅스용 JVM 등 각 운영체제에 맞는 JVM이 있기 때문에, 우리는 바이트 코드(.class 파일)만 만들어 놓으면 어떤 운영체제든 JVM만 설치되어 있으면 동일하게 프로그램을 실행할 수 있는 거예요. 이게 바로 위에서 말한 자바의 플랫폼 독립성("Write Once, Run Anywhere")의 비밀입니다! JVM은 마치 각 나라 언어에 능통한 번역가 같다고 생각하면 이해하기 쉬울 것 같아요.
4. 약속! 자바 코드의 기본 골격 뼈대 세우기 🏗️ (자바의 코드 구조)
다시 아까 봤던 "Hello, World!" 코드를 살펴볼까요? 자바 코드는 일정한 규칙과 구조를 가지고 있습니다.
// public class 클래스이름 { ... } : 자바 코드의 가장 기본적인 단위인 '클래스'를 정의합니다.
public class HelloWorld {
// public static void main(String[] args) { ... } : 프로그램이 시작되는 지점, '메서드' 중 하나입니다.
// 자바 프로그램을 실행하면 JVM은 이 main 메서드를 가장 먼저 찾아서 실행해요! (약속!) ✨
public static void main(String[] args) {
// System.out.println("..."); : 괄호 안의 내용을 화면에 출력하는 기능을 가진 '명령문(Statement)'입니다.
// 문장의 끝은 반드시 세미콜론(;)으로 마무리해야 합니다. (약속!)
System.out.println("Hello, Java World!");
} // main 메서드 끝
} // HelloWorld 클래스 끝
// 슬래시 두 개(//) 뒤에 오는 내용은 '주석'이라고 하며, 코드에 대한 설명을 적을 때 사용합니다.
// 주석은 프로그램 실행에 영향을 주지 않아요.
- 클래스 (Class): 자바 프로그램의 기본 단위입니다. class 키워드 뒤에 원하는 클래스 이름을 적고, 중괄호 {} 안에 클래스의 내용을 작성합니다. 모든 자바 코드는 클래스 안에 작성되어야 해요. (마치 건물의 설계도 같다고 생각하면 이해가 쉬울까요?)
- 메서드 (Method): 클래스 안에서 특정 기능을 수행하는 코드 묶음입니다. main 메서드는 JVM과의 약속된 특별한 메서드로, 프로그램의 시작점 역할을 합니다. 앞으로 우리는 다양한 기능을 하는 여러 메서드를 만들고 사용하게 될 거예요.
- 명령문 (Statement): 실제로 어떤 작업을 수행하는 코드 한 줄 한 줄을 의미합니다. 자바에서는 각 명령문이 끝날 때 반드시 세미콜론(;)을 붙여줘야 합니다. (이거 자주 깜빡해서 오류 많이 낸다고 하네요! 😂)
와! 오늘은 자바라는 언어의 특징부터 시작해서, 첫 코드를 작성하고 실행하는 방법, 그리고 그 코드가 어떤 과정을 거쳐 우리 눈앞에 나타나는지, 마지막으로 코드의 기본적인 뼈대까지! 정말 많은 내용을 훑어봤네요! 🤓
처음에는 클래스니, 메서드니, JVM이니 하는 용어들이 낯설고 어렵게 느껴질 수 있어요. 저도 강의 들으면서 고개를 갸웃거렸던 순간들이 많았답니다.😅 하지만 직접 'Hello, World!' 코드를 따라서 입력해보고, 실행 결과까지 확인하니 뭔가 해낸 것 같은 기분이 들고 재미있더라구요! 역시 '백문이 불여일타'죠? 😉 앞으로 배울 내용들이 더 기대됩니다!

오늘 내용은 여기까지입니다! 꾸준히 새로운 것을 배우고 익히는 과정은 언제나 즐거운 것 같아요.
이번 한 주도 코딩 공부하시느라 (혹은 각자의 자리에서 열심히 달리시느라!) 정말 수고 많으셨습니다. 다가오는 새로운 한 주도 활기차게 시작하시고, 즐거운 마음으로 또 성장해나가요! 화이팅! 💪
'데이터 엔지니어링' 카테고리의 다른 글
| 패스트캠퍼스 환급챌린지 22일차: 데이터엔지니어링 초격차 강의 후기 (0) | 2025.04.22 |
|---|---|
| 패스트캠퍼스 환급챌린지 21일차: 데이터엔지니어링 초격차 강의 후기 (1) | 2025.04.21 |
| 패스트캠퍼스 환급챌린지 19일차: 데이터엔지니어링 초격차 강의 후기 (0) | 2025.04.19 |
| 패스트캠퍼스 환급챌린지 18일차: 데이터엔지니어링 초격차 강의 후기 (0) | 2025.04.18 |
| 패스트캠퍼스 환급챌린지 17일차: 데이터엔지니어링 초격차 강의 후기 (0) | 2025.04.17 |