책 이미지

책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 언어 > 자바
· ISBN : 9791161751962
· 쪽수 : 536쪽
· 출판일 : 2018-08-30
책 소개
목차
1장. 자바 가상 머신
__JVM 구현체
__왜 JVM에서 개발하는가?
____시장 변화에 적응한 JVM
____자바 클래스 라이브러리
____생태계
__일반 사용 사례
____웹 애플리케이션
____빅데이터
____IoT
__JVM 개념
____가상 머신
____JIT 컴파일러
____기본형 데이터 타입
____클래스
____참조 타입
____가비지 컬렉터
____하위 호환성
____빌드 도구
__자바 에디션
____자바 SE
____자바 EE
____예제
____자바 ME
__JVM의 다른 언어들
____자바 외에 다른 언어를 선택하는 이유
____자바는 매우 장황한 언어다
____프로젝트에 JVM 언어 혼용하여 사용하기
____다른 언어로 단위 테스트 작성하기
__요약
2장. 자바 가상 머신에서 개발하기
__JDK
____JDK 설치
____JDK 들여다보기
____JRE
__패키지를 포함한 클래스 구조
____패키지란?
____패키지 이름 정하기
____패키지 이름 예제
____정규화된 클래스 이름
__자바 클래스 라이브러리
____자바 클래스 라이브러리 구조
____패키지 개요
____java.lang 패키지의 기본 클래스
____컬렉션 API-java.util.ArrayList와 java.util.HashMap
__커맨드 라인에서 JVM 애플리케이션 실행
____적어도 하나 이상의 클래스에 정적 main() 메소드 구현
____클래스 파일에 필요한 디렉터리 구조
____JVM 인스턴스를 위한 클래스경로 설정
____JAR 파일에 클래스 파일 배치하기
____java 명령어로 프로그램 실행하기
____JVM에서 실행하는 프로젝트 실무 사례
__이클립스 IDE
____이클립스 IDE 다운로드
____이클립스 IDE 설치
__요약
3장. 자바
__자바에서의 OOP
____클래스 정의
____클래스 접근 제한자
____Final 클래스 제한자-클래스 잠금
____패키지 정의
____클래스 가져오기
____클래스 멤버, 변수와 메소드 추가하기
____제한자
____생성자와 종료자
____상위형변환과 하위형변환
__자바 코드 작성
____연산자
____조건 체크
____POJO
____배열
____제너릭과 컬렉션
____루프
____스레드
____람다
__스타일 가이드
__퀴즈
__요약
4장. 자바 프로그래밍
__이클립스 IDE 구성
__자바로 웹 서비스 제작하기
____이클립스에서 새로운 그래들 프로젝트 생성하기
____그래들 빌드 파일 수정
____프로젝트 빌드
____백엔드 클래스 작성
__요약
5장. 스칼라
__스칼라 설치
__스칼라의 REPL 셸
__함수형 vs 명령형 프로그래밍
__스칼라 언어 문법과 규칙
____정적 타입 언어
____가변 변수와 불변 변수
____기본 스칼라 타입
____Strings
__스칼라에서의 OOP
____패키지와 하위패키지 선언
____멤버 가져오기
____클래스 정의
____인스턴스 변수와 메소드
____생성자
____클래스 확장
____메소드 오버로딩
____추상 클래스
____트레이트
____싱글턴 객체
____연산자 오버로딩
____case 클래스
__스칼라의 표준 라이브러리
____제너릭
____컬렉션
____XML 처리
__스칼라에서의 함수형 프로그래밍
____함수를 사용해서 컬렉션 검색하기
____맵과 필터, 리듀스 디자인 패턴
____커링
__퀴즈
__요약
6장. 스칼라 프로그래밍
__이클립스 플러그인 형태의 스칼라 IDE
____이클립스에 스칼라 IDE 설치
____스칼라 IDE 퍼스펙티브 전환
__SBT
____SBT 설치
____SBT 기반 이클립스 IDE 프로젝트 생성
____스칼라 컴파일러(scalac)
__아카 프로젝트 생성
____SBT 빌드 파일에 아카 의존성 추가
____스칼라 IDE 프로젝트 업데이트
____아카 개념
____첫 번째 아카 액터 QuotesHandlerActor 생성
____메시지 생성
____ScalaTest 기반 단위 테스트 작성
____메시지 처리기 구현
____QuotePrinterActor 생성
____메인 애플리케이션
__요약
7장. 클로저
__클로저 설치
____시작 스크립트 작성
__클로저 대화형 셸(REPL)
__클로저 언어
____문법
____표현식
____변수 정의
____함수 정의
____데이터 구조
__자바 클래스와 동작하기
____deftype과 defrecord를 가진 간단한 자바 클래스 생성
__에이전트로 상태 관리하기
____에이전트 예제
__스타일 가이드
__퀴즈
__요약
8장. 클로저 프로그래밍
__이클립스 IDE의 카운터클락와이즈 플러그인
____카운터클락와이즈 플러그인 설치
____자바 퍼스펙티브로 변환하기
__라이닌겐 빌드 도구
____라이닌겐 설치
__클로저에서 실행 가능한 프로그램 작성
____라이닌겐 없이 클래스 파일 컴파일
____라이닌겐으로 프로젝트 컴파일
__새로운 카운터클락와이즈 프로젝트 생성
____이클립스 IDE 안의 클로저 REPL
____프로젝트의 클로저 버전 변경
____의존성 추가
__테스트 주도 개발을 통해 모나드 탐구
__루미너스 웹 프레임워크
____루미너스 프로젝트 생성
____카운터클락와이즈에서 프로젝트 가져오기
____루미너스 프로젝트 탐색
____웹 애플리케이션에 페이지 추가
__요약
9장. 코틀린
__코틀린 설치
__실행 스크립트
__코틀린 REPL 대화형 셸
____코틀린 언어 기본
____로컬 변수 정의
____함수 정의
____코틀린 유형
____반복
__코틀린에서 OOP
____패키지 정의
____멤버 가져오기
____클래스와 생성자 정의
____클래스에 멤버 추가
____상속
____인터페이스
____가시성 제한자
____싱글턴과 컴패니언 객체
____데이터 클래스
____람다와 인라인 함수
__코틀린에서 절차적 프로그래밍
__스타일 가이드
__퀴즈
__요약
10장. 코틀린 프로그래밍
__이클립스 IDE를 위한 코틀린 플러그인
____이클립스 IDE를 위한 코틀린 플러그인 설치
____코틀린 퍼스펙티브로 전환
__아파치 메이븐
____아파치 메이븐 설치
____사전에 구성된 코틀린 스타터 키트 다운로드
____이클립스 IDE에 프로젝트 가져오기
____pom.xml 빌드 파일 탐구
____이클립스에서 빌드 파일 변경
__자바FX 데스크톱 GUI 애플리케이션 제작
____프로젝트 준비
____실행 가능한 애플리케이션 제작
____확장 함수 작성
____레이아웃 페인
____BorderPane 기반 레이아웃 구현
____애니메이션 구현
____프로그램 디버깅
__요약
11장. 그루비
__그루비 설치
____그루비콘솔과 그루비셸
__그루비 언어
____그루비에서 객체지향 프로그래밍
__그루비 개발자 키트(GDK)
____그루비 문자열(GStrings)
____컬렉션
__동적, 정적 프로그래밍
____메타 프로그래밍
____그루비에서 정적 프로그래밍
__퀴즈
__요약
12장. 그루비 프로그래밍
__그루비 이클립스 플러그인 설치
____자바 퍼스펙티브 변환
__아파치 아이비와 IvyDE
____이클립스 IDE용 아파치 IvyDE 플러그인 설치
__프로젝트 생성과 구성
____새로운 그루비 이클립스 프로젝트 생성
____아이비를 위한 ivy.xml 파일 생성
__JDBC(Java Database Connectivity)
____H2 데이터베이스
____메모리 내 데이터베이스 생성
__마크업빌더를 사용한 XML 생성
____SQL 기반으로 XML 생성
__Vert.x 마이크로서비스 플랫폼..
____아이비에 Vert.x 의존성 추가
____웹 서비스 생성
__요약
부록 A. 다른 JVM 언어
__오라클 나스호른
____JVM 기반 프로젝트에 나스호른 포함시키기
____나스호른 실행
__자이썬(파이썬)
____C파이썬과 자이썬의 차이
____자이썬 실행
__제이루비(루비)
____루비 온 레일즈와 제이루비
____제이루비 실행
__프레게(하스켈)
____프레게에서 자바 코드 호출
____프레게 실행
__실론
____실론의 모듈 시스템
____실론 실행
__요약