분야별도서 > 프로그래밍 > JAVA

분야별도서

view_img

한번에 이해되는 자바 프로그래밍

  • 저자임좌상, 조용주
  • 발행일2021-02-17
  • 정가29,000원
  • 페이지756 페이지
  • ISBN979-11-85578-77-4
  • 책소개
  • 저자소개
  • 목차
  • 출판사 서평

자바를 쉽게 배울 수 있는 방법은 무엇일까?”

 

책을 쓰게 된 동기는 바로 이것이었다. 이미 많이 출간되어 있는 자바 책에 한 권을 더 써서 얹어 보겠다고 한 것은 자바라는 언어를 쉽게 배울 수 있는 방법이 있다고 생각했기 때문이다. 그 시작은 자바 9에서 제공되는 JShell을 보면서부터였다. 학생들에게 파이썬을 가르치면서 인터프리터 언어가 가지고 있는 장점을 보았고, 예전에 배웠던 Basic 언어를 생각하면서 컴파일이라는 과정을 배우지 않고 바로 코드를 실행시키는 환경이 프로그래밍의 재미를 더했던 것을 떠올렸다.

자바도 이런 식으로 가르치면 좋지 않을까?”

이러한 생각이 발전하여 책을 쓰게 되었다.

 

“JShell을 활용해 보자!”

JShell은 자바 9부터 제공되는 일종의 자바 언어 인터프리터이다. 자바 코드를 간단하게 작성하고 실행시켜 볼 수 있다. 클래스나 함수를 몰라도 코드를 만들 수 있는 것이다. 컴퓨터를 켜고 JShell을 실행하고 한 줄 입력해 보면 화면에 입력한 문자열이 바로 출력된다.

프로그래밍을 처음 하는 학생들은 단순한 출력문 하나에도 잘못되면 어쩌나 두려움을 느끼고 화면에 출력이 되면 활짝 웃는 것을 보게 된다.

책의 모든 내용에 JShell을 사용하라고 강요하지는 않지만 문제를 해결하는 과정에서, 또는 짧은 코드를 작성할 때 JShell에서 바로 결과를 확인할 수 있도록 하였다

임좌상

호주 뉴사우스웨일즈대학 정보시스템학과에서 박사학위를 취득하고, 1997년부터 상명대학교에서 파이썬, 자바, 빅데이터, 소프트웨어 설계 과목을 가르치고 있다. 1991년부터 3년간 호주 뉴사우스웨일즈대학에서 Associate Lecturer로 정보시스템, COBOL을 가르쳤고, 1994년부터 3년간 삼성SDS 컨설팅 및 금융개발팀에서 근무했다. 이후에 금융감독원, 대법원 호적정보, LG카드 신승인, 코오롱 종합상사, 신용보증기금, 서울보증재단, 대우 자동차판매, 한국외환은행, 삼성화재, 삼성할부, 삼성생명, 효성물산 등의 기업정보시스템을 Java, C++로 개발하는 프로젝트에 참여했다.

저서로는 파이썬으로 배우는 프로그래밍 기초, 임좌상, 조용주(인피니티북스 2018)”가 있다.

 

조용주

미국 일리노이대학(어배너-섐페인) 컴퓨터과학과에서 학사, 일리노이대학(시카고) 전기, 전자 및 컴퓨터과학과에서 석사, 컴퓨터과학과에서 박사학위를 취득하였다. 2004년부터 상명대학교 융합공과대학 SW융합학부 컴퓨터과학전공에서 재직 중이며, 다양한 프로그래밍 교과목, 프로그래밍 언어론, 디자인 패턴 등을 가르치고 있다. 주요 연구 분야는 가상현실, 3차원 디스플레이, 휴먼 컴퓨터 인터랙션, 소프트웨어 교육 등이다.

저서로는 파이썬으로 배우는 프로그래밍 기초, 임좌상, 조용주(인피니티북스 2018)”가 있다

CHAPTER 01 자바, 설치, JShell

1.1 자바 소개

1.2 자바 개발 도구 설치 및 환경설정

1.3 자바 프로그램 컴파일 및 실행

1.4 JShell

1.5 인텔리제이 아이디어 설치 및 사용

 

CHAPTER 02 자료형과 연산자, 키보드 입력

2.1 변수(variable)와 대입(assignment) 연산

2.2 산술 연산

2.3 사용자로부터 키보드 입력 받기

2.4 연산자

2.5 배열(Array)

 

CHAPTER 03 클래스와 객체

3.1 간단한 함수 만들어보기

3.2 클래스가 뭐지?

3.3 객체 만들고 사용해보기

3.4 문자열과 String 클래스

3.5 클래스에 속성 추가하기

3.6 생성자(constructor)this 참조

3.7 클래스 배열

 

CHAPTER 04 제어 흐름

4.1 제어 흐름

4.2 제어 흐름(분기문)

4.3 반복

4.4 switch

4.5 enum

 

CHAPTER 05 메소드(멤버 함수, 함수)와 유효범위

5.1 함수

5.2 함수를 이용해서 중복 코드를 줄이는 예

5.3 객체를 함수에 전달하기

5.4 유효범위

5.5 메소드 오버로딩

5.6 재귀 호출

 

CHAPTER 06 클래스들의 연관 관계, 패키지, 모듈

6.1 클래스 찾기

6.2 캡슐화(Encapsulation)와 사용 권한 제어

6.3 정적 메소드, 정적 변수, final 변수, 상수

6.4 다시 보는 main() 함수와 명령행 인자

6.5 클래스들의 관계

6.6 패키지

 

CHAPTER 07 상속과 다형성

7.1 상속

7.2 함수의 오버라이딩

7.3 접근 제어자와 상속

7.4 클래스간의 연관 관계

7.5 인터페이스(interface)

7.6 추상 클래스(abstract class)

7.7 다형성(Polymorphism)

7.8 Object 클래스

7.9 익명 클래스

 

CHAPTER 08 자료 구조와 컬렉션

8.1 자료 구조란?

8.2 자바 컬렉션 프레임워크(Java Collections Framework)

8.3 ArrayList 클래스

8.4 제네릭(Generic)

8.5 반복자(iterator)

8.6 다차원 ArrayList

8.7 자료 구조 복사 문제

8.8 (Map)

 

CHAPTER 09 파일 입출력

9.1 자바의 입출력

9.2 I/O 스트림(InputStream/OutputStream)

9.3 파일 입출력

9.4 텍스트 파일과 부호화 방식

 

CHAPTER 10 예외처리

10.1 프로그램 오류와 예외

10.2 예외 클래스

10.3 예외 처리

10.4 자신만의 예외를 만들어 보기

-인터프리터 방식의 JShell을 이용하여 자바를 쉽게 배울 수 있다.

-객체지향 프로그래밍이라는 소프트웨어 개발 방법론을 학습한다.

-내용 대부분의 클래스에 대한 UML 클래스 다이어그램을 제공하고, 클래스 다이어그램을 그려주는 PlantUML 사용법을 설명하고 코드를 제공한다.

-스스로 문제를 풀어보며 프로그래밍 능력을 향상시킬 수 있도록 다양한 응용 연습문제를 제공한다.

-1학기 15주 정도에 다룰 수 있는 자바의 핵심 내용을 담았다.

-온라인 부록을 https://github.com/JavaBookCL에서 제공한다.