1. 광고배너
  2. 광고배너
/ 이전버튼 다음버튼
2
미리보기

자바 개발자를 위한 스칼라 프로그래밍
저자 : 토마스알렉산더 ㅣ 출판사 : 에이콘출판 ㅣ 역자 : 남기혁

2015.04.30 ㅣ 340p ㅣ ISBN-13 : 9788960777002

정가30,000
판매가27,000(10% 할인)
적립금 1,500원 (5%)
배송일정 05월 02일 출고 가능
주문 수량 변경시 안내 배송안내
쿠폰 및 결제혜택 확인하기

크기 B5(257mm X 188mm, 사륙배판)
제품구성 단행본
이용약관 청약철회
국내도서 > 컴퓨터 > 인터넷 > 홈페이지제작 (나모...

[목 차]

1장 스칼라 맛보기
자바 프로젝트에서 스칼라를 사용하면 좋은 점
- 간결하면서도 풍부한 표현력
- 높은 생산성
- 자바와 찰떡 궁합
- 뛰어난 비동기 및 동시성 처리
REPL로 배우는 스칼라 문법
- 변수 선언
- 클래스 정의
- case 클래스
컬렉션 연산
- 기본 타입으로 구성된 컬렉션 변환
- 복잡한 오브젝트에 대한 컬렉션
1. filter와 partition
2. 튜플
3. 맵
4. Option
5. 패턴 매칭 맛보기
6. map 메소드
7. 스트링 인터폴레이션
8. groupBy 메소드
9. foldLeft 메소드
정리

2장 코드 연동
데이터베이스를 이용한 REST API 생성
- 샘플 데이터베이스
- 메이븐 프로젝트 만들기
- JPA 엔티티와 REST 웹 서비스 생성
- 프로젝트 실행하고 테스트하기
- 자바 코드에 대한 유닛 테스트 추가
스칼라로 테스트 코드 작성하기
자바 메이븐 프로젝트에서 스칼라를 사용하도록 설정
스칼라와 자바 코드의 연동
- 컬렉션 타입 변환
- 자바빈 스타일의 프로퍼티
- 스칼라와 자바의 객체지향 지원 방식
- 자바 인터페이스를 개선한 스칼라 트레잇
- 오브젝트 선언
- 컴패니언 오브젝트
- 예외 처리
자바와 스칼라의 코딩 스타일 차이점
- 코드 레이아웃 다듬기
- 명명 규칙
정리

3장 스칼라 에코시스템
자바 IDE로 구축하는 스칼라 IDE
SBT 빌드
- SBT 살펴보기
1. 예제 프로젝트 생성
2. 이클립스와 인텔리제이 IDEA, 넷빈즈에 프로젝트 임포트하는 방법
3. 서블릿 컨테이너에서 실행할 웹 애플리케이션 만들기
- sbt-assembly로 하나의 .jar 파일로 만들기
- Scalariform으로 코드 포맷팅
스칼라 워크시트
HTTP 다루기
- 스칼라의 for 문
타입세이프 액티베이터의 활용
- 타입세이프 액티베이터에서 제공하는 템플릿으로
- 애플리케이션 만들기
REPL을 스크립트 엔진으로 활용
정리

4장 테스팅 도구
ScalaTest로 테스트 작성
- BDD 스타일 테스팅
- 기능 테스트
- ScalaMock으로 모킹하기
ScalaCheck을 이용한 테스팅
정리

5장 플레이 프레임워크
classic 플레이 배포 버전 시작하기
타입세이프 액티베이터 시작하기
플레이 애플리케이션의 구조
- 프레임워크의 구성
- 요청/응답 사이클
- 컨트롤러에서 요청 처리
- 뷰 렌더링
플레이에서 인증 처리
플레이 프레임워크 활용 팁
- 플레이에서 디버깅하기
- 버전 컨트롤 관련 사항
정리

6장 데이터베이스 사용 방법과 ORM의 미래
하이버네이트나 JPA와 같은 ORM 기술의 활용
스칼라에서 JPA 사용하기
플레이 프레임워크에서 persistence 처리하기
- Anorm을 이용한 간단한 예제
ORM 대신 사용할 수 있는 기술
슬릭 소개
플레이 애플리케이션 스캐폴딩하기
- 테스트 데이터 임포트하기
- H2browser로 데이터베이스 시각화하기
- 앱 생성 관련 코드 분석
- playcrud 유틸리티의 한계
정리

7장 웹 서비스에서 시스템 연동
스칼라에서 XML 데이터 바인딩하기
- SOAP 웹 서비스를 통해 scalaxb 구동하기
XML과 JSON 다루기
- XML 다루기
- JSON 다루기
- 플레이 프레임워크에서 제공하는 JSON 라이브러리
XML과 JSON으로 전달된 플레이 요청 처리하기
- JSON으로 플레이 응답 흉내내기
- 플레이에서 웹 서비스 호출하기
정리

8장 비동기와 동시성
동시성의 구성 요소
Async 라이브러리: SIP-22-Async
- 웹 서비스 조합
- await 구문을 사용하지 않고 서비스 연결하기
아카 살펴보기
- 액터 모델의 이해
- 동작 변경
- 메시지 처리에 실패했을 경우
- 액터 시스템 테스트
- 이 장에서 다루지 못한 Akka의 기능
정리

9장 반응형 웹 애플리케이션
반응형 애플리케이션의 정의
반응형 스트림 처리
- 플레이에서 제공하는 Iteratee 패턴
- Enumerator를 Enumeratee에 적용하기
플레이에서 제공하는 Iteratee와 웹소켓 사용하기
액티베이터 템플릿으로 반응형 웹 애플리케이션 만들기
- 반응형 주가 정보 애플리케이션
- 반응형 실시간 검색
- Play-Akka-Angular-WebSocket 템플릿
Actor Room 프로젝트
정리

10장 스칼라의 고급 기능
몽고DB
- 카스바
- 맵리듀스 사용하기
빅데이터 맛보기
스칼라의 DSL
- 내장형 DSL
- 파서 컴비네이터로 외장형 DSL 만들기
Scala.js
마지막 팁
- REPL에서 복사하고 붙여넣기
- REPL에서 코드 실행 시간 측정
정리
펼쳐보기
이 책은 자바(Java)에서 스칼라(Scala)로 갈아타거나 기존 자바 프로젝트를 스칼라로 확장하려는 자바 개발자가 빠른 시간 내에 스칼라를 익혀 현업에 적용할 수 있도록, 스칼라의 핵심 기능에 대해 다양한 실습 예제를 중심으로 소개한다. 자세한 내용을 담은 두꺼운 교과서나 레퍼런스는 부담스럽고, 자바 관점에서 스칼라의 핵심 기능과 프로그래밍 기법을 단기간에 익히려는 자바 프로그래머에게 유용한 주제로 구성됐다.
스칼라의 문법과 기본 개념, 그리고 자바와 다른 점을 중점적으로 소개한 다음, 곧바로 실제 동작하는 애플리케이션을 만들어보면서, 스칼라에서 흔히 사용하는 타입세이프(Typesafe)나 아카(Akka), 플레이(Play) 프레임워크와 새롭게 떠오르는 슬릭(Slick) 프레임워크에 대해 예제와 함께 하나씩 소개한다.

■ 스칼라 에코시스템
■ 자바에서 스칼라로 옮겨가는 방법
■ 플레이 프레임워크를 이용한 웹 개발
■ 스칼라의 테스팅 프레임워크로 데이터를 검사하는 방법
■ 스칼라에서 XML과 JSON 다루기
■ 스칼라 문법 익히기
■ 자바 프로젝트에서 스칼라 병행 사용
■ 타입세이프(Typesafe) 기술을 이용한 반응형 웹 개발
■ 아카(Akka) 프레임워크, 플레이(Play) 프레임워크뿐만 아니라, 최근 떠오르는 슬릭(Slick) 프레임워크 사용법
■ 빅데이터 관련 기술

1장, '스칼라 맛보기'에서는 JVM(Java Virtual Machine)에 대해 간략히 소개하고, 자바가 현재의 위치까지 올 수 있게 해준 핵심 기능을 소개한다. 그런 다음, 프로그램을 대화형으로 작성하게 해주는 강력한 도구인 스칼라 REPL(Read Eval Print Loop)을 사용해 코드를 직접 작성해보면서, 스칼라에서 제공하는 몇 가지 강력한 구문을 소개하고, 이를 통해 코드를 직관적으로 표현할 수 있을 뿐만 아니라 구현의 효율성도 높일 수 있음을 직접 확인해본다.

2장, '코드 연동'에서는 자바와 스칼라를 같은 코드 베이스에서 서로 연동하는 방법에 대해 소개한다. 그중에서도 특히 자바와 스칼라의 컬렉션을 서로 연동하고, 기존에 자바로 제공되는 라이브러리를 스칼라에서 쓰기 위한 방법을 중심으로 설명한다. 이 과정에서 스칼라 언어에서 권장하는 코딩 스타일과, 오랜 기간 동안 정립된 자바의 코딩 스타일에 대해서도 비교해본다.

3장, '스칼라 에코시스템'에서는 스칼라 프로그래밍에 관련된 여러 가지 도구와 에코시스템에 대해 소개한다. 이들 중 대부분은 자바로부터 물려받은 것이다. 특히 메이븐 같은 빌드 도구와 이클립스 같은 IDE는 자바에서 사용하던 것을 그대로 사용한다. 개발 주기에서 핵심적인 도구뿐만 아니라, 스칼라에서만 제공하는 SBT나 스칼라 워크시트, 그리고 타입세이프 액티베이터와 여기서 제공하는 템플릿에 대해서도 소개한다.

4장, '테스팅 도구'에서는 앞 장에서 소개한 스칼라 개발에 핵심적인 도구와 함께 유닛 테스트와 통합 테스트, 기능 테스트 등을 속성 중심으로 자동화된 방식으로 수행하기 위한 도구들을 소개한다.

5장, '플레이 프레임워크'에서는 플레이(Play) 프레임워크에 대해 자세히 살펴본다. 플레이에서 제공하는 뛰어난 기능 몇 가지를 예제를 통해 살펴보고, 기존 서블릿이나 J2EE 모델로 작성한 코드를 플레이 프레임워크로 전환하는 방법도 소개한다.

6장, '데이터베이스 사용 방법과 ORM의 미래'에서는 관계형 데이터베이스로 데이터의 영속성을 보장하는 방법에 대해 소개한다. 이 과정에서 기존에 잘 정립된 JPA나 하이버네이트 같은 기술을 활용할 수도 있고, 슬릭(SLICK, Scala Language-Integration Connection Kit)처럼 새로운 기술을 사용할 수도 있다. 슬릭의 내부를 보면 스칼라 언어에서 제공하는 강력한 기능을 그대로 활용하고 있는 것을 볼 수 있다. 또한 자바 프로젝트를 스칼라로 전환하도록, 기존 관계형 데이터베이스에 리버스 엔지니어링을 적용하여 플레이 프레임워크용 CRUD 애플리케이션을 작성하는 방법에 대해서도 소개한다.

7장, '웹 서비스에서 시스템 연동'에서는 최근 자바 애플리케이션 개발과 관련하여 흔히 언급되는, SOAP, XML, REST, JSON과 같은 웹 서비스 관련 기술에 대해 소개한다. 웹 서비스를 이용해 스칼라에서 외부 시스템을 연동하는 방법과 각각의 장점에 대해 예제를 통해 살펴본다.

8장, '비동기와 동시성'에서는 개발하는 과정에 마주치게 될 비동기와 동시성 문제를 스칼라에서 처리하는 방법에 대해 설명한다. 흔히 성능을 높이기 위해 비동기로 호출하거나 동시에 실행되도록 코드를 작성한다. 이 장에서는 이러한 비동기와 동시성 관련 코드를 작성할 때 발생하는 복잡도를 스칼라에서 쉽게 관리할 수 있다는 점을 예제와 함께 확인해본다. 또한 동시성 애플리케이션을 간편하게 개발하게 해주는 툴킷인 아카(Akka) 프레임 워크에 대해서도 소개한다.

9장, '반응형 웹 애플리케이션'에서는 8장에서 설명한 내용을 기반으로 최근 주목받고 있는 반응형 웹 애플리케이션을 소개한다. 반응형 웹 앱이 기존 웹 앱과 다른 점은 사용자에게 정보를 보낼 수 있고, 처리량의 변화에 유연하게 대처하고, 오류가 발생할 때 쉽게 복구하여 좀 더 역동적으로 동작한다는 점이다. 이 장에서는 지금까지 설명한 기능뿐만 아니라, 최근 부상하고 있는 웹 소켓과 같은 기술을 활용하여 플레이 프레임워크로 반응형 애플리케이션을 만들어본다.

10장, '스칼라의 고급 기능'에서는 웹 개발에 대한 최근 추세와 향후 전망에 대해 설명하면서 이 책을 마무리한다. 예를 들어 자바 개발자는 좋든 싫든 클라이언트를 개발할 때 자바스크립트를 다뤄야 할 일이 많아지고 있다. 최근에는 DSL(Domain Specific Language)도 주목받고 있다. 자바에서는 DSL을 제공하기가 쉽지 않다.

펼쳐보기

독자서평 쓰기 로그인을 하시면 독자서평을 쓰실 수 있습니다.

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

이 분야의 베스트

더보기 >

    이 분야의 신간

    더보기 >
      맨위로가기

      영풍문고 로고

      • 회사명 : (주)영풍문고
      • 대표이사 : 김경환
      • 소재지 : 서울특별시 종로구 청계천로 41 (우)03188
      • 사업자 등록번호 : 773-86-01800 ㅣ 통신판매업 신고번호 : 2023-서울종로-0130 [ 사업자정보확인 ]
      • 개인정보관리 책임자 : 조순제 ㅣ customer@ypbooks.co.kr ㅣ 대량주문 : webmaster@ypbooks.co.kr
      COPYRIGHT © YOUNGPOONG BOOKSTORE INC. ALL RIGHTS RESERVED.
      영풍문고 네이버블로그 영풍문고 인스타그램
      맨위로가기