Java 기초집 전체 커리큘럼
22-LESSON CURRICULUM전체 강의 공개
Java 전체 커리큘럼
터미널 컴파일부터 클래스 책임과 파일 복원을 갖춘 게임 기록 프로그램까지 한 프로젝트로 완성합니다.
강의 수22강
난이도입문 → 초급
최종 결과물게임 기록 관리 Java 콘솔 프로그램
| 강 | 주제 | 핵심 결과 |
|---|---|---|
| 01 | Java와 JVM의 역할: 왜 한 번 작성한 코드가 여러 환경에서 실행될까? | Java 소스는 javac가 바이트코드로 컴파일하고 운영체제별 JVM이 이를 실행합니다 |
| 02 | JDK 설치와 PowerShell에서 첫 Java 프로그램 실행하기 | JDK 설치 완료 기준은 설치 화면이 아니라 java·javac 버전과 경로, 실제 컴파일·실행 성공입니다 |
| 03 | Java 프로그램 구조: class, main 메서드, 컴파일과 실행 | Java 애플리케이션은 클래스의 정확한 main 서명에서 시작합니다 |
| 04 | 변수, 자료형, 타입 변환과 값의 범위 | 타입은 값의 범위와 허용 연산을 정합니다 |
| 05 | 연산자와 비교·논리 연산 | 연산자는 값과 조건을 만들며 우선순위와 단락 평가가 결과를 바꿉니다 |
| 06 | 조건문: if, switch와 게임 점수 등급 계산 | 조건문은 규칙의 순서와 가능한 모든 경우를 코드로 표현합니다 |
| 07 | 반복문: for, while, 반복 제어문 | 반복은 대상, 경계와 종료 상태가 명확해야 합니다 |
| 08 | 배열과 반복 처리: 여러 게임 점수 관리하기 | 배열은 같은 타입의 고정된 여러 값을 순서대로 저장합니다 |
| 09 | 메서드: 코드 중복을 줄이고 책임 나누기 | 메서드는 입력과 출력 계약으로 책임을 나눕니다 |
| 10 | 문자열과 StringBuilder: 텍스트 데이터를 안전하게 다루기 | String은 불변 객체이므로 변환 결과를 받아야 하고 내용은 equals로 비교합니다 |
| 11 | 클래스와 객체: 게임 기록을 하나의 자료로 만들기 | 클래스는 관련 상태와 동작을 정의하고 객체는 그 설계로 만든 독립 인스턴스입니다 |
| 12 | 생성자, this, 캡슐화와 접근 제어자 | 생성자와 private 필드는 객체를 유효한 상태로 만들고 보호합니다 |
| 13 | static, final, enum: 공유 규칙과 변하지 않는 값 표현하기 | static은 클래스 공유, final은 재대입 금지, enum은 제한된 값 집합을 표현합니다 |
| 14 | 상속과 오버라이딩: 공통 기능을 재사용하는 방법 | 상속은 진짜 하위 타입 관계와 치환 가능성이 있을 때 사용합니다 |
| 15 | 인터페이스와 다형성: 교체 가능한 기능 설계하기 | 인터페이스는 교체 가능한 행동의 최소 계약입니다 |
| 16 | 추상 클래스와 인터페이스를 언제 선택할까? | 추상 클래스는 밀접한 타입의 공통 상태·흐름, 인터페이스는 교체 가능한 능력 계약에 사용합니다 |
| 17 | 예외 처리: try-catch, throws, 사용자 입력 오류 대응 | 예외는 실패를 숨기는 장치가 아니라 복구 경계를 표현합니다 |
| 18 | 컬렉션 기초: ArrayList와 List로 기록 목록 관리하기 | List는 순서와 중복이 필요한 동적 기록에 적합하고 ArrayList는 대표 구현입니다 |
| 19 | Set과 Map: 중복 방지와 플레이어별 기록 조회 | List는 기록 순서·중복, Set은 고유값, Map은 key 기반 조회에 사용합니다 |
| 20 | 파일 입출력: 게임 기록을 텍스트 파일로 저장하고 읽기 | 파일 저장은 경로·인코딩·실패 처리의 문제입니다 |
| 21 | 디버깅·테스트 기초와 코드 품질: 오류를 재현하고 고치기 | 오류는 재현 가능한 입력과 기대 결과로 좁혀 고칩니다 |
| 22 | 최종 실습: 게임 기록 관리 콘솔 프로그램 완성하기 | 최종 프로그램은 GameRecord·Service·Store·App의 책임, List·Map·Set, 입력 검증과 UTF-8 파일 복원을 연결합니다 |