신간도서

신간도서

윤성우의 열혈 JAVA 프로그래밍

  • 저자윤성우
  • 관련분야프로그래밍
  • 발행일2017-07-05
  • 정가30,000원
  • 페이지901 페이지
  • ISBN978-89-96094-07-4
  • 책소개
  • 저자소개
  • 목차
  • 출판사 서평
최신 내용을 바탕으로 새롭게 집필된 자바책이다. 자바 8이 발표되면서 초보자들에게 어려울 수 있는 문법적 요소가 상당수 포함이 되었으나 저자 특유의 쉽고 명확한 설명을 통해서 어렵지 않게 해당 내용들을 설명한 책이다.

본서의 설명에는 독자들을 고려한 과하지 않은 스토리가 부분부분 담겨 있다. 때문에 상대적으로 재미를 느끼며 자바를 공부할 수 있다.그리고 이미 검증되고 알려진 저자의 인터넷 강의도 들을 수 있다. 인터넷 강의는 저자가 운영하는 네이버 카페를 통해서 제공이 되므로 기간 제한 없이 누구나 들을 수 있다.

윤성우

 

벤처회사에서 개발자로 일하다가 IT분야의 집필과 강의로 처음 이름이 알려진 그는 2000년대 초반까지는 소프트웨어 아키텍트(Architect)로 일을 하다가, 2004년부터 지금까지 OpenGL-ES 그래픽스 라이브러리의 구현과 3D 가속 칩의 개발 및 크로노스 그룹(모바일 국제 표준화 컨소시엄)의 표준안에 관련된 일에 참여하였다. 또한 핸드폰용 DMB 칩의 개발에도 참여하였으며, 현재는 ㈜액시스소프트의 CTO로 있으면서 웹 기반 솔루션 개발에 관심을 갖고 있다. 시간이 날 때마다 조깅을 하며 다양한 구상을 하는 저자는, 방법론에 근거한 소프트웨어 설계 전문가가 모든 분야에서 활발히 활동하여 소프트웨어 발전에 기여해야 한다는 생각을 갖고 있다.

Chapter 01. Let’s Start JAVA! 
01-1. 자바의 세계로 오신 여러분을 환영합니다.
01-2. 자바 프로그램과 실행의 원리에 대한 이해
01-3. 첫 번째 자바 프로그램의 관찰과 응용
01-4. 들여쓰기와 컴파일의 대상에서 제외되는 주석!




Chapter 02. 변수와 자료형 
02-1. 변수의 이해와 활용
02-2. 정수의 표현 방식 이해하기
02-3. 실수의 표현 방식 이해하기
02-4. 자바의 기본 자료형




Chapter 03. 상수와 형 변환 

03-1. 상수(Constants)
03-2. 형 변환




Chapter 04. 연산자(Operators) 
04-1. 자바에서 제공하는 이항 연산자들
04-2. 자바에서 제공하는 단항 연산자들
04-3. 비트를 대상으로 하는 연산자들




Chapter 05. 실행 흐름의 컨트롤 
05-1. if 그리고 else
05-2. switch와 break
05-3. for, while 그리고 do~while
05-4. break & continue
05-5. 반복문의 중첩




Chapter 06. 메소드와 변수의 스코프 
06-1. 메소드에 대한 이해와 메소드의 정의
06-2. 변수의 스코프
06-3. 메소드의 재귀 호출




Chapter 07. 클래스와 인스턴스 
07-1. 클래스의 정의와 인스턴스의 생성
07-2.생성자(Constructor)와 String 클래스의 소개
07-3. 자바의 이름 규칙(Naming Rule) 




Chapter 08. 패키지와 클래스 패스 
08-1. 클래스 패스(Class Path)
08-2. 패키지(Package)의 이해




Chapter 09. 정보 은닉 그리고 캡슐화 
09-1. 정보 은닉 (Information Hiding)
09-2. 접근 수준 지시자 (Access-level Modifiers)
09-3. 캡슐화 (Encapsulation)





Chapter 10. 클래스 변수와 클래스 메소드 
10-1. static 선언을 붙여서 선언하는 클래스 변수
10-2. static 선언을 붙여서 선언하는 클래스 메소드
10-3. System.out.println() 그리고 public static void main()
10-4. 또 다른 용도의 static 선언 




Chapter 11. 메소드 오버로딩과 String 클래스 
11-1. 메소드 오버로딩 (Method Overloading)
11-2. String 클래스
11-3. String 클래스의 메소드 




Chapter 12. 콘솔 입력과 출력 
12-1. 콘솔 출력 (Console Output)
12-2. 콘솔 입력 (Console Input)




Chapter 13. 배열 (Array) 
13-1. 1차원 배열의 이해와 활용
13-2. enhanced for문 
13-3. 다차원 배열의 이해와 활용 




Chapter 14. 클래스의 상속 1: 상속의 기본 
14-1. 상속의 기본 문법 이해
14-2. 클래스 변수, 클래스 메소드와 상속 




Chapter 15. 클래스의 상속 2: 오버라이딩 
15-1. 상속을 위한 두 클래스의 관계
15-2. 메소드 오버라이딩
15-3. instanceof 연산자




Chapter 16. 클래스의 상속 3: 상속의 목적 
16-1. 상속이 도움이 되는 상황의 소개
16-2. Object 클래스와 final 선언 그리고 @Override 



Chapter 17. 인터페이스와 추상 클래스 
17-1. 인터페이스의 기본과 그 의미
17-2. 인터페이스의 문법 구성과 추상 클래스



Chapter 18. 예외처리 (Exception Handling) 
18-1. 자바 예외처리의 기본
18-2. 예외처리에 대한 나머지 설명들 



Chapter 19. 자바의 메모리 모델과 Object 클래스 
19-1. 자바 가상머신의 메모리 모델
19-2. Object 클래스



Chapter 20. 자바의 기본 클래스 
20-1. 래퍼 클래스 (Wrapper 클래스)
20-2. BigInteger 클래스와 BigDecimal 클래스 
20-3. Math 클래스와 난수의 생성, 그리고 문자열 토큰(Token)의 구분 
20-4. Arrays 클래스 



Chapter 21. 제네릭(Generics) 1 
21-1. 제네릭의 이해
21-2. 제네릭의 기본 문법



Chapter 22. 제네릭(Generics) 2 
22-1. 제네릭의 심화 문법



Chapter 23. 컬렉션 프레임워크 1 
23-1. 컬렉션 프레임워크의 이해
23-2. List 인터페이스를 구현하는 컬렉션 클래스들 
23-3. Set 인터페이스를 구현하는 컬렉션 클래스들 
23-4. Queue 인터페이스를 구현하는 컬렉션 클래스들
23-5. Map 인터페이스를 구현하는 컬렉션 클래스들



Chapter 24. 컬렉션 프레임워크 2 
24-1. 컬렉션 기반 알고리즘



Chapter 25. 열거형, 가변 인자 그리고 어노테이션 
25-1. 열거형
25-2. 매개변수의 가변 인자 선언
25-3. 어노테이션 (Annotations)



Chapter 26. 네스티드 클래스와 람다(Lambda)의 소개 
26-1. 네스티드(Nested) 클래스와 이너(Inner) 클래스
26-2. 람다(Lambda)의 소개



Chapter 27. 람다 표현식 
27-1. 람다와 함수형 인터페이스
27-2. 정의되어 있는 함수형 인터페이스



Chapter 28. 메소드 참조와 Optional 
28-1. 메소드 참조 (Method References)
28-2. Optional 클래스
28-3. OptionalInt, OptionalLong, OptionalDouble 클래스



Chapter 29. 스트림 1 
29-1. 스트림의 이해와 스트림의 생성
29-2. 필터링(Filtering)과 맵핑(Mapping)
29-3. 리덕션(Reduction), 병렬 스트림(Parallel Streams)



Chapter 30. 스트림 2 
30-1. 스트림의 생성과 연결
30-2. 스트림의 중간 연산
30-3. 스트림의 최종 연산



Chapter 31. 시각과 날짜의 처리 
31-1. 시각과 날짜 관련 코드의 작성
31-2. 시간대를 적용한 코드 작성 그리고 출력 포맷의 지정



Chapter 32. I/O 스트림 
32-1. I/O 스트림에 대한 이해
32-2. 필터 스트림의 이해와 활용
32-3. 문자 스트림의 이해와 활용
32-4. IO 스트림 기반의 인스턴스 저장



Chapter 33. NIO 그리고 NIO.2 
33-1. 파일 시스템
33-2. NIO.2 기반의 I/O 스트림 생성
33-3. NIO 기반의 입출력



Chapter 34. 쓰레드 그리고 동기화 
34-1. 쓰레드의 이해와 쓰레드의 생성
34-2. 쓰레드의 동기화
34-3. 쓰레드를 생성하는 더 좋은 방법

이 책은 마지막까지 독자들에게 외울 것을 요구하지 않는다. 대신에 이해하고 익숙해질 것을 요구한다. 그리고 단순히 사실을 정리하고 나열한 것이 아니라 독자의 학습 상황을 모두 고려하여 막힐 부분을 예상해서 집필했다는 느낌을 준다. 초보자에게 조금 버거운 언어가 되었다는 자바를 매우 정돈된 설명으로 여전히 초보자가 해볼만한 언어라고, 이 책의 집필을 통해 저자는 주장하고 있다는 생각이 든다.