2017년 8월 13일 일요일
2017년 7월 14일 금요일
2017년 2월 24일 금요일
2017년 2월 10일 금요일
2017년 1월 20일 금요일
2016년 9월 17일 토요일
난 정말 JAVA를 공부한 적이 없다구요
난 정말 JAVA를 공부한 적이 없다구요
- 목차
Chapter 01. Let's Start JAVA!
01-1. 자바의 세계로 오신 여러분을 환영합니다.
01-2. 자바 프로그램의 이해와 실행의 원리
01-3. 첫 번째 자바 프로그램의 관찰과 응용
01-4. 컴파일의 대상에서 제외되는 주석!
Chapter 02. 변수(Variable)와 자료형(Data Type)
02-1. 변수의 이해와 활용
02-2. 정수 표현방식의 이해
02-3. 실수 표현방식의 이해
02-4. 자료형의 이해
Chapter 03. 상수와 형 변환(Type Casting)
03-1. 자료형을 기반으로 표현이 되는 상수
03-2. 자료형의 변환
Chapter 04. 연산자(Operator)
04-1. 자바에서 제공하는 이항 연산자들
04-2. 자바에서 제공하는 단항 연산자들
04-3. 비트와 관련이 있는 연산자들
Chapter 05. 실행흐름의 컨트롤
05-1. if ±×¸?°? else
05-2. switch와 break
05-3. for, while ±×¸?°? do~while
05-4. continue & break
05-5. 반복문의 중첩
Chapter 06. 메소드와 변수의 스코프
06-1. 메소드에 대한 이해와 메소드의 정의
06-2. 변수의 스코프
06-3. 메소드의 재귀호출
Chapter 07. 클래스와 인스턴스
07-1. 클래스의 정의와 인스턴스의 생성
07-2. 생성자(Constructor)
07-3. 자바의 이름 규칙(Naming Rule)
Chapter 08. 클래스 패스와 패키지
08-1. 클래스 패스(Class Path)의 지정
08-2. 패키지(Package)의 이해
Chapter 09. 접근제어 지시자와 정보은닉, 그리고 캡슐화
09-1. 정보은닉(Information Hiding)
09-2. 접근제어 지시자(Access Control Specifiers)
09-3. public 클래스와 default 클래스
09-4. 어떤 클래스를 public으로 선언할까요?
09-5. 캡슐화(Encapsulation)
Chapter 10. 클래스 변수와 클래스 메소드
10-1. static 변수(클래스 변수)
10-2. static 메소드(클래스 메소드)
10-3. System.out.println & public static void main
Chapter 11. 메소드 오버로딩과 String 클래스
11-1. 메소드 오버로딩(Overloading)
11-2. String 클래스
11-3. API Document의 참조를 통한 String 클래스의 인스턴스 메소드 관찰
11-4. StringBuilder & StringBuffer 클래스
11-5. 단계별 프로젝트: 전화번호 관리 프로그램 01단계
Chapter 12. 콘솔 입력과 출력
12-1. 콘솔 출력(Console Output)
12-2. 콘솔 입력(Console Input)
12-3. 단계별 프로젝트: 전화번호 관리 프로그램 02단계
Chapter 13. 배열(Array)
13-1. 배열이라는 존재가 필요한 이유
13-2. 1차원 배열의 이해와 활용
13-3. 다차원 배열의 이해와 활용
13-4. for-each
13-5. main 메소드로의 데이터 전달
13-6. 단계별 프로젝트: 전화번호 관리 프로그램 03단계
Chapter 14. 클래스의 상속 1: 상속의 기본
14-1. 상속은 재활용 + 알파(α)
14-2. 상속의 기본문법 이해
14-3. 상속과 접근제어 지시자
14-4. static 변수(메소드)의 상속과 생성자의 상속에 대한 논의
Chapter 15. 클래스의 상속 2: 오버라이딩
15-1. 상속을 위한 관계
15-2. 하위 클래스에서 메소드를 다시 정의한다면?
15-3. 참조변수의 인스턴스 참조와 instanceof 연산자
Chapter 16. 클래스의 상속 3: 상속의 목적
16-1. 개인정보 관리 프로그램
16-2. 모든 클래스가 상속하는 Object 클래스
16-3. final 클래스와 final 메소드
16-4. 단계별 프로젝트: 전화번호 관리 프로그램 04단계
Chapter 17. abstract와 interface 그리고 inner class
17-1. abstract 클래스
17-2. interface
17-3. Inner 클래스
17-4. Local 클래스와 Anonymous 클래스
17-5. 단계별 프로젝트: 전화번호 관리 프로그램 05단계
Chapter 18. 예외처리(Exception Handling)
18-1. 예외처리에 대한 이해와 try~catch문의 기본
18-2. 프로그래머가 직접 정의하는 예외의 상황
18-3. 예외 클래스의 계층도
18-4. 단계별 프로젝트: 전화번호 관리 프로그램 06단계
Chapter 19. 자바의 메모리 모델과 Object 클래스
19-1. 자바 가상머신의 메모리 모델
19-2. Object 클래스
Chapter 20. 자바의 다양한 기본 클래스
20-1. Wrapper 클래스
20-2. BigInteger 클래스와 BigDecimal 클래스
20-3. Math 클래스와 난수의 생성, 그리고 문자열 토큰(Token)의 구분
Chapter 21. 제네릭(Generics)
21-1. 제네릭 클래스의 이해와 설계
21-2. 제네릭을 구성하는 다양한 문법적 요소
Chapter 22. 컬렉션 프레임워크(Collection Framework)
22-1. 컬렉션 프레임워크의 이해
22-2. Collection〈E〉 인터페이스를 구현하는 제네릭 클래스들
22-3. Set〈E〉 인터페이스를 구현하는 컬렉션 클래스들
22-4. Map〈K, V〉 인터페이스를 구현하는 컬렉션 클래스들
22-5. 단계별 프로젝트: 전화번호 관리 프로그램 07단계
Chapter 23. 쓰레드(Thread)와 동기화
23-1. 쓰레드의 이해와 생성
23-2. 쓰레드의 특성
23-3. 동기화(Synchronization)
23-4. 새로운 동기화 방식
Chapter 24. 파일과 I/O 스트림
24-1. File I/O에 대한 소개
24-2. 필터 스트림의 이해와 활용
24-3. 문자 스트림의 이해와 활용
24-4. 스트림을 통한 인스턴스의 저장
24-5. Random Access 파일과 FILE 클래스
24-6. 단계별 프로젝트: 전화번호 관리 프로그램 08단계
Chapter 25. Swing 컴포넌트와 이벤트 핸들링
25-1. Swing을 시작하기에 앞서
25-2. Swing 컴포넌트와 이벤트 핸들링
25-3. 레이아웃 매니저(Layout Manager)
25-4. 이벤트와 이벤트 리스너(Event Listener)
25-5. 다양한 Swing 컴포넌트
25-6. 단계별 프로젝트: 전화번호 관리 프로그램 09단계
APPENDIX A. 데이터 표현방식의 이해
A-1. 진수와 진수변환
A-2. 데이터 표현의 단위(비트, 바이트, 워드)
APPENDIX B. 자료형에 안전한 열거형
B-1. 열거형의 활용
B-2. 열거형 클래스
- 소개
Java 초보용으로 굉장히 많은 인기를 얻고 있는 책이다.
일명 코딩 붐이 일어나면서 IT관련 서적이 쏟아지고 있는 데
특히 Java 기본서는 굉장히 많이 나오고 있어 그만큼 묻혀버리는 Java기본서도 많다
이 책은 예전부터 지금까지 꽤나 오랜 기간인기를 끌고 있는 데
제목은 왜이리 특이한지 표지도 좀 오래되어 보이고.... 뭐 결론은 내용이 꽤나 좋다.
875페이지에 달하는 꽤나 두터운 책이지만 가격은 뭐 적당한 정가 28,000원이다.
또한 http://www.orentec.co.kr 에서 무료로 회원가입만하면 저자의 동영상 강의를
볼 수 있으니 책이 없어도 내용이 궁금하신 분들은 참고해도 좋을 것 같다.
- 유기적인 내용과 핵심을 잘 알고있는 기본서
개인적인 생각일 수 있지만 내용의 흐름이 꽤나 잘 연결된다는 느낌을 받을 수 있었다.
또한 다른 책에 비하여 중요한 부분은 항상 중요하게 다루고 넘어간다.
말 그대로 기본서로 있을 건 다 있다.
이 책만 마스터까지는 아니더라도 제대로 익힌다면 웹개발이나 안드로이드로
넘어갈때 조금 더 수월하지 않을까하는 생각이 든다.
- 네트워크가 왜 없을까..
네트워크가 없다. 이상하다. 한창 Java로 채팅만들기 공부를 할 때 책을 뒤적였는 데
정말 없는 것이다. 대신 Swing이 들어가있다......
이 책의 출시년도는 2009년도이다. 뭐.. 개정판이 나와야 해결될까 싶다.
물론 네트워크가 필요없는 분들도 있겠지만 Java기본서에서 네트워크 부분을 익히지 않고 JSP & Servlet으로 넘어간다면 초반에 이해도가 떨어지지 않을까 싶다.
"책 한권으로 Java 기본 Master 도전! 동영상은 덤!"
2016년 8월 28일 일요일
기초 튼튼 코드 튼튼 다 함께 프로그래밍
사진 출처 : 제이펍블로그 |
프로그래밍을 시작하는 이들을 위한 쉽고도 친절한 안내서!
목차
PART Ⅰ 프로그래밍으로의 초대
CHAPTER 01 컴퓨터와 친하게 지내자2
1.1 컴퓨터가 있는 생활2
1.2 프로그래밍이란 무엇인가?7
1.3 마음의 준비12
CHAPTER 02 컴퓨터가 동작하는 원리21
2.1 컴퓨터 완벽 해부21
2.2 컴퓨터의 작업 방식28
2.3 프로그램 완벽 해부36
CHAPTER 03 프로그램을 한국어로 작성하자44
3.1 프로그램이 만들어지는 과정44
3.2 줄거리와 시나리오를 작성하기 위한 힌트56
3.3 청소를 부탁해!62
3.4 프로그램의 개념을 익히려면?70
PART Ⅱ 프로그래밍의 기초 지식
CHAPTER 04 ‘1 + 1’ 프로그램72
4.1 값을 넣는 상자 ― 변수73
4.2 상자의 크기 ― 데이터 타입77
4.3 상자 사용법 ― 초기화86
4.4 상자에 값 넣기 ― 대입/대입 연산자87
4.5 Q&A90
CHAPTER 05 계산 실패의 정체92
5.1 계산에 사용하는 기호 ― 산술 연산/산술 연산자92
5.2 티끌모아 태산 ― 계산 오차94
5.3 식을 작성하는 방법에 따라 답이 변한다 ― 우선순위96
5.4 원인은 보관 용기에 있다? ― 데이터 타입101
5.5 답을 알 수 없는 나눗셈 ― 0으로 나누기104
5.6 Q&A105
CHAPTER 06 프로그램의 흐름을 만들기108
6.1 흐름의 방식은 세 종류 ― 제어 구조108
6.2 ‘만약’인 경우의 프로그램 ― 조건 판단 구조114
6.3 동일한 것의 반복 ― 반복 구조122
6.4 흐름을 바꾸는 계기 ― 비교 연산/비교 연산자132
6.5 함께 비교하기 ― 논리 연산/논리 연산자137
6.6 Q&A142
CHAPTER 07 데이터의 보관 용기145
7.1 같은 종류의 상자를 나열해서 사용 ― 배열145
7.2 상자를 가로와 세로로 나열하여 사용하기 ― 2차원 배열155
7.3 관련 정보를 모아서 취급하기 ― 구조체/레코드164
7.4 메모리의 번지를 이용하기 ― 포인터/주소169
7.5 값에 이름을 붙여서 사용하기 ― 상수177
7.6 중요한 데이터를 넣는 장소 ― 파일180
7.7 Q&A184
CHAPTER 08 프로그램을 부품화하기186
8.1 부품이 된 프로그램 ― 함수186
8.2 정보 전달 ― 인수197
8.3 결과 수령 ― 반환값/리턴값204
8.4 정보를 공유하는 방법 ― 지역 변수/전역 변수206
8.5 Q&A209
PART Ⅲ 다음 단계로
CHAPTER 09 무엇을 만들지 생각해보자212
9.1 콘솔 애플리케이션과 윈도우 애플리케이션212
9.2 프로그램이 움직이는 계기214
9.3 프로그램을 만드는 방법218
9.4 웹 프로그램221
CHAPTER 10 도구를 준비하자232
10.1 프로그래밍 언어의 종류232
10.2 여러 가지 프로그래밍 언어236
10.3 C 프로그래밍에 필요한 도구249
10.4 객체 지향 프로그래밍253
CHAPTER 11 한 발 앞으로 나아가자262
11.1 프로그램이 생각대로 동작하지 않을 때262
11.2 프로그래머의 마음가짐267
- 소개
하드웨어의 동작원리부터 설명을 하더니 차근차근 뜯어서 모두 설명해준다.
프로그래밍 언어가 하드웨어부터 소프트웨어로 그리고 프로그램으로 실행되기까지 모든 과정을
차근차근 물 흐르듯이 풀어나간다. 확실히 입문자에 맞춘 설명이다.
물론 개발 공부하는 학생들이나 초보개발자들조차도 도움될만한 유익한 책이다
- 하드웨어부터 프로그램까지
이 책은 분명히 읽는 것보다 이해하는 것이 더 중요한 책이다.
이해만 된다면 두껍지 않은 책이지만 하드웨어부터 시작하여
프로그램이 실행되기까지 복잡하고 긴 흐름을 더욱 더 쉽게 파악할 수 있다.
거기다가 프로그래밍 언어에 대한 기초 설명과 그 이상의 것까지 살펴볼 수 있다.
"개발자를 준비하는 동생이나 후배에게 책 선물을 한다면 이 책만한 것도 없을 것, 목차부터 신기한 책"
프로그래밍을 시작하는 이들을 위한 쉽고도 친절한 안내서!
목차
PART Ⅰ 프로그래밍으로의 초대
CHAPTER 01 컴퓨터와 친하게 지내자2
1.1 컴퓨터가 있는 생활2
1.2 프로그래밍이란 무엇인가?7
1.3 마음의 준비12
CHAPTER 02 컴퓨터가 동작하는 원리21
2.1 컴퓨터 완벽 해부21
2.2 컴퓨터의 작업 방식28
2.3 프로그램 완벽 해부36
CHAPTER 03 프로그램을 한국어로 작성하자44
3.1 프로그램이 만들어지는 과정44
3.2 줄거리와 시나리오를 작성하기 위한 힌트56
3.3 청소를 부탁해!62
3.4 프로그램의 개념을 익히려면?70
PART Ⅱ 프로그래밍의 기초 지식
CHAPTER 04 ‘1 + 1’ 프로그램72
4.1 값을 넣는 상자 ― 변수73
4.2 상자의 크기 ― 데이터 타입77
4.3 상자 사용법 ― 초기화86
4.4 상자에 값 넣기 ― 대입/대입 연산자87
4.5 Q&A90
CHAPTER 05 계산 실패의 정체92
5.1 계산에 사용하는 기호 ― 산술 연산/산술 연산자92
5.2 티끌모아 태산 ― 계산 오차94
5.3 식을 작성하는 방법에 따라 답이 변한다 ― 우선순위96
5.4 원인은 보관 용기에 있다? ― 데이터 타입101
5.5 답을 알 수 없는 나눗셈 ― 0으로 나누기104
5.6 Q&A105
CHAPTER 06 프로그램의 흐름을 만들기108
6.1 흐름의 방식은 세 종류 ― 제어 구조108
6.2 ‘만약’인 경우의 프로그램 ― 조건 판단 구조114
6.3 동일한 것의 반복 ― 반복 구조122
6.4 흐름을 바꾸는 계기 ― 비교 연산/비교 연산자132
6.5 함께 비교하기 ― 논리 연산/논리 연산자137
6.6 Q&A142
CHAPTER 07 데이터의 보관 용기145
7.1 같은 종류의 상자를 나열해서 사용 ― 배열145
7.2 상자를 가로와 세로로 나열하여 사용하기 ― 2차원 배열155
7.3 관련 정보를 모아서 취급하기 ― 구조체/레코드164
7.4 메모리의 번지를 이용하기 ― 포인터/주소169
7.5 값에 이름을 붙여서 사용하기 ― 상수177
7.6 중요한 데이터를 넣는 장소 ― 파일180
7.7 Q&A184
CHAPTER 08 프로그램을 부품화하기186
8.1 부품이 된 프로그램 ― 함수186
8.2 정보 전달 ― 인수197
8.3 결과 수령 ― 반환값/리턴값204
8.4 정보를 공유하는 방법 ― 지역 변수/전역 변수206
8.5 Q&A209
PART Ⅲ 다음 단계로
CHAPTER 09 무엇을 만들지 생각해보자212
9.1 콘솔 애플리케이션과 윈도우 애플리케이션212
9.2 프로그램이 움직이는 계기214
9.3 프로그램을 만드는 방법218
9.4 웹 프로그램221
CHAPTER 10 도구를 준비하자232
10.1 프로그래밍 언어의 종류232
10.2 여러 가지 프로그래밍 언어236
10.3 C 프로그래밍에 필요한 도구249
10.4 객체 지향 프로그래밍253
CHAPTER 11 한 발 앞으로 나아가자262
11.1 프로그램이 생각대로 동작하지 않을 때262
11.2 프로그래머의 마음가짐267
- 소개
하드웨어의 동작원리부터 설명을 하더니 차근차근 뜯어서 모두 설명해준다.
프로그래밍 언어가 하드웨어부터 소프트웨어로 그리고 프로그램으로 실행되기까지 모든 과정을
차근차근 물 흐르듯이 풀어나간다. 확실히 입문자에 맞춘 설명이다.
물론 개발 공부하는 학생들이나 초보개발자들조차도 도움될만한 유익한 책이다
- 하드웨어부터 프로그램까지
이 책은 분명히 읽는 것보다 이해하는 것이 더 중요한 책이다.
이해만 된다면 두껍지 않은 책이지만 하드웨어부터 시작하여
프로그램이 실행되기까지 복잡하고 긴 흐름을 더욱 더 쉽게 파악할 수 있다.
거기다가 프로그래밍 언어에 대한 기초 설명과 그 이상의 것까지 살펴볼 수 있다.
"개발자를 준비하는 동생이나 후배에게 책 선물을 한다면 이 책만한 것도 없을 것, 목차부터 신기한 책"
2016년 8월 20일 토요일
그림으로 배우는 JAVA PROGRAMMING BASIC
Java Programming Basic
재미있게 배워보는 Java 언어 기초의 모든 것, 그림으로 배우는
- 목 차
Lesson 01. 시작하기
이 장에서는 Java 언어를 사용하여 프로그램을 작성하는 방법을 학습합니다. Java 언어의 학습을 시작한지 얼마 안된 무렵은 생소한 프로그래밍 단어에 고생할지도 모릅니다. 그러나 이 장에서 다루는 키워드를 이해하게 되면, Java 언어의 이해도 편해질 것입니다. 하나씩 차근차근 나의 것으로 만들어보도록 합시다.
Lesson 02. Java의 기본
이전 장에서는 Java 코드를 입력한 후, 컴파일러와 인터프리터를 사용하여 프로그램을 실행시키는 방법을 배웠습니다. 그럼 앞으로 우리는 어떤 코드를 입력하면 좋을까요? 코드를 작성하여 프로그램을 만들기 위해선 Java 문법 규칙을 알아야 합니다. 이 장에서는 기본적인 Java 문법을 배워보도록 하겠습니다.
Lesson 03. 변수
제 3장에서는 문자나 숫자를 화면에 출력하는 방법을 배웠습니다. 문자나 숫자는 프로그래밍을 시작한지 얼마 되지 않은 분들에게도 그다지 위화감 없는 주제였으리라 생각합니다. 이 장에서는 드디어 프로그래밍 언어로서의 Java의 기능을 배우게 됩니다. 먼저, 가장 기본적인‘변수’에 대해 살펴봅시다.
Lesson 04. 식과 연산자
컴퓨터는 다양한 일을 할 수 있습니다. 이 때 필요한 기능이‘연산’입니다. Java 프로그램을 만들 때에도 연산은 빼 놓을 수 없는 기능 중 하나입니다. Java에서는 간단하게 연산을 수행할 수 있도록‘연산자’라는 기능을 제공합니다. 이 장에서는 다양한 연산자의 사용 방법을 배웁니다.
Lesson 05. 경우에 따른 처리
지금까지 작성했던 코드에서 각 문장들은 한 번에 하나씩 처리되고 있었습니다. 그러나 더 복잡한 처리를 하고 싶은 경우, 순차적으로 문장을 처리하는 것만으로는 부족할 수 있습니다. Java에는 여러 문장을 모아서 코드의 흐름을 제어하는 방법이 있습니다. 이 장에서는 특정 상황에 맞추어 코드의 흐름을 제어하는 문장을 배웁니다.
Lesson 06. 여러 번 반복하기
제 5장에서는 특정 상황에 맞추어 코드의 흐름을 제어하는 문장을 배웠습니다. Java에는 그 외에도 문장을 컨트롤하는 기능이 포함되어 있습니다. 이 기능은 ‘반복 문(루프 문)’이라고 합니다. 반복문을 사용하면 동일한 작업을 여러 번 반복할 수 있습니다. 이 장에서는 반복문에 대해 배웁니다.
Lesson 07. 배열
제 3장에서는 변수를 사용하여 특정 값을 저장하는 방법에 대해 배웠습니다. Java에는 이 외에도 동일한 형의 여러 값을 함께 저장하는‘배열’이라는 기능이 있습니다. 배열을 사용하면 많은 데이터를 처리하는 복잡한 코드를 깔끔하게 작성할 수 있습니다. 이 장에서는 배열의 원리에 대해 배워 보겠습니다.
Lesson 08. 클래스의 기본
지금까지 변수·배열 등 다양한 Java의 기능에 대해 배워 보았습니다. 이러한 기능들은 예로부터 다양한 프로그래밍 언어가 지원하고 있었습니다. 그러나 프로그램이 복잡해짐에 따라, 보다 효율적으로 프로그램을 작성하는 방법이 필요하게 되었습니다. 그러한 필요에 따라 새롭게 등장한 기능이 ‘클래스’입니다. 이 장에서는 클래스의 기본을 배웁니다.
Lesson 09. 클래스의 기능
8장에서는 클래스의 기본에 대해 학습했습니다. 그러나 클래스의 강력한 기능은 이 뿐만이 아닙니다. 견고한 프로그램의 작성을 돕기 위하여 클래스에는 다양한 기능이 준비되어 있습니다. 이 장에서는 클래스의 또 다른 강력한 기능에 대해 살펴봅니다.
Lesson 10. 클래스 이용
지금까지는 클래스와 그 강력한 기능을 확인하였습니다. 이 장에서는 클래스를 실제로 활용하는 방법을 학습하겠습니다. 클래스를 활용하면 실용적인 프로그램을 만들 수 있습니다. 이 장에서는 다양하게 변화하는 프로그램을 만들어 보겠습니다.
Lesson 11. 새로운 클래스
우리들은 8장에서 10장에 걸쳐 클래스의 다양한 기능을 학습했습니다. Java는 이미 설계된 클래스를 활용하여 새로운 클래스를 효율적으로 만들 수 있도록 지원합니다. 기존의 클래스를 이용하여 프로그램을 효율적으로 만들 수 있다는 것은 Java의 큰 장점입니다. 이 장에서는 새로운 클래스를 만드는 방법을 배워 보겠습니다.
Lesson 12. 인터페이스
이 장에서는 특수한 클래스에 대해 배워 보겠습니다. 이 장에서 배운 지식을 활용하면 클래스를 이용한 일관된 프로그래밍이 가능해집니다. 여기에서는 ‘추상 클래스’와‘인터페이스’라는 새로운 지식을 배워봅니다.
Lesson 13. 대규모 프로그램의 작성
지금까지 우리들은 소규모 프로그램을 여러 개 만들었습니다. 그러나 프로그램의 규모가 커지면 커질수록 코드에서는 더 많은 클래스를 다루어야 할 것입니다. 이 장에서는 큰 프로그램의 작성에 필요한 지식을 배웁니다.
Lesson 14. 예외와 입출력 처리
프로그램 실행 시에는 다양한 에러가 발생할 수 있습니다. Java는 프로그램 실행 중에 발생하는 오류에 대응하기 위한 ‘예외 처리’ 메커니즘을 제공합니다. 이 장에서는 이 예외 처리에 대해 배웁니다. 또한, 데이터의 읽기 및 쓰기를 위한‘입출력 처리’에 대해서도 학습해 보겠습니다.
Lesson 15. 스레드
지금까지 우리들이 작성한 프로그램은 그 수행 과정을 하나의 흐름으로 보고 추적할 수 있었습니다. Java는 이러한 처리 흐름을 코드에서 여러 개 만들 수 있도록 지원합니다. 이 장에서는, 처리의 흐름이기도 한 스레드를 여러 개 운영하는 방법을 배워 보겠습니다.
Lesson 16. 애플릿
Java를 사용해서‘애플릿’이라는 작은 프로그램을 만들 수 있습니다. 애플릿은 웹 브라우저 및 기타 환경에서 동작하는 그래픽컬한 프로그램입니다. 이 장에서는‘애플릿의 작성 순서’에 대해 학습해 보도록 하겠습니다.
목차 출처 : 영진닷컴블로그
- 소개
그림으로 배우는 시리즈는 워낙 다양하게 준비가 되어있다.
물론 굉장한 베스트 시리즈는 아니지만 기본은 하는 시리즈는 아닐까 생각이 든다.
일단 번역서이지만 그렇게 거슬리거나 번역이나 신경쓰이는 오탈자는 딱히
기억에 나지 않는다. Mana Takahashi라는 일본의 저자가 쓴 책이며
페이지수는 551페이지이지만 본문의 글씨들이 큰 편이고 책도 굉자히 작다.
또한 그림이 많아 술술 넘어갈수있으니 페이지의 압박은 없을 수 있다.
- 입문 || 초보용으로는 최고!
물론 이 책은 꾸준히 다 보거나 몇회 이상 정독한 것은 아니다.
하지만 다양한 그림으로 거부감없이 접근할 수 있었으며 확실히 그림의 영향으로
이해에 도움을 주었다. 글씨도 굉장히 크고 책도 작아서 부담을 느낄 수 없다.
특히 입문시기에는 막상 독학을 시작하려고 산 책에 시련을 겪는 경우가 많은 데
가볍게 시작할 수 있는 자신감을 기를 수 있다.
- 모자란 깊이
입문 또는 초보용으로는 굉장히 뛰어난 반면에 하나하나 내용의 깊이나 설명.
전체적인 Java에 대한 깊이는 떨어진다. 나는 Java를 무조건 한 권으로 마무리 해버리겠다.
하시는 분들에게는 어울리지 않고 더욱 더 나아간 공부는 인터넷을 통하여
습득을 하던가 해야한다.
"책으로 Java 공부를 해야겠는 데 거부감이 드시는 분들에게 입문용으로 추천해드립니다"
- 모자란 깊이
입문 또는 초보용으로는 굉장히 뛰어난 반면에 하나하나 내용의 깊이나 설명.
전체적인 Java에 대한 깊이는 떨어진다. 나는 Java를 무조건 한 권으로 마무리 해버리겠다.
하시는 분들에게는 어울리지 않고 더욱 더 나아간 공부는 인터넷을 통하여
습득을 하던가 해야한다.
"책으로 Java 공부를 해야겠는 데 거부감이 드시는 분들에게 입문용으로 추천해드립니다"
2016년 7월 14일 목요일
비전공자를 위한 자바 프로그래밍
비전공자를 위한 자바 프로그래밍
목 차
chapter 1 자바 프로그래밍을 시작하면서
1.1 컴퓨터의 기초
1.2 자바란
1.3 자바 프로그램의 작동 원리
1.3.1 컴파일과 실행
1.3.2 자바 가상 머신
1.4 자바 개발환경 구축하기
1.4.1 JDK 설치
1.4.2 이클립스 설치
1.4.3 Welcome to Java World!
1.1 컴퓨터의 기초
1.2 자바란
1.3 자바 프로그램의 작동 원리
1.3.1 컴파일과 실행
1.3.2 자바 가상 머신
1.4 자바 개발환경 구축하기
1.4.1 JDK 설치
1.4.2 이클립스 설치
1.4.3 Welcome to Java World!
chapter 2 기초 문법
2.1 기초 문법
2.1.1 데이터 타입
2.1.2 변수
2.2 여러 가지 연산자
2.2.1 산술 연산자
2.2.2 비교 연산자
2.2.3 논리 연산자
2.2.4 데이터 타입의 변환
2.2.5 연산자의 우선순위
2.3 여러 가지 배열
2.3.1 배열
2.3.2 다차원 배열
2.4 반복문
2.4.1 for문
2.4.2 while문
2.5 조건문
2.5.1 if문
2.5.2 switch문
2.1 기초 문법
2.1.1 데이터 타입
2.1.2 변수
2.2 여러 가지 연산자
2.2.1 산술 연산자
2.2.2 비교 연산자
2.2.3 논리 연산자
2.2.4 데이터 타입의 변환
2.2.5 연산자의 우선순위
2.3 여러 가지 배열
2.3.1 배열
2.3.2 다차원 배열
2.4 반복문
2.4.1 for문
2.4.2 while문
2.5 조건문
2.5.1 if문
2.5.2 switch문
chapter 3 클래스와 객체
3.1 클래스와 객체의 개념
3.2 클래스 선언하기
3.3 객체의 생성과 사용
3.4 메서드
3.5 생성자
3.1 클래스와 객체의 개념
3.2 클래스 선언하기
3.3 객체의 생성과 사용
3.4 메서드
3.5 생성자
chapter 4 클래스의 상속
4.1 상속의 정의
4.2 오버라이딩
4.3 여러 가지 수식자
4.3.1 final
4.3.2 static
4.4 추상 클래스
4.5 인터페이스
4.6 다형성
4.1 상속의 정의
4.2 오버라이딩
4.3 여러 가지 수식자
4.3.1 final
4.3.2 static
4.4 추상 클래스
4.5 인터페이스
4.6 다형성
chapter 5 패키지와 접근제어
5.1 패키지
5.2 접근제어
5.1 패키지
5.2 접근제어
chapter 6 입출력
6.1 입출력이란
6.2 스트림
6.3 파일 쓰고 읽기
6.3.1 파일 쓰기
6.3.2 파일 읽기
6.4 키보드로 입력하기
6.1 입출력이란
6.2 스트림
6.3 파일 쓰고 읽기
6.3.1 파일 쓰기
6.3.2 파일 읽기
6.4 키보드로 입력하기
chapter 7 객체의 직렬화
7.1 직렬화와 역직렬화
7.2 직렬화 클래스 만들기
7.3 객체를 직렬화/역직렬화하는 방법
7.1 직렬화와 역직렬화
7.2 직렬화 클래스 만들기
7.3 객체를 직렬화/역직렬화하는 방법
chapter 8 멀티스레드
8.1 멀티스레드란
8.2 멀티스레드 작성 방법
8.3 스레드 간의 통신
8.1 멀티스레드란
8.2 멀티스레드 작성 방법
8.3 스레드 간의 통신
chapter 9 네트워크
9.1 네트워크의 기초
9.1.1 IP 주소와 포트 번호
9.1.2 DNS
9.1.3 클라이언트와 서버
9.2 네트워크 통신 프로그래밍
9.2.1 인터넷을 통해 데이터를 주고받을 때 필요한 것들
9.2.2 TCP/IP 프로그래밍
9.2.3 스레드를 이용한 채팅 프로그램
9.1 네트워크의 기초
9.1.1 IP 주소와 포트 번호
9.1.2 DNS
9.1.3 클라이언트와 서버
9.2 네트워크 통신 프로그래밍
9.2.1 인터넷을 통해 데이터를 주고받을 때 필요한 것들
9.2.2 TCP/IP 프로그래밍
9.2.3 스레드를 이용한 채팅 프로그램
chapter 10 편리한 함수들
10.1 수학 관련 함수
10.2 문자 관련 함수
10.3 시간 관련 함수
10.1 수학 관련 함수
10.2 문자 관련 함수
10.3 시간 관련 함수
마무리하며
부록 연습문제와 답
부록 연습문제와 답
총 평
나는 자바책만해도 4~5권을 보유하고 있다.
왜냐하면 이해력이나 사고력이 바닥이기때문에 도저히 책이 술술 넘어가지 않았고
좀 더 쉬운 책이 없을까? 하고 쉬운 책부터 찾다보니 이 책을 선택하게 되었다.
처음에는 200페이지가 조금 넘는 얇은 책인데 가격은 16,000원이니 뭔가 내키지 않았고
결국 직접가서 책을 보고 구매하게 되었다. 참고로 저자도 비전공자 출신이기도 하다.
어떻게든 독자를 이해하기 위한 노력의 흔적들이 곳곳에 보인다. |
다양한 이미지와 상세한 코드 설명 그리고 얇은 책이지만 예제도 많이 있는 편이다. |
거기다가 출간일도 굉장히 최근이기때문에 나에게는 딱일수밖에 없었다.
단점으로는 출간한지 얼마 안된게 문제인지 오탈자가 조금 있었고
책 자체가 얇고 분량이 적은지라 자바의 모든 것을 다 넣을수는 없다.
이 책만으로 자바를 습득하고자 하는 분들은 꼭 이 다음 책이나 강의로 학습할 것을 권유한다.
대신 얇은 두께로 두고두고 버스에서 읽기 좋을 것 같다.
생활코딩에 egoing님의 강의를 볼때마다 느끼는 것은
어떻게든 이해를 시키고자 노력을 한다는 것이다.
이 책에서도 같은 느낌을 받았다.