본문내용 바로가기
MD의선택 무료배송 이벤트 사은품 소득공제

JVM 언어 입문 자바, 스칼라, 클로저, 코틀린, 그루비 체험하기

빈센트 반 데르 렌 지음 | 신은정 옮김 | 에이콘출판 | 2018년 08월 30일 출간
  • 정가 : 36,000원
    판매가 : 32,400 [10%↓ 3,600원 할인]
  • 통합포인트 :
    [기본적립] 1,800원 적립 [5% 적립] 안내 [추가적립] 5만원 이상 구매 시 2천원 추가적립 [회원혜택] 우수회원 5만원 이상 구매 시 2~3% 추가적립
  • 추가혜택 : 카드/포인트 안내 도서소득공제 안내 추가혜택 더보기
  • 배송비 : 무료 배송비 안내
  • 배송일정 : 서울특별시 종로구 세종대로 기준 지역변경
    12월 15일 출고 예정 배송일정 안내
  • 바로드림 : 인터넷으로 주문하고 매장에서 직접 수령 안내

이 책의 이벤트 해외주문/바로드림/제휴사주문/업체배송건의 경우 1+1 증정상품이 발송되지 않습니다.

  • 행사도서 포함 3만원 이상 구매 시, 리드잇 2019 캘린더 선..
    2018.12.04 ~ 2019.01.31
  • #리드잇 페이스북 페이지 팔로우 하시고, 신간소식 빠르게 받아보..
    2017.06.22 ~ 2025.07.31
상품상세정보
ISBN 9791161751962(1161751963)
쪽수 536쪽
크기 189 * 237 * 27 mm /987g 판형알림
이 책의 원서/번역서 Introduction to Jvm Languages/Leun, Vincent van der

책소개

이 책이 속한 분야

자바 가상 머신(JVM)을 등장시킨 자바 플랫폼에 대한 개괄적인 내용과 JVM의 주요 개념을 설명하고 가장 인기 있는 사용 사례를 소개한다. JVM 언어로 가장 대표적인 자바의 기본 원리와 애플리케이션 개발 방법을 시작으로 스칼라와 클로저, 코틀린, 그루비의 기본 원리와 개발 방법을 다룬다. 다양한 JVM 언어의 차이를 이해하면 개발하고자 하는 프로그램에 가장 적합한 개발 언어를 선택할 수 있는 혜안을 갖게 될 것이다.

저자소개

저자 : 빈센트 반 데르 렌

저자 빈센트 반 데르 렌 (Vincent van der Leun)
네덜란드 위트레흐트에 사는 소프트웨어 엔지니어다. 여덟 살 때부터 프로그래밍을 시작해서, 수년간 다양한 언어와 플랫폼을 가지고 일해왔다. 몇 년 전, 자바를 재발견한 이후로 자바7 프로그래머로서 오라클 인증 전문가가 됐고 JVM 팬보이 블로그를 시작했을 정도로 자바를 무척 좋아한다. 현재, 현대식 전자 상거래 솔루션을 전문으로 하는 클라우드스위트(CloudSuite)에서 근무하고 있다. 클라우드스위트에서 다양한 백엔드 시스템과 웹 서비스 영역을 담당하고, 프론트엔드 애플리케이션을 위한 자바스크립트 코드를 작성하는 일을 한다. 또한 복잡한 SQL 질의문을 작성해서 컨설턴트를 지원하며 동료 개발자들과 디자인 관련 토론을 즐긴다. 새로운 웹 프레임워크나 기술을 연구하지 않는 여가에는 컬트 영화와 잘 알려지지 않은 액션 영화 DVD와 블루레이를 수집하고 고전 과학 소설을 읽거나 비주류 가수와 작사가의 콘서트를 관람한다.

역자 : 신은정

역자 신은정
아주대학교 정보 및 컴퓨터공학부를 졸업하고, 2001년 IT 서비스 회사에 입사해 다양한 산업의 SI 프로젝트를 수행했으며, 웹 서비스와 BPM, SOA 등에 대한 연구 개발 프로젝트를 수행했다. 개발 생산성 향상을 위한 이클립스 기반 개발 도구와 스프링 기반 엔터프라이즈 프레임워크를 자바 기반으로 개발했으며, 클라우드에도 관심이 많아 한국정보화진흥원의 클라우드 관련 연구 과제와 OAuth 지침서 작성에도 참여했다. 이런 경험이 기반이 되어 93회 정보관리기술사에 합격했고, 현재는 통신업체에서 소프트웨어 거버넌스 업무를 수행하고 있다. 에이콘출판사에서 출간한 『(개정판) 이클립스 RCP』(2012), 『이클립스 4 플러그인 개발』(2013), 『이클립스 Juno 따라잡기』(2014), 『고급 이클립스 플러그인 개발』(2015)을 번역했다.

작가의 말

자바 가상 머신(Java Virtual Machine)은 최신 하드웨어 기능의 장점을 극대화할 수 있는 소프트웨어를 실행하는 성숙하고 매우 다재다능한 플랫폼이다. 한때 자바 기반의 애플리케이션은 느리고 거대하며 메모리를 많이 소비한다고 여겨지기도 했으나, 수년간에 걸쳐 많이 개선됐다. 동시에 수만 명의 사용자에게 서비스를 제공해야 하는 많은 주류의 클라우드 서비스와 웹사이트가 JVM 기반의 백엔드 시스템을 운영한다는 점은 우연이 아니다.
자바는 의심할 바 없이 JVM 기반에서 실행하는 애플리케이션을 생성하는 데 사용하는 가장 인기 있는 언어다. 하지만 매년 다른 언어들이 점점 더 인기를 얻고 있다. 이 책에서는 자바와 스칼라(Scala), 클로저(Clojure), 코틀린(Kotlin), 그루비(Groovy)라는 다섯 가지의 다른 JVM 기반의 언어를 다룬다. 이 가운데 몇 언어는 정적 자료형 언어이고, 나머지는 동적 자료형 언어다. 이 책은 객체지향 프로그래밍 언어와 함수형 프로그래밍 언어도 함께 다룬다. JVM은 이런 것이 모두 가능하게 만들 만큼 매우 많은 기능을 제공한다.
한 권의 책에서 이 모든 언어를 다루기 때문에 각각의 언어를 쉽게 비교할 수 있고, 샘플 프로젝트를 만들어 보며 자신에게 가장 적합한 언어를 고를 수 있다.

목차

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파이썬과 자이썬의 차이
자이썬 실행
제이루비(루비)
루비 온 레일즈와 제이루비
제이루비 실행
프레게(하스켈)
프레게에서 자바 코드 호출
프레게 실행
실론
실론의 모듈 시스템
실론 실행
요약

책 속으로

1장, ‘자바 가상 머신’에서는 자바 플랫폼과 자바 가상 머신에 대한 개괄적인 내용을 제공한다. 웹 애플리케이션과 빅데이터 분석, 사물인터넷(IoT)와 같이 JVM에서 동작하는 애플리케이션의 가장 인기 있는 사용 사례를 소개한다. 또한 JIT(just-in-time) 컴파일러와 가비지 컬렉션을 포함해서 JVM의 주요한 개념을 설명한다.
2장, ‘자바 가상 머신에서 개발하기’에서는 JVM의 기술적인 부분을 설명한다. 주요 운영 체제(윈도우, 맥OS, 리눅스)에서 자바 개발 키트(JDK)를 설치하는 절차와 JDK의 구조를 다룬다. 자... 더보기

출판사 서평

★ 이 책에서 다루는 내용 ★
■ JVM에 대한 실질적인 정보 얻기
■ 인기 있는 JVM 언어와 자바 클래스 라이브러리 이해
■ 명령형과 객체지향, 함수형과 같은 다양한 프로그래밍 패러다임
■ 이클립스IDE와 그래들(Gradle), 메이븐(Maven) 같은 일반적인 JVM 툴 사용
■ 스파크자바(SparkJava), Vert.x, 아카(Akka), 자바FX(JavaFX)와 같은 프레임워크 탐구
■ 자바스크립트(JavaScript)와 파이썬(Python), 루비(Ruby) 등을 포함한 다른 유명한 프로그래밍 언어의 변형에... 더보기

북로그 리뷰 (0) 쓰러가기

도서 구매 후 리뷰를 작성하시면 통합포인트를 드립니다.
결제 90일 이내 작성 시 300원 / 발송 후 5일 이내 작성시 400원 / 이 상품의 첫 리뷰 작성 시 500원
(포인트는 작성 후 다음 날 적립되며, 도서 발송 전 작성 시에는 발송 후 익일에 적립됩니다.
외서/eBook/음반/DVD/GIFT 및 잡지 상품 제외)
안내
  • 해당도서의 리뷰가 없습니다.

Klover 평점/리뷰 (0)

문장수집 (0) 문장수집 쓰기 나의 독서기록 보기
※구매도서의 문장수집을 기록하면 통합포인트 적립 안내

교환/반품/품절안내

※ 상품 설명에 반품/교환 관련한 안내가 있는 경우 그 내용을 우선으로 합니다. (업체 사정에 따라 달라질 수 있습니다.)

교환/반품/품절안내
반품/교환방법 마이룸 > 주문관리 > 주문/배송내역 > 주문조회 > 반품/교환신청 ,
[1:1상담>반품/교환/환불] 또는 고객센터 (1544-1900)

※ 오픈마켓, 해외배송주문, 기프트 주문시 [1:1상담>반품/교환/환불]
    또는 고객센터 (1544-1900)
반품/교환가능 기간 변심반품의 경우 수령 후 7일 이내,
상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내
반품/교환비용 변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
반품/교환 불가 사유
  • 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
    (단지 확인을 위한 포장 훼손은 제외)
  • 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
    예) 화장품, 식품, 가전제품(악세서리 포함) 등
  • 복제가 가능한 상품 등의 포장을 훼손한 경우
    예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
  • 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우 ((1)해외주문도서)
  • 디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  • 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  • 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에
    해당되는 경우
(1) 해외주문도서 : 이용자의 요청에 의한 개인주문상품으로 단순변심 및 착오로 인한 취소/교환/반품 시 ‘해외주문 반품/취소 수수료’ 고객 부담 (해외주문 반품/취소 수수료 : ①양서-판매정가의 12%, ②일서-판매정가의 7%를 적용)
상품 품절 공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는
이메일과 문자로 안내드리겠습니다.
소비자 피해보상
환불지연에 따른 배상
  • 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은
    소비자분쟁해결 기준 (공정거래위원회 고시)에 준하여 처리됨
  • 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의
    소비자 보호에 관한 법률에 따라 처리함

이 책의 원서번역서

안내

이 분야의 베스트

더보기+

이 분야의 신간

  • 하지원
    17,820원
  • 프랑소와 숄레
    29,700원
  • 이시카와 아키히코
    22,500원
  • 길벗R&D
    27,900원
  • 정종현
    19,800원
더보기+

바로가기

  • 우측 확장형 배너 2
  • 우측 확장형 배너 2

최근 본 상품