프로그래밍에 처음 입문하는 분들을 위한 자바 강의입니다. 코드를 따라하면서 손쉽게 자바를 배울 수 있습니다.
[공지] 자바 중급 1편 오픈 일정 확정
안녕하세요. 여러분
자바 중급 1편 오픈 일정이 3월 28일(목)으로 확정 되었습니다.
중급 편이니 만큼 강의 시간과 분량이 많이 늘었습니다.
김영한의 실전 자바 - 중급 1편
강의 시간: 19시간 20분
강의 수: 약 100강
강의 PDF 자료: 350장
[자바 중급 1편 강의 내용]
Object 클래스
Object 클래스는 모든 클래스의 최상위 부모 입니다. 이 강의에서는 Object 클래스가 필요한 이유와 Object 클래스가 제공하는 기능들을 알아봅니다. 또한 equals()를 통해 자바의 동일성과 동등성 개념도 함께 학습합니다.
불변 객체
한번 생성하면 그 이후로 변하지 않는 객체를 불변 객체라 합니다. 이후에 설명할 String, 래퍼, 날짜와 시간을 포함해서 자바가 제공하는 많은 객체들은 불변 객체로 제공됩니다. 여기서는 불변 객체가 왜 필요한지, 그리고 어떻게 불변 객체를 만드는지 알아봅니다.
String 클래스
String 클래스는 자바에서 문자열을 다룰 때 사용되는 클래스입니다. 여기서는 String 객체의 기본 기능 뿐만 아니라, StringBuilder와 String의 기능과 성능 차이도 알아봅니다. 또한 자바가 String 클래스를 어떻게 최적화하는지 깊이있게 알아봅니다.
래퍼, Class 클래스
자바 기본형의 한계를 알아보고 그 한계를 극복하기 위한 래퍼 클래스를 학습합니다. 래퍼 클래스의 오토 박싱, 주요 메서드도 학습합니다.
추가로 클래스의 정보를 나타내는 Class 클래스, 시스템의 정보를 제공하는 System 클래스, 자주 사용하는 Math, Random 같은 클래스도 함께 알아봅니다.
열거형 - ENUM
열거형은 높은 타입 안전성을 제공하는 훌륭한 기능입니다. 여기서는 단순히 열거형의 문법을 배우는 것이 아니라 본질적으로 열거형이 왜 필요한지 이야기합니다. 그리고 열거형이 없던 시절 직접 구현했던 타입 안전 열거형 패턴도 구현해봅니다. 또한 다양한 예제 코드를 통해 열거형을 실무에서 어떻게 잘 활용할 수 있는지 알아봅니다.
날짜와 시간
날짜와 시간을 계산하는 것은 겉으로는 단순해보이지만 매우 어렵습니다. 그래서 자바가 제공하는 라이브러리를 사용해야 합니다.
여기서는 자바 날짜와 시간 라이브러리의 역사부터 시작해서 어떤 상황에 어떤 날짜와 시간 클래스를 사용해야 하는지 다양한 예제를 통해 정리해드립니다.
중첩 클래스, 내부 클래스
클래스 내부에 클래스를 두는 것을 중첩 클래스 또는 내부 클래스라 합니다. 여기서는 모든 중첩 클래스를 완전히 마스터하는 것을 목표로 합니다.
정적 중첩 클래스, 내부 클래스, 지역 클래스, 익명 클래스까지 모든 중첩 클래스를 설명합니다. 단순히 문법 위주로 설명하는 것이 아니라 어떻게 활용되는지 코드와 예제로 설명합니다. 특히 어려운 개념인 지역 변수 캡처에 대해서도 그림으로 쉽게 풀어서 설명합니다.
예외 처리
자바에서 예외 처리는 문법은 단순하지만 예외 처리가 왜 필요하고 또, 실무에서 어떻게 활용해야 할지 제대로 이해하는 것은 어렵습니다. 여기서는 먼저 예외 처리가 없던 시절로 갑니다. 그리고 예제 코드를 점진적으로 개선해가면서 본질적으로 예외 처리가 왜 필요한지, 그 이유를 하나씩 찾아갑니다.
마지막으로 실무에서 어떤 방식으로 예외를 처리하는게 좋은지 실무 베스트 프렉티스도 알려드립니다.
김영한의 실전 자바 - 중급 2편
- 오픈 예정 일정: 5월 초
자바 중급 2편 내용
중급 2편은 제네릭과 컬렉션을 깊이있게 다룹니다.
특히 컬렉션의 경우 실무에서 주로 사용하는 자료 구조를 직접 구현하면서 원리를 이해합니다. 그래서 각각의 자료구조가 어떤 경우에 성능이 좋고 어떤 경우에는 성능이 나쁜지 근본적인 이유들을 이해하고 활용할 수 있게 됩니다.
감사합니다.