메뉴 바로가기 검색 및 카테고리 바로가기

한빛미디어

개발의 즐거운이 가득한 곳! DEVGROUND 2019 (6월 27일(목), 28일(금))

자바 퍼즐러 : 세상에서 가장 재미있는 자바 책

한빛미디어

번역서

판매중

  • 저자 : 조슈아 블로크 , 닐 개프터
  • 번역 : 윤인성
  • 출간 : 2014-12-27
  • 페이지 : 340 쪽
  • ISBN : 9788968481444
  • 물류코드 :2144
초급 초중급 중급 중고급 고급
4.5점 (2명)
좋아요 : 37

단언컨대 이 책은 세상에서 가장 재미있는 자바 책입니다. 왜냐하면, 숙련된 개발자마저 무릎을 탁 치게 하는 97가지 퍼즐로 자바를 배우기 때문입니다. 이 책이 담고 있는 퍼즐을 풀다 보면 자바 언어와 표준 라이브러리 곳곳에 도사리는 위험과 미묘한 함정들을 이해하고 피해갈 수 있게 됩니다. 물론 퍼즐은 우리가 언제든 겪을 수 있는 내용을 담고 있어 유용함을 굳이 강조할 필요가 없을 정도입니다.

 


※ 이 책의 자바 버전
이 책은 2005년 자바 5 시절에 집필되었습니다. 하지만 자바 8이 발표된 지금도 유효하고 자바를 더 잘 활용하고자 하는 개발자에게 여전히 유용하기에 복간하게 되었습니다. 자바 8에서 이 책의 모든 소스 코드의 동작을 확인했습니다. 따라서 이 책의 본문에서 사용한 '자바 5에서'라는 표현을 '자바에서'로 대체해 이해해도 좋습니다.

 

 

이 책은 자바 프로그래밍 언어와 핵심 라이브러리 관련 퍼즐로 구성되어 있습니다. 자바 관련 지식이 있는 독자라면 이 책의 퍼즐을 이해할 수 있을 것입니다. 물론 그중엔 상당한 수준의 자바 개발자도 풀기 어려운 퍼즐도 있습니다.

퍼즐 대부분은 A라는 일을 하는 듯 보이지만 B라는 일을 하는 프로그램입니다. 어떤 일을 하는지 알아내는 것이 독자가 해야 할 일입니다. 퍼즐을 풀 때는 다음과 같은 방식으로 접근하기 바랍니다.

 

1. 퍼즐의 프로그램을 살펴보고 고민해 보세요. 일단 컴퓨터로 돌려보지 말고, 어떤 결과를 출력할지 예측해 보세요. 함정이 보이지 않는다고 해도 시간을 두고 고민하기 바랍니다.

2. 프로그램이 무엇을 출력할지 예측했다면 실행해 보세요. 생각했던 대로 작동하나요? 그렇지 않다면 왜 그런지 설명할 수 있도록 고민해 보세요.

3. 프로그램이 잘못 작성되었다고 가정하고, 어떻게 고쳐야 할지 고민해 보세요.

4. 위 과정을 모두 진행했다면 해답을 읽으세요.

 

문제를 풀었다고 해도 해답은 읽기 바랍니다. 해답에는 프로그램이 어떻게 작동하는지를 넘어서 자세한 분석과 설명이 들어 있기 때문입니다. 또한, 퍼즐에서 추가로 발생할 수 있는 함정을 설명하고, 어떻게 이런 함정을 피할 수 있는지 설명합니다.

부록에는 자바 플랫폼의 함정을 정리했습니다. 즉. 책에 나오는 퍼즐을 분류해서 설명했습니다. 부록은 이 책의 퍼즐을 모두 풀기 전까지는 읽지 마세요. 부록을 먼저 읽어 버리면 퍼즐을 푸는 재미가 사라질 것입니다. 부록은 책을 모두 읽고 나서 참고 자료로 사용하세요!

 

저자

조슈아 블로크

'자바의 어머니'로 불릴 만큼 자바 언어에 지대한 영향을 준 저명한 소프트웨어 엔지니어다. 대표적으로 컬렉션 프레임워크, java.math 패키지, assert 메커니즘을 설계하였고, 자바 7의 자동 자원 관리(ARM)도 그의 손을 거쳤다. 구글에서는 자바 인프라, 안드로이드, Dart 프로젝트에 참여했다.
졸트상 수상작인 『이펙티브 자바 2판』의 저자이며, 『자바 병렬 프로그래밍』의 공동 저자이다.

저자

닐 개프터

프로그래밍 언어 설계 및 구현 전문가로, 썬 마이크로시스템즈 재직 시절에 자바 1.4와 5 표준화에 크게 이바지하였다. 2004년에 구글로 이직한 후에도 제임스 고슬링 등과 함께 람다와 같이 최신 자바에 적용된 기능을 정립하는 데 앞장섰다.

현재는 마이크로소프트에서 차세대 C#과 VB의 핵심이 될 .NET 컴파일러 플랫폼(Roslyn) 프로젝트의 테크니컬 리드를 맡고 있다.

역자

윤인성

 

어쩌다가 책을 집필/번역하기 시작해서 지금까지 계속해서 집필/번역하고 있다. 현재 직업 특성상 집에서 나갈 이유가 없다는 것에 매우 만족하고 있다. 커피와 홍차를 즐겨 마신다. 요리, 피아노, 기타, 작곡, 그림, 스컬핑 등의 취미를 가지고 있다.

『혼자 공부하는 파이썬』의 저자 인터뷰를 하는 시점을 기준으로 이 책은 45번째 도서이며, 이번 달에는 매주 한 권씩 3권을 출간하게 되었다.

 

집필도서

『모던 웹을 위한 HTML5+CSS3 입문』 1판(2012), 2판(2015), 3판(2019),

『모던 웹을 위한 JavaScript+jQuery 입문』 1판(2011), 2판(2013), 3판(2017),

『모던 웹을 위한 Node.js 프로그래밍』 1판(2012), 2판(2013), 3판(2016),

『Hello Coding 파이썬』(2018)

 

 

1장. 소개


2장. 표현식 퍼즐
    1번째 퍼즐 - 홀수 확인
    2번째 퍼즐 - 변화를 위한 시간
    3번째 퍼즐 - Long 자료형 나눗셈
    4번째 퍼즐 - 초등학교 수준의 문제
    5번째 퍼즐 - 16진수의 즐거움
    6번째 퍼즐 - 다중 자료형 변환
    7번째 퍼즐 - 변수 교환
    8번째 퍼즐 - Dos Equis
    9번째 퍼즐 - 같은 것 같으면서도 다른 것(1)
    10번째 퍼즐 - 같은 것 같으면서도 다른 것(2)


3장. 문자 퍼즐
    11번째 퍼즐 - 최후의 웃음
    12번째 퍼즐 - ABC
    13번째 퍼즐 - 동물농장
    14번째 퍼즐 - 이스케이프 문자
    15번째 퍼즐 - 이상한 나라의 "Hello world"
    16번째 퍼즐 - 라인 출력기
    17번째 퍼즐 - 어라?
    18번째 퍼즐 - 스트링 치즈
    19번째 퍼즐 - 분류
    20번째 퍼즐 - 내 클래스 이름(1)
    21번째 퍼즐 - 내 클래스 이름(2)
    22번째 퍼즐 - URL 눈속임
    23번째 퍼즐 - No Pain, No Gain


4장. 반복문 퍼즐
    24번째 퍼즐 - 바이트의 즐거움
    25번째 퍼즐 - 비정상적인 증가
    26번째 퍼즐 - 반복문 안에서
    27번째 퍼즐 - 시프트 연산자와 변수 i
    28번째 퍼즐 - 반복문
    29번째 퍼즐 - 반복문의 신부
    30번째 퍼즐 - 반복문의 아들
    31번째 퍼즐 - 반복문의 유령
    32번째 퍼즐 - 반복문의 저주
    33번째 퍼즐 - 반복문의 악마
    34번째 퍼즐 - 큰 정수를 사용하는 반복문
    35번째 퍼즐 - 시계


5장. 예외 처리 퍼즐
    36번째 퍼즐 - 결정하기 힘든 프로그램
    37번째 퍼즐 - 이상한 예외
    38번째 퍼즐 - 초대받지 않은 손님
    39번째 퍼즐 - 안녕, 그리고 잘 가
    40번째 퍼즐 - 주저하는 생성자
    41번째 퍼즐 - 스트림
    42번째 퍼즐 - 어이없다
    43번째 퍼즐 - 위험한 예외
    44번째 퍼즐 - 클래스 분할
    45번째 퍼즐 - 피곤한 일


6장. 클래스 퍼즐
    46번째 퍼즐 - 애매한 생성자
    47번째 퍼즐 - 착한 나의 강아지와 고양이!
    48번째 퍼즐 - 정적 메서드
    49번째 퍼즐 - 점점 늘어나는 허리 사이즈
    50번째 퍼즐 - 우리는 같은 자료형이 아니야
    51번째 퍼즐 - 포인트가 뭐야?
    52번째 퍼즐 - 재미있는 덧셈
    53번째 퍼즐 - 내가 해야 할 일
    54번째 퍼즐 - Null과 Void
    55번째 퍼즐 - 천지창조


7장. 라이브러리 퍼즐
    56번째 퍼즐 - 큰 문제
    57번째 퍼즐 - 이름이 뭐예요?
    58번째 퍼즐 - 해시 문제
    59번째 퍼즐 - 무엇이 다를까?
    60번째 퍼즐 - 한 줄 문제
    61번째 퍼즐 - 일정 잡기
    62번째 퍼즐 - 이름 게임
    63번째 퍼즐 - 이전과 비슷한 문제
    64번째 퍼즐 - 나머지를 사용한 분류
    65번째 퍼즐 - 이상한 정렬


8장. 클래스 심화 퍼즐
    66번째 퍼즐 - private 접근 제한자 문제
    67번째 퍼즐 - 문자열이 아파요
    68번째 퍼즐 - 회색의 그림자
    69번째 퍼즐 - 검은 그림자
    70번째 퍼즐 - 패키지 문제
    71번째 퍼즐 - 임포트의 의무
    72번째 퍼즐 - final 키워드의 위기
    73번째 퍼즐 - 너의 비밀스러운 것들이 보이고 있어
    74번째 퍼즐 - 정체성 위기
    75번째 퍼즐 - 머리와 꼬리
    [용어정리] 이름 재사용과 관련된 기술


9장. 추가적인 라이브러리 퍼즐
    76번째 퍼즐 - 핑퐁
    77번째 퍼즐 - 락을 무너뜨리는 괴물
    78번째 퍼즐 - 리플렉션 주의 사항
    79번째 퍼즐 - 강아지의 삶
    80번째 퍼즐 - 추가적인 리플렉션
    81번째 퍼즐 - 돌아가는 "Hello world"
    82번째 퍼즐 - 비어 블라스트
    83번째 퍼즐 - 유일하지 않은 강아지
    84번째 퍼즐 - 강제 중단
    85번째 퍼즐 - 게으른 초기화


10장. 어려운 퍼즐
    86번째 퍼즐 - 괄호의 함정
    87번째 퍼즐 - 긴장된 관계
    88번째 퍼즐 - 원시 타입
    89번째 퍼즐 - 제네릭
    90번째 퍼즐 - 힘차고 강한 슈퍼클래스인데 왜 안 되지?
    91번째 퍼즐 - 직렬화
    92번째 퍼즐 - 제정신이 아닌 클래스
    93번째 퍼즐 - 클래스 전쟁
    94번째 퍼즐 - 셔플 실패
    95번째 퍼즐 - 후식


부록. 함정 정

  • ▶ 1부 : 전반적인 책 구성 및 첫 인상

    본 책을 독자로 하여금 내용파악이 용이하게 나뉘면 아래와 같이 10부분으로 나뉘어진다.

    1) Chapter1 : 소개
    2) Chapter2 : 표현식 퍼즐
    3) Chapter3 : 문자 퍼즐
    4) Chapter4 : 반복문 퍼즐
    5) Chapter5 : 예외 처리 퍼즐
    6) Chapter6 : 클래스 퍼즐
    7) Chapter7 : 라이브러리 퍼즐
    8) Chapter8 : 클래스 심화 퍼즐
    9) Chapter9 : 추가적인 라이브러리 퍼즐
    10) Chapter10 : 어려운 퍼즐
    ★ 부록 - 함정 정리

    우선 책에서 나와있는 목차를 논리적으로 흐름이 파악가능하게 요약하면 위와같이 10부분으로 요약이 가능합니다.
    각 챕터에 할당된 분량은 약 8~11개 정도의 작은 소제목들로 구성이 되있어 독자가 정해진 주제에 대해서 읽고 공부하기에 전혀 부담스럽지 않은 분량으로 구성이 되있다.
    또한 마지막 "부록 - 함정 정리"라는 코너가 존재하는데 이는 "자바 플랫폼에서 발생할 수 있는 자바와 관련하여 함정 내용을 정리한 것이며, 본 함정 정리 코너에서 처방 및 참고라는 키워드를 통해서 Chapter2~10에서 소개했던 자바 퍼즐들의 내용을 간단하게 되짚어보는 것이라고 할 수 있습니다.

    ▶ 2부 : 책에서 기술되고 있는 내용구성 평가

    본문에서 저자가 책에서 소개하고 있는 본문의 구성방식은 다음과 같다.
    1. 퍼즐에서 소개되고 있는 자바언어로 작성된 프로그램 분석 및 예측하기
    2. 프로그램의 출력물 예상
    3. 자바 프로그램이 잘못 작성되었다고 가정한 뒤 어떻게 고쳐야 할 지 고민해보기
    4. 해답 및 설명 참고

    본 책에서 채택하고 있는 구성 방식은 위에서 언급한 4가지 과정을 따른다.
    언뜻 보기에는 사실 다른 자바 책들과 별반 다를게 없어 보이며, 독자가 어떤 부분에서 매력을 느낄것이며 도움을 받을것인지 애매모호하게 느낄수도 있다.
    하지만 본인이 직접 주요 챕터(Chapter 5:예외처리 퍼즐, Chapter7:라이브러리 퍼즐)을 읽어보았는데 조금은 다른 느낌을 받았다.
    본 책에서 다른 자바 기본서와는 달리 평범한 내용을 소개하면서 지루한 내용을 전개해나가지 않는다.
    다만, 실제 자바언어로 개발을 하는 현장에서 간과하거나 실수가 발생할 부분을 정확히 지적해주어 원인 및 결과에 대해서 설명을 곁들어가면서 자세히 설명해주는 부분들이 눈에 많이 띄어서 책을 읽으면서 지루하다는 느낌을 전혀 받지 못하였다.

    ▶ 3부 : 전반적인 책에 대한 개인적 소감 및 느낀 점

    우선 책의 분량은 독자가 부담을 전혀 느끼지 않는 300페이지로 구성되어 있으며, 9개의 주요 챕터에 대해서 자바 소스 코드 소개, 자바 소스 코드에 대한 풀이, 소스코드 본문에 대한 부가 설명으로 얇은 책임에도 불구하고 알찬 내용을 소개해주고 있다.
    본 책은 많은 분량으로 방대한 지식을 전달하고자 하는 것이 아니며 독자로 하여금 자바 언어로 개발을 함에 있어서 간과하기 싶거나 쉬운 문제라도 다시 한 번 주의깊게 살펴보고 넘어가보라는 의미있는 교훈위주로 책이 서술되있어서 좋은 평가를 내리고 싶다.

  • 자바 고수가 만든 자바 퍼즐을 즐겁게 풀어 봅시다.
    우리가 잘못알고 있는 부분이나 저자가 꼭 알아야 하는 부분을 담아 놓았으며, 두고두고 볼 내용들로 가득하다고 생각됩니다.

결재하기
• 문화비 소득공제 가능
• 배송료 : 0원배송료란?

배송료 안내

  • 책, 아이템 등 상품을 3만원 이상 구매시 무료배송
  • 브론즈, 실버, 골드회원이 주문하신 경우 무료배송

무료배송 상품을 포함하여 주문하신 경우에는 구매금액에 관계없이 무료로 배송해 드립니다.

닫기

리뷰쓰기

닫기
* 도서명 :
자바 퍼즐러 : 세상에서 가장 재미있는 자바 책
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

글이나 이미지/사진 저작권 등 다른 사람의 권리를 침해하거나 명예를 훼손하는 게시물은 이용약관 및 관련법률에 의해 제재를 받을 수 있습니다.

1. 특히 뉴스/언론사 기사를 전문 또는 부분적으로 '허락없이' 갖고 와서는 안됩니다 (출처를 밝히는 경우에도 안됨).
2. 저작권자의 허락을 받지 않은 콘텐츠의 무단 사용은 저작권자의 권리를 침해하는 행위로, 이에 대한 법적 책임을 지게 될 수 있습니다.

오탈자 등록

닫기
* 도서명 :
자바 퍼즐러 : 세상에서 가장 재미있는 자바 책
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
자바 퍼즐러 : 세상에서 가장 재미있는 자바 책
구입처*
구입일*
부가기호*
부가기호 안내

* 회원가입후 도서인증을 하시면 마일리지 500점을 드립니다.

* 한빛 웹사이트에서 구입한 도서는 자동 인증됩니다.

* 도서인증은 일 3권, 월 10권, 년 50권으로 제한됩니다.

* 절판도서, eBook 등 일부 도서는 도서인증이 제한됩니다.

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?

자료실