자바를 공부하는 것은 다양한 애플리케이션 개발을 위한 필수적인 과정이다!
웹, 모바일, AI 등 다양한 분야에 필수적인 객체 지향 언어 자바. 이제 체계적으로 배우자!
웹에 강한 언어인 자바는 모바일뿐만 아니라 빅 데이터 처리나 AI 등의 신기술 영역에서도 사용되어 갈수록 활용률이 늘어나고 있습니다. 자바 언어는 오랜 시간이 지나도 그 위용이 떨어지지 않습니다.
이 책은 20년 이상 자바를 강의해 온 저자가 자바 언어를 처음 접하는 학습자들에게 적합하도록 집필했으며, 자바 언어를 다루는 방법을 상세하면서도 복잡하지 않은 설명을 통해 알려 줍니다. 자바를 완전히 처음 접하는 입문자, 공부하다가 그만두었거나 공부한 지 오래된 재학습자, 꼭 필요한 부분만 빠르게 훑어보고 싶은 실무자까지 이 책을 통해 자바를 체계적으로 배울 수 있습니다.
이 책의 모든 내용은 최신 버전인 자바 21에 맞춰 제작되었으며, 그대로 따라 해 볼 수 있는 실전 예제 코드를 제공합니다.
■ 자바는 플랫폼 독립성을 갖춘 객체 지향 프로그래밍 언어로, 강력한 표준 라이브러리와 멀티스레딩 지원하는 언어로, 오랫동안 꾸준히 지원되며 특히 한국에서는 계속해서 높은 사용률을 보입니다. 웹 개발부터 모바일 애플리케이션, 게임, 최신 기술인 AI 영역까지 자바는 폭넓게 사용되고 있으며, 백엔드 프로그래머라면 필수적으로 배우고 넘어가는 기본적인 소양이기도 합니다.
하지만 자바는 그 오랜 역사만큼 최근 언어에 비해서는 복잡한 면이 있습니다. 처음으로 자바를 배우는 사람들은 여러모로 어려움을 겪기도 하기에 체계적인 학습이 필요합니다. 이 책은 그런 사람들을 위해 실제로 사용되는 게시판, 데이터베이스 등을 만들어 보는 실전 예제를 수록하여 자바의 기초부터 실무까지 익힐 수 있도록 하였습니다.
이 책은 크게 15개의 챕터로 이뤄져 있습니다.
1. 자바의 개요 및 환경 설정
대표적인 객체 지향 프로그래밍 언어인 자바의 역사 및 특징에 대해 살펴보고 자바로 프로그래밍을 할 수 있는 개발 환경을 세팅합니다.
2. 자바의 기본 문법 ? 1
자바 프로그램이 작성 및 실행되는 단계를 학습하고 식별자, 자바 주석, 변수 선언, 데이터 타입, 형 변환, 연산자 등 기본적인 자바 문법을 살펴봅니다.
3. 자바의 기본 문법 ? 2
코딩을 하면서 전체 프로그램의 실행 순서를 제어하기 위해 빈번하게 사용되는 조건문, 반복문 등의 제어문에 대해 다양한 예제를 통해 학습합니다.
4. 자바의 기본 문법 ? 3
관련이 있는 여러 개의 데이터를 저장하여 효율성을 높여 주는 배열에 대해 학습합니다.
5. 클래스 기본
객체 지향 언어의 핵심인 클래스의 기본 개념 및 기능에 대해서 살펴봅니다.
6. 클래스 고급
클래스의 기본 기능을 바탕으로 고급 기능이라 할 수 있는 상속 기능, 클래스의 구성 예약어, 다형성에 대해서 학습합니다.
7. 추상 클래스, 인터페이스, 내부 클래스
특정 단위의 기능을 정의하는 데 사용할 수 있는 추상 클래스와 인터페이스, 외부 클래스에 정의되어 있는 데이터들에 좀 더 쉽게 접근하기 위해 사용하는 내부 클래스에 대해 살펴봅니다.
8. 예외 처리와 유용한 클래스들
프로그램의 비정상적인 종료를 막아 주는 예외 처리, 가장 빈번히 사용되는 String 클래스, 그 외에 enum, 오토박싱, static import, 날씨 관련 클래스, Math, Random, StringTokenizer 등 유용하게 사용할 수 있는 클래스들을 살펴봅니다.
9. 컬렉션
데이터들을 효율적으로 관리할 수 있게 제공해 주는 컬렉션 프레임워크에 대해서 살펴봅니다.
10. 스레드
동시에 처리해야 하는 작업이나 오래 걸리고 복잡한 작업을 나누어 처리할 수 있게 해 주는 스레드에 대해서 살펴봅니다.
11. 입출력
프로그램에서 다른 대상(자원)으로 데이터를 보내거나 다른 대상에서 데이터를 읽어 들이는 데 필요한 기능을 제공해 주는 API들을 학습합니다.
12. 네트워크
다른 컴퓨터에서 데이터를 읽어 들이거나 다른 컴퓨터에 데이터를 출력하는 네트워크에 대해 살펴봅니다.
13. 데이터베이스(DB)
가장 보편적으로 사용되고 있는 DBMS인 Oracle을 이용해서 자바의 DB 관련 처리 방법을 학습합니다.
14. 람다식
함수식을 생성할 때 클래스를 만들지 않고 익명 메소드를 만들어서 사용할 수 있게 해 주는 람다식을 배우며, 람다식 표현법, 함수형 인터페잇, 메소드 참조, 생성자 참조 등에 대해서 살펴봅니다.
15. 스트림 / 병렬 처리
컬렉션 객체의 요소를 효율적으로 다룰 수 있고 코드를 훨씬 간결하게 만들어 주는 스트림에 대해서 살펴봅니다. 또한 하나의 작업을 여러 개의 단위로 분리하여 동시에 작업을 처리할 수 있게 해 주는 병렬 처리에 대해 살펴봅니다.