티스토리 툴바


현재까지 발견된 위 책의 오탈자 정보와 오류 사항 그리고 보다 매끄러운 문장을 위해 수정한 내용들입니다. 불편을 끼쳐드려 죄송합니다.

혹시 이 외의 오탈자 정보를 발견하시는 분이 계시면 출판사 메일 jeipub골뱅이gmail.com이나 역자 메일 insik8463골뱅이gmail.com으로 연락주시면고맙겠습니다. 

최종수정일자: 2012년 1월 5일
1쇄본 오탈자


아래의 오탈자 사항은 추후 2쇄 시에는 모두 반영하도록 하겠습니다. 불편을 끼쳐드려 다시 한 번 죄송하다는 말씀을 드립니다. 번역 및 편집 시에 미처 확인을 하지 못한 점 사과드립니다. 

26쪽 위에서 6번째 줄(역자 제공)
'resist'라는 단어가 있다고 한다. ==> 'regist'라는 단어가 있다고 한다.

29쪽 밑에서 5번째 줄(역자 제공)
'exists SameName' ==> 'existsSameName'

저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License

댓글을 달아 주세요

오탈자 정보 | Posted by 제이펍 2011/12/22 18:07

[프로세서를 지탱하는 기술]_오탈자

현재까지 발견된 위 책의 오탈자 정보와 오류 사항 그리고 보다 매끄러운 문장을 위해 수정한 내용들입니다. 불편을 끼쳐드려 죄송합니다.

혹시 이 외의 오탈자 정보를 발견하시는 분이 계시면 출판사 메일 jeipub골뱅이gmail.com이나 역자 메일 chinium골뱅이hanmail.net 으로 연락주시면고맙겠습니다. 

최종수정일자: 2012년 2월 10일
1쇄본 오탈자


아래의 오탈자 사항은 추후 2쇄 시에는 모두 반영하도록 하겠습니다. 불편을 끼쳐드려 다시 한 번 죄송하다는 말씀을 드립니다. 번역 및 편집 시에 미처 확인을 하지 못한 점 사과드립니다. 

42쪽 맨 하단의 주24 설명문 두 번째줄(오타 문의 님 제공)
메모리 공간이 264바이트임을 ==> 메모리 공간이 2^64바이트임을

123쪽 위에서 두 번째 줄(오타 문의 님 제공)

라인의 수는 2(라인 어드레스의 비트 수)가 된다. ==> 라인의 수는 2^(라인 어드레스의 비트 수)가 된다.

즉, 괄호 전체가 상부자 형태로 표기되어야 합니다. 
 

126쪽 그림 3.17의 2번(오타 문의 님 제공)

b[0]~b[7] 쓰기 ==> a[0]~a[7] 쓰기

183쪽 밑에서 6번째 줄
(오타 문의 님 제공) 
252
페이지 ==> 2^52페이지

183쪽 밑에서 5번째 줄
(오타 문의 님 제공) 
255
바이트 ==> 2^55바이트

201쪽 본문 1번째 줄
(오타 문의 님 제공) 
설명했다. ==> 3.1, 3.2절에 걸쳐 일반적인 고속화 기술과 새로운 용도를 지향한 기능확장에 대해 설명했다.  

221쪽 본문 위에서 6번째 줄(박보순 님 제공)
FSB(Font
Size Bus) ==> FSB(Front Side Bus)

309쪽 본문 아래에서 3번째 줄(오타 문의 님 제공)
데이터를 256개 ==>  데이터를 256M 

312쪽 본문 위에서 8번째 줄(오타 문의 님 제공) 
4 디코더 ==>  4 디코더  

322쪽 본문 아래에서 4번째 줄(오타 문의 님 제공)  
Input/Output Hub(IOH, 1) ==> Input/Output Hub(IOH, 2)

363쪽 아래에서 11-12번 째줄(오타 문의 님 제공)

그림 7.16에 나타냈듯이 M행M열의 타일에는 M2개의 요소가 포함된다. 이 타일끼리의 곱셈에는 M3회의 MAC
==>
그림 7.16에 나타냈듯이 M행M열의 타일에는 M^2개의 요소가 포함된다. 이 타일끼리의 곱셈에는 M^3회의 MAC 

저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License

댓글을 달아 주세요

  1.  댓글주소  수정/삭제  댓글쓰기 오타 문의 2011/12/27 08:57

    111page 그림 3.5 에서 1에 대한 설명이 없는데 ... 누락된건가요?

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2011/12/28 11:44

      안녕하세요? 원서를 확인해봤는데, 원서도 그림 3.5에서 1에 대한 부분이 없습니다. 원서 오류인 것 같습니다.
      내용으로 미뤄 보면 그림 3.5의 좌측 상단 음영 박스로 되어 있는 '명령용 메모리'가 1번으로 표시되어야 할 것 같습니다.

  2.  댓글주소  수정/삭제  댓글쓰기 오타 문의 2012/01/09 10:32

    123page 2번째줄에서 "라인의 수는 2(라인 어드레스의 비트 수)가 된다."로 되어있는데, 256이 되야 할 것 같은데 ... 검토 부착드립니다.

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2012/01/09 14:51

      다시 또 문의주셨네요. 두 건 모두 역자분에게 확인을 받은 후 다시 답변해드리겠습니다. 내일(10일)까지는 댓글로 답변드리도록 하겠습니다.

  3.  댓글주소  수정/삭제  댓글쓰기 오타 문의 2012/01/09 10:44

    126 page 그림3.17에서 2에 b[0]~b[7] 쓰기로 되어 있는데 의미상 a[0]~a[7]가 맞는 것 같습니다.

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2012/01/10 14:17

      지적해주신 두 건 모두 책이 잘못되어 있습니다. 바로잡아 오탈자 페이지에 등록해두었습니다. 죄송하고 감사합니다. 이후에 계속 공부하시면서 발견되는 오류들도 연락주시면 확인하여 드리겠습니다. 그리고 다른 독자들을 위해서 오탈자 페이지를 통해 공유하도록 하겠습니다. 감사합니다!

  4.  댓글주소  수정/삭제  댓글쓰기 오타 문의 2012/01/16 14:34

    183 page 밑에서 6번째줄에서 2^52 가 되야 할 것 같습니다.
    5번째 줄도 2^55 가 되야 할 것 같습니다. 검토 부탁드립니다.

  5.  댓글주소  수정/삭제  댓글쓰기 오타 문의 2012/01/16 15:39

    201 page 에서 본문 1번째 줄에서 "해 설명했다" 가 어색한데 확인 부탁드립니다.

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2012/01/16 17:11

      이건 정말 큰 실수네요. 편집 원고에는 이상이 없는데, 출력하면서 문제가 생긴 것 같습니다. 원본은 오탈자 페이지에 등록해두었습니다. 그리고 이렇게 다른 독자분들을 위해 꼼꼼하게 정리해주신 것에 대해 감사의 뜻으로 저희 출판사의 책 중 원하시는 책을 한 부 보내드리겠습니다.
      이메일(jeipub골뱅이gmail.com)으로 연락처와 주소, 존함, 도서명을 적어 주시면 무료로 보내드리도록 하겠습니다.

  6.  댓글주소  수정/삭제  댓글쓰기 박보순 2012/01/24 17:44

    Page 221에서 FSB(Font Size Bus)라고 되어 있는데 FSB(Front Side Bus)가 아닌가요?

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2012/01/24 22:42

      안녕하세요? 원서를 확인해보니 지적해주신 것처럼 FSB는 Front Side Bus가 맞습니다. 2쇄에 수정하도록 하겠습니다. 그리고 안내해주셔서 고맙습니다! 이후에도 혹시 발견된는 것들이 있으면 다른 독자분들을 위해 안내 부탁합니다. 새해 복 많이 받으세요!

  7.  댓글주소  수정/삭제  댓글쓰기 오타 문의 2012/01/30 11:16

    309 page (아래서 3번째줄) "2Gbit 칩에는 8비트 단위의 데이터를 256개 기억할 수 있다" 에서 "256K개" 가 되야 할 것 같습니다.

  8.  댓글주소  수정/삭제  댓글쓰기 오타 문의 2012/01/30 11:25

    312 page (위에서 8번째줄) "'4행 디코더'가 부속되어" 에서 '4열 디코더'가 되야 할 것 같습니다.

  9.  댓글주소  수정/삭제  댓글쓰기 오타 문의 2012/01/30 17:28

    322 page (아래에서 4번째 줄) "Input/Output Hub(IOH, 1)[3]"에서 "(IOH, 2)"가 맞는것 같습니다.

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2012/01/31 17:01

      문의해주신 것처럼 (IOH, 2)가 맞습니다. 반영하도록 하겠습니다.
      이제 거의 다 보셨네요. 꼼꼼하게 보시고 오탈자로 보이는 문의사항들 출판사로 연락해주셔서 고맙습니다. 덕분에 다른 독자님들에게 많은 도움이 된 것 같습니다. 지난 번에 말씀드린 것처럼 저희 메일로 연락처와 주소, 성함, 받고싶은 책을 알려주시면 감사의 표시로 한 권 보내드리도록 하겠습니다.
      감사합니다.

  10.  댓글주소  수정/삭제  댓글쓰기 오타 문의 2012/02/03 11:33

    감사합니다. 책을 일독한 후 받을만하다고 생각된다면 연락드리겠습니다. 아울러 좋은 원서 선정하고 번역하여 주셔서 독자로써 감사하게 생각할 따름입니다.

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2012/02/03 13:54

      네. 곧 다시 연락주세요! [프로세서를 지탱하는 기술]은 베타 리뷰어처럼 꼼꼼하게 체크해주신 덕분에 2쇄는 보다 완벽한 책이 될 수 있을 것 같습니다. 추운 겨울 건강하게 보내세요. 감사합니다.

  11.  댓글주소  수정/삭제  댓글쓰기 박보순 2012/02/10 08:15

    P.122의 상단 부분에서 "로드 명령의 경우는 메모리->캐시로 1회만 읽으면 되지만, 스토어 명령은 먼저 메모리->캐시로 읽고 스토어 명령으로 내용이 변경된 후에는 캐시->메모리"로 이렇게 수정이 되어야 하지 않나요? 앞에 그림의 설명은 그렇게 된 것 같은데요.

  12.  댓글주소  수정/삭제  댓글쓰기 박보순 2012/02/10 08:19

    P.122의 하단의 주5에서 64바이트=26이라고 되어 있는데 2^6이 아닌가요? 그리고 제가 잘몰라서 그런지 이부분내용을 알아 들을 수가 없는데 좀 더 자세히 설명을 해주시면 않될까요?

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2012/02/10 09:43

      안녕하세요? 저희도 관련 지식이 많으면 문의해주시는 것들에 대해 충분히 답변을 드리고 싶습니다. 이것과 위의 질문은 역자분에게 보내서 답변을 받도록 하겠습니다. 답변 오는 대로 다시 여기에 댓글로 안내해드리겠습니다. 하루나 이틀 정도만 기다려주시면 고맙겠습니다.

  13.  댓글주소  수정/삭제  댓글쓰기 오타 문의 2012/02/10 15:24

    363 page (아래서 12번째줄)
    "그림 7.16에 나타냈듯이 M행M열의 타일에는 M2개의 요소가 포함된다. 이 타일끼리의 곱셈에는 M3회의 MAC" 에서 M2가 M^2 여야하고 M3가 M^3 인것 같은데 확인 부탁드립니다.

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2012/02/10 17:01

      네. 지적해주신 게 맞습니다. 오탈자 포스트에도 등록했습니다. 이제 더는 없었으면 좋겠습니다. ^^; 안내 감사합니다!

오탈자 정보 | Posted by 제이펍 2011/12/16 21:21

[자바스크립트 마스터 북]_오탈자

현재까지 발견된 위 책의 오탈자 정보와 오류 사항 그리고 보다 매끄러운 문장을 위해 수정한 내용들입니다. 불편을 끼쳐드려 죄송합니다.

혹시 이 외의 오탈자 정보를 발견하시는 분이 계시면 출판사 메일 jeipub골뱅이gmail.com이나 역자 메일 insik8463골뱅이gmail.com으로 연락주시면고맙겠습니다. 

최종수정일자: 2012년 2월 9일
1쇄본 오탈자


아래의 오탈자 사항은 추후 2쇄 시에는 모두 반영하도록 하겠습니다. 불편을 끼쳐드려 다시 한 번 죄송하다는 말씀을 드립니다. 번역 및 편집 시에 미처 확인을 하지 못한 점 사과드립니다. 

27쪽 <script> 태그의 기술 장소 표의 가운데 부분 하단에서 두 번째 줄(천국지기 님 제공)
</body>와 임의의 콘텐츠...가 겹쳐 인쇄되었음 ==> </body>

57쪽 하단의 'JavaScript에서 이용 가능한 논리 연사자' 표에서(안수연 님 제공)
100 = 100 || 1000 == 500    //
false ==>  100 = 100 || 1000 == 500    // true
!(10 > 100)    // false ==>   !(10 > 100)    // true  

350쪽 <JSONP> 이미지의 내용누락(역자 제공)
구 모양의 이미지 아래에 있는 작은 네모 박스에 다음의 글자가 있어야 합니다. ==> 반환값

369쪽 표 아래에서 다섯 번째 행(역자 제공)
로벌 이벤트(453쪽)를 유효하게 할까 ==> 로벌 이벤트(452쪽)를 유효하게 할까

440쪽 그림 <요소의 조작에 관련되는 멤버>의 내용 수정(역자 제공)
before
(요소 c를 경향 요소의 에 추가)
==>
before
(요소 c를 현재 요소의 에 추가)

440쪽 그림 <요소의 조작에 관련되는 멤버>의 내용 수정(역자 제공)
insertBefore
(현재 요소를 요소 c의 에 추가)
==>
insertBefore
(현재 요소를 요소 c의 에 추가)

456쪽의 그림 <「남자」의 데이터만을 출력> 이란 일본어 화면을 한글 화면인 아래 화면으로 교체(역자 제공)


 

저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License

댓글을 달아 주세요

현재까지 발견된 위 책의 오탈자 정보와 오류 사항 그리고 보다 매끄러운 문장을 위해 수정한 내용들입니다. 불편을 끼쳐드려 죄송합니다.

혹시 이 외의 오탈자 정보를 발견하시는 분이 계시면 출판사 메일 jeipub골뱅이gmail.com로 연락주시면 고맙겠습니다.

최종수정일자: 2011년 10월 28일
1쇄 오탈자


아래의 오탈자 사항은 추후 2쇄 시에는 모두 반영하도록 하겠습니다. 불편을 끼쳐드려 다시 한 번 죄송하다는 말씀을 드립니다.

앞표지 날개
지은이 소개와 옮긴이 소개가 동일합니다. 지은이 소개는 다음의 내용입니다.

크리스토퍼 M. 모이어 Christopher M. Moyer
RIT(Rochester Institute of Technology)에서 소프트웨어 엔지니어링 학사 학위를 받았다. 클라우드 컴퓨팅 환경에서 5년이 넘는 개발 경력이 있으며, 가장 유명한 프로젝트로는 “boto”로 알려진 아마존 웹 서비스(AWS)의 클라이언트 라이브러리가 있다. 미치 가낫(Mitch Garnaat)과 함께 이 라이브러리를 사용하여 “Marajo”와 “botoweb”으로 알려진 웹 프레임워크를 개발하였다. 또한 이 프레임워크를 사용한 다수의 확장 가능한 애플리케이션 개발 경험도 있다. 크리스는 현재 Technology of Newstex, LLC의 부사장이며, 클라우드 마이그레이션에 대한 기술 개발 부분과 애플리케이션 개발팀에 대한 관리도 맡고 있다. 부인인 린(Lynn)과 함께 뉴욕 인근에 살고 있다.

* 위 수정사항은 현재(2011년 10월 28일) 보관 중인 서적들을 대상으로 재작업 중에 있습니다. 혹시 잘못된 책을 구매하신 분들 중 수정된 책으로 교환하고 싶으신 분들은 출판사(070-8201-9010 혹은 jeipub골뱅이gmail.com)으로 연락주세요. 새 책으로 무료 교환해드리겠습니다. 현재 작업 중이니 늦어도 11월 7일 이후에는 새 책으로 보내드리겠습니다. 이 교환은 책이 절판될 때까지 언제든지 가능함을 아울러 알려드립니다. 불편을 끼쳐서 죄송합니다!

판권 페이지에서
대니홍 에이전시원을 통해 ==> 에이전시원을 통해



저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License

댓글을 달아 주세요

현재까지 발견된 위 책의 오탈자 정보와 오류 사항 그리고 보다 매끄러운 문장을 위해 수정한 내용들입니다. 불편을 끼쳐드려 죄송합니다.

혹시 이 외의 오탈자 정보를 발견하시는 분이 계시면 출판사 메일 jeipub골뱅이gmail.com로 연락주시면 고맙겠습니다.
 

최종수정일자: 2011년 9월 30일
1쇄 오탈자


아래의 오탈자 사항은 추후 2쇄 시에는 모두 반영하도록 하겠습니다. 불편을 끼쳐드려 다시 한 번 죄송하다는 말씀을 드립니다.

판권 페이지에서
초판 1쇄 발행 2010년 9월 28일 ==> 초판 1쇄 발행 2011년 9월 28일

저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License

댓글을 달아 주세요

현재까지 발견된 위 책의 오탈자 정보와 오류 사항 그리고 보다 매끄러운 문장을 위해 수정한 내용들입니다. 불편을 끼쳐드려 죄송합니다.

혹시 이 외의 오탈자 정보를 발견하시는 분이 계시면 출판사 메일 jeipub골뱅이gmail.com이나 역자 메일 zmeun77골뱅이gmail.com으로 연락주시면고맙겠습니다.

최종수정일자: 2011년 8월 9일
2011년 5월 10일 1쇄본 오탈자


아래의 오탈자 사항은 추후 2쇄 시에는 모두 반영하도록 하겠습니다. 불편을 끼쳐드려 다시 한 번 죄송하다는 말씀을 드립니다.

125쪽 밑에서 9번째 줄(김태용 님 제공)
functionsend() ==> function send()

134쪽 코드 위에서 10번째 줄(김태용 님 제공)
functionsend() ==> function send()

저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License

댓글을 달아 주세요

오탈자 정보 | Posted by 제이펍 2011/05/02 10:23

[SQLite 마스터 북(제2판)]_오탈자

현재까지 발견된 위 책의 오탈자 정보와 오류 사항 그리고 보다 매끄러운 문장을 위해 수정한 내용들입니다. 불편을 끼쳐드려 죄송합니다.

혹시 이 외의 오탈자 정보를 발견하시는 분이 계시면 출판사 메일 jeipub골뱅이gmail.com이나 역자 메일 jcspro골뱅이hanafos.com으로 연락주시면고맙겠습니다.

최종수정일자: 2011년 12월 16일
2쇄본 오탈자


아래의 오탈자 사항은 추후 3쇄 시에는 모두 반영하도록 하겠습니다. 불편을 끼쳐드려 다시 한 번 죄송하다는 말씀을 드립니다. 원서의 오류가 대부분이나 번역 및 편집 시에 미처 확인을 하지 못한 점 사과드립니다. 

89쪽그림 3-10의 맨 우측 표의 마지막 행(권오건 님 제공)
412  Wax Beans  15  1 Vegetables ==>  412  Wax Beans  15  15 Vegetables  

89쪽 그림 3-10의 맨 좌측 표의 네 번째 행(역자 제공)
15  Chicken (kenny's)  8 ==> 15  Chicken (kenny's)  3



최종수정일자: 2011년 5월 2일
1쇄본 오탈자


아래의 오탈자 사항은 추후 2쇄 시에는 모두 반영하도록 하겠습니다. 불편을 끼쳐드려 다시 한 번 죄송하다는 말씀을 드립니다. 출간된 후 역자께서 책 전체를 다시 한 번 검토하여 보내주신 내용들입니다. 원서의 오류가 대부분이나 번역 및 편집 시에 미처 확인을 하지 못한 점 사과드립니다.

27쪽 하단에서 두 번째 줄(역자 제공)
www.sqlite.com에 ==> www.sqlite.org

60쪽 그림 3-1의 맨 우측 episodes 데이터 모델(역자 제공)
+id: Integer와 +name: text 사이에 다음이 포함되어야 함 ==> +season: Integer

68쪽 본문 맨 마지막 문단(역자 제공)
(앞의 문법에서 constraints로 나타낸) ==> (앞의 문법에서 제약조건으로 나타낸)

126쪽 상단에서 6번째 줄(역자 제공)
text 그룹의 값들은 ==> text 그룹의 값들은

200쪽 본문 두 번째 문단 첫 번째 줄(역자 제공)
zSQL 문자열 ==> zSql 문자열

203쪽 본문 두 번째 문단 네 번째 줄(역자 제공)
zSQL 문자열 ==> zSql 문자열

205쪽 소스 코드 첫 번째 줄(역자 제공)
#define SQLITE_NULL     5<A NAME="50520099_sqlite3_column_name16">
==>
#define SQLITE_NULL     5

287쪽 첫 번째 문단 마지막 행(역자 제공)
Java의 명령행 옵션으로 ==> java의 명령행 옵션으로

291쪽 본문 첫 번째 문단 네 번째 줄(역자 제공)
SQLite. Database.create_function()을 ==> SQLite.Database.create_function()을

292쪽 소스 코드 첫 번째 줄(역자 제공)
<A NAME="50520101_jdbc_driver">jdbc:sqlite:dirA/dirB/dbfile
==>
jdbc:sqlite:dirA/dirB/dbfile

314쪽 본문 마지막 문단 위에서 네 번째 줄(역자 제공)
Ctrl+click한 후 ==> Ctrl+클릭한 후

316쪽 Food 클래스 절 첫 번째 줄(역자 제공)
Cmd+click한다. ==> Cmd+클릭한다.

342쪽 본문 하단에서 두 번째 문단 첫 번째 줄(역자 제공)
지금까지 Android SQLite API를 ==> 지금까지 안드로이드 SQLite API를

342쪽 본문 하단에서 두 번째 문단 세 번째 줄(역자 제공)
SQLiteDatabase(근간이 되는 SQLite 데이터베이스)를 관리하는 메서드를 오버라이딩하는 우리 클래스를 구현한다.
==>
그것의 메서드를 오버라이딩하는 우리 클래스를 구현한다(우리 데이터베이스 관리를 위해서).

365쪽 본문 하단에서 두 번째 문단 두 번째 줄(역자 제공)
타입 연관(type affinity)에서는 ==> 타입 연관에서는

366쪽 하단에서 두 번째 줄(역자 제공)
문자열인 blob ==> 문자열인 'blob'

367쪽 노트 박스 첫 번째 줄(역자 제공)
예를 들어, floatingpoint는 ==> 예를 들어, 부동소수점은

368쪽 본문 하단에서 두 번째 문단 두 번째 줄(역자 제공)
real 값을 inser했을 때 ==> real 값을 insert했을 때

찾아보기 전체 아래의 파일로 수정(역자 제공)
SQLite마스터북(제2판)찾아보기.pdf







저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License

댓글을 달아 주세요

현재까지 발견된 위 책의 오탈자 정보와 오류 사항 그리고 보다 매끄러운 문장을 위해 수정한 내용들입니다. 불편을 끼쳐드려 죄송합니다.

혹시 이 외의 오탈자 정보를 발견하시는 분이 계시면 출판사 메일 jeipub골뱅이gmail.com이나  저자 지원 페이지인 http://www.androidside.com/bbs/board.php?bo_table=801로 연락주시면 고맙겠습니다.

최종수정일자: 2011년 8월 22일
2011년 6월 10일 2쇄본 오탈자
아래의 오탈자 사항은 추후 3쇄 시에는 모두 반영하도록 하겠습니다. 불편을 끼쳐드려 다시 한 번 죄송하다는 말씀을 드립니다.

11쪽 그림 1-3의 1행 3열에서
Medium density(16) ==> Medium density(160)
 
26쪽 TIP&TECH의 두 번째 줄
구해서 설치하며 된다. ==> 구해서 설치하면 된다.
 
33쪽 그림 2-3에서 맨 우측의 
onResume() ==> onRestart()
 
36쪽 그림 2-4의 두 번째 줄의 맨 윗 항목
bindtService() ==> bindService()
 
52쪽 그림 3-1에서
View Container 항목 설명 부분에서 쉼표 하나 제거
TabHost,, ==> TabHost,
 
Layout 항목 설명 부분에서 쉼표 추가
FrameLayout ==> FrameLayout,
 
94쪽 가운데의 android:layout_weight="1" 아래 3번째 줄
적색 텍스트뷰에는 2를 뷰여하고
==>
적색 텍스트뷰에는 2를 부여하고 
 
103쪽 예제 코드 아래 문단 두 번째 줄
부록 D, ==> 부록 B,
 
115쪽 ThemeDemoA1.java의 소스 코드에서
        super.onCreate(savedInstanceState);
        setTheme(R.style.Theme_big);
        setContentView(R.layout.main);
==> 
        setTheme(R.style.Theme_big);
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

 
132쪽 참고 프로젝트 제목 수정
EditTextDemoA1 ==> EditTextDemoA2 
 
170쪽 참고 프로젝트 제목 수정
TouchEventDemoA1 ==> MultiTouchDemoA1
 
172쪽 예제 코드 제목 수정
TouchEventDemoA1.java ==> MultiTouchDemoA1.java
 
197쪽 첫 번째 줄
갤러리(Gallery)는 수직으로 이미지를
==>
갤러리(Gallery)는 수평으로 이미지를
 
199쪽 코드 맨 아래 주석에서
이미지 리소스 아이드를 설정한다.
==>
이미지 리소스 아이디를 설정한다.
 
203쪽 코드 가운데 부분 주석에서
이미지 리소스 아이드를 설정한다.
==>
이미지 리소스 아이디를 설정한다.
 
228쪽 res/layout/main.xml 코드를 아래로 교체
SlidingDrawerDemoA2.java  <- 코드 타이틀로 지정
 
package com.androidside.slidingdrawerdemoa2;
 
import android.app.Activity;
import android.os.Bundle;
 
public class SlidingDrawerDemoA2 extends Activity {       
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }   
}
 
245쪽 표 android.widget.Toast 클래스의 메소드의 두 번째 항목
Wi-Fi 상태를 반환한다. ==> 토스트를 생성한다.
resId  리소스 아이디 ==> text  문자열
 
251쪽 API Method Summary 제목
android.widget.Toast 클래스의 메소드
==>
android.app.AlertDialog.Builder 클래스의 메소드
 
255쪽 (3) AlterDialog에 체크 리스트 보여주기 절의 2~3번 째 줄 
이렇게 생성된 리스트의 아이템들은 오직 한 개만 선택될 수 있으며,
==>
이렇게 생성된 리스트의 아이템들은 여러 개 선택할 수 있으며,
 
268쪽 첫 줄에서
섹션 06의 ==> 섹션 08

291쪽 코드 박스 아래 두 번째 줄
설정 액티비키를 ==> 설정 액티비티를
 
332쪽 두 번째 줄
동시에 여려 작업을 ==> 동시에 여러 작업을
 
427쪽 하단 코드 제목
레이아웃 XML - /res/layout/intentcaller2.xml
==>
레이아웃 XML - /res/layout/intentcallee2.xml
 
435쪽 세 번째 줄에서
(3서브) 비디오 실행 ==> 비디오 실행
 
435쪽 NOTE의 제목
오디오 실행 ==> 비디오 실행
 
436쪽에서 NOTE의 제목
오디오
실행 ==> 브라우저 실행
 
437쪽 NOTE의 제목
오디오 실행 ==> 이메일 보내기(여러 명의 수신자와 참조)
 
498쪽 API METHOD SUMMARY의 설명 세 번째 줄에서
지정된 위도와 경고 ==> 지정된 위도와 경도
 
512쪽에서
C:\Users\kairo96\.android>keytool -list ?alias androiddebugkey -keystore debug.keystore -storepass
android -keypass android
==>
C:\Users\kairo96\.android>keytool -list -alias androiddebugkey -keystore debug.keystore -storepass
android -keypass android
 
557쪽  하단에서 두 군데
그리고 전화를 끊었을 때는 CALL_STATE_IDEL이다.
==>
그리고 전화를 끊었을 때는 CALL_STATE_IDLE이다.
 
CALL_STATE_RING -> CALL_STATE_OFFHOOK -> CALL_STATE_IDEL
==>
CALL_STATE_RING -> CALL_STATE_OFFHOOK -> CALL_STATE_IDLE
 
590쪽 하단 코드 전체를 아래 내용으로 교체
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content">
        <EditText            
            android:id="@+id/viewarea"
            android:height="300dp"
            android:scrollbars="vertical"                                 
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" />
        <Button
            android:text="Get Url"
            android:id="@+id/geturl"           
            android:width="100dp"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="right" />
</LinearLayout>
 
599쪽 그림 5-145 그림의 stop 버튼 옆에 있는 코드에서
startService .....
==>
stopService .....
 
606쪽 그림 5-150에서
인트페이스 ==> 인터페이스
* 두 군데가 잘못되었음
 
625쪽 첫 번째 문단에서
시간이 변화는 ==> 시간이 변하는
실시간으로 변화는 ==> 실시간으로 변하는
 
730쪽 표 맨 하단에서
TouchEventDemoA1 ==> MultiTouchDemoA1


최종수정일자: 2011년 6월 1일
2011년 4월 15일 1쇄본 오탈자

아래의 오탈자 사항은 추후 2쇄 시에는 모두 반영하도록 하겠습니다. 불편을 끼쳐드려 다시 한 번 죄송하다는 말씀을 드립니다. (참고로, 함께 제공되는 소스 코드 파일에는 다행히 이상이 없습니다)

뒷표지 좌측 특징 소개 부분
이 책의 주요 특징의 다음과 같다. ==> 이 책의 주요 특징은 다음과 같다.

뒷표지 하단 분야 부분
모바일 프로그래밍 / iOS ==> 모바일 프로그래밍 / 안드로이드

49쪽
컴포넌트 비활성화 시점에 관련된 표와 그 아래의 한 문단의 위치가 바껴 있습니다.
문장이 위로 올라가고 표가 아래로 내려와야 정상입니다.

49쪽 표 분류항목에서
활성화 시점 ==> 비활성화 시점

64쪽 이미지 버튼의 참고 프로젝트 명 아래에서
Buttion과 기능이 비슷함 ==> Button과 기능이 비슷함

94쪽 프레임 레이아웃 바로 위에서
적생이 두 칸, 나머지가 ==> 적색이 두 칸, 나머지가

140쪽 두 번째 코드 박스 제목에서
레이아웃 XML - /res/layout/main.xml ==> SpinnerDemoA2.java 

141쪽 그림 4-25
amdrpod.R.layout.simple_spinner_item ==> android.R.layout.simple_spinner_item

152쪽 코드 위에서 15번 째 줄(빈행 제외)
@Override  <== 삭제되어야 합니다.

165쪽  하단의 ButtonClickDemoA3 박스 내의 코드를 아래 코드로 대체(이전 코드와의 다른 점은 아래 붉은색으로 표시)
package com.androidside.buttonclickdemoa3;
 
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;
 
public class ButtonClickDemoA3 extends Activity {
    EditText edit;           
    TextView text;       

    @Override   
    protected void onCreate(Bundle savedInstanceState) {       
        super.onCreate(savedInstanceState);       
        setContentView(R.layout.main);               

        edit = (EditText) findViewById(R.id.edit);               
        text = (TextView) findViewById(R.id.text);    
       
    }    
    
    public void clickButton(View v) {   
    
        text.setText(edit.getText());           
    }
}

186페이지 그림 4-54에서
<TabHost android:id="android:id/tabhost">
==>
<TabHost android:id="@android:id/tabhost">

226쪽
res/layout/main.xml 코드 전체 삭제(2중으로 게재되었었습니다)

261쪽 하단의 TIP & TECH 박스 안 맨 아래에 다음의 코드 한 줄 추가
LinearLayout row = (LinearLayout) inflater.inflate(R.layout.list_row, null);
 

275쪽 ContextMenuDemoA1.java 코드 박스 하단에서 8-10행(빈 줄 포함)
case MENU_ONE: selectedMenu = "menu_one";
case MENU_TWO: selectedMenu = "menu_two";
case MENU_THREE: selectedMenu = "menu_three"; 
==>
case MENU_ONE: selectedMenu = "menu_one"; break;
case MENU_TWO: selectedMenu = "menu_two"; break;
case MENU_THREE: selectedMenu = "menu_three"; break;

290쪽 코드 박스 제목 수정
PrefEdit.java ==> PrefDemoB1.java

308쪽 android.graphics.Bitmap 클래스의 메소드 표에서 첫번째 메소드 설명 부분
주어진 비트맵에서 부분 비트맵을 봔환한다.
==>
주어진 비트맵에서 부분 비트맵을 반환한다.

310쪽  박스 내 코드에서 아래 부분 공백 라인 추가
import android.view.View;
public class CanvasDemoB2 extends Activity {
==>
import android.view.View;
 
public class CanvasDemoB2 extends Activity {


316쪽 하단의 AndroidManifest.xml 코드 박스에서
하단 두 번째 줄 코드가 현재 8자 들여쓰기되어 있는데, 좌측에서 4자 들여쓰기로 수정되어야 함.
        <uses-permission android:name=”android.permission.INTERNET” />
==>
    <uses-permission android:name=”android.permission.INTERNET” />

329쪽 맨 아래 코드 아래에 다음의  내용을 추가
그리고 setListener() 메소드에서는 버튼을 찾아서 이전(webView.goBack()), 이후(webView.goForward()), 리로딩(webView.reload()), 홈(webView.loadUrl(HOME_URL))을 구현하면 된다. 이 코드는 매우 단순하므로 생략하도록 하겠다. 만약 잘 모르겠다면, 이 책의 소스 코드를 살펴보기 바란다.

354쪽 박스 내의 아래 내용 불필요하므로 모두 삭제
package com.androidside.listviewdemoa0;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.TextView;


367쪽 맨 아랫줄에서
기존 코드를 먼저 작성해보겠다. ==> 기본 코드를 먼저 작성해보겠다.

368쪽
1)첫 번째 코드 박스 하단에서 내용을 좀 더 명확히 하기 위해 아래에서 적색 라인 추가

    public void onListItemClick(ListView parent, View v, int position, long id) {
        selected.setText(cars[position]);
    }
    // NewArrayAdapter 클래스 생략
}
 
2) 두 번째 코드 박스 두 번째 줄에서 
// 생략 ==> // 기본 코드 생략

388쪽 맨 아랫줄에서
클릭하면 파일이 저장되면 된다. ==> 클릭하여 파일을 저장하면 된다.

398쪽 첫 번째 API 제목 수정
View.OnClickListener 클래스의 메소드
==>
android.database.sqlite.SQLiteDatabase 클래스의 메소드

398쪽 첫 번재 API 표에서 맨 하단에 아래의 행 하나를 추가
 

 long insert (String table, String nullColumnHack, ContentValues values)
주어진 values를 테이블 table에 추가한다.
 
매개변수
table  데이터를 추가할 테이블
nullColumnHack  일반적으로 null을 사용하며, null이 아닐 경우는 nullColumnHack에 지정된 이름에 해당하는 컬럼의 값이 존재하지 않을 경우 NULL을 추가한다.
 
반환
새로 추가된 row의 row ID를 반환, 에러가 발생했다면 -1을 반환


563쪽 코드 박스 제목 수정
Androidmanifest.xml ==> AndroidManifest.xml
 
571쪽 코드 박스 제목 수정
Androidmanifest.xml ==> AndroidManifest.xml

625쪽 하단 코드 박스 제목 수정
/res/layout/hellowidget.xml ==> /res/layout/timewidget.xml

704쪽 밑에서 10행 소제목
Android SDK R08 ==> Android SDK R10

717쪽 그림 아래 첫 줄에서
Android SDK Tools, revision 8~ ==> Android SDK Tools, revision 10~
 
717쪽 그림 아래 문단 3번 째 줄 끝부분
SKD Platform...으로 시작하는 ==> SDK Platform...으로 시작하는

저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License

댓글을 달아 주세요

현재까지 발견된 위 책의 오탈자 정보와 오류 사항 그리고 보다 매끄러운 문장을 위해 수정한 내용들입니다. 불편을 끼쳐드려 죄송합니다.

혹시 이 외의 오탈자 정보를 발견하시는 분이 계시면 출판사 메일 jeipub골뱅이gmail.com이나  역자가 운영 중인 까페 http://cafe.naver.com/petersbook으로 연락주시면 고맙겠습니다.

최종수정일자: 2011년 8월 28일
1쇄, 2쇄본 오탈자


아래의 오탈자 사항은 추후 3쇄 시에는 모두 반영하도록 하겠습니다. 불편을 끼쳐드려 다시 한 번 죄송하다는 말씀을 드립니다.

3장 78쪽(John 님 제공)
이제, Touch Up Insede 이벤트와 이벤트 핸들러를 연결한다.
==>
이제, Touch Up Inside 이벤트와 이벤트 핸들러를 연결한다.

10장 310쪽(Yuki 님 제공)
다음의 코드는 tmp 폴더에.... ... 경로를 반환한다.
NSString *fileName = [[self documentPath] stringByAppendingPathComponent:@"data.txt"];
==>
다음의 코드는 tmp 폴더에.... ... 경로를 반환한다.
NSString *fileName = [[self tempPath] stringByAppendingPathComponent:@"data.txt"];

10장 366쪽(Yuki 님 제공)
[[NSNotificationCenter defaultCenter] addObserver:self
                               elector:@selector(movieFinishedCalback:)
                                       name:MPMoviePlayerPlaybackDidFinishNotification
                            object:player];
==>
[[NSNotificationCenter defaultCenter] addObserver:self
                              selector:@selector(movieFinishedCalback:)
                                       name:MPMoviePlayerPlaybackDidFinishNotification
                            object:player];

14장 415쪽 볼드체 오류(Yuki 님 제공)
CGFloat netRotation;
CGPoint netTranslation;

==>
CGFloat netRotation;
CGPoint netTranslation;

14장 419쪽(Yuki 님 제공)
NSARRAy *images; ==> NSArray *images;

15장 459쪽(Yuki 님 제공)
가속도계를 통해 받은 데이트 ==> 가속도계를 통해 받은 데이터

20장 571쪽 볼드체 누락(Yuki 님 제공)
#import <CoreLocation/CoreLocation.h>
==>
#import <CoreLocation/CoreLocation.h>

20장 577쪽 볼드체 누락(Yuki 님 제공)
MKMapView *mapView;
==>
MKMapView *mapView;

20장 583쪽(Yuki 님 제공)
//---방향을 익식할 나침반 얻기---
==>
//---방향을 인식할 나침반 얻기---

21장 614쪽(Yuki 님 제공)
새로운 위치를 수신할 수가 없게 될 것이는 점이다.
==>
새로운 위치를 수신할 수가 없게 될 것이라는 점이다.

21장 623쪽 마지막 줄에서(Yuki 님 제공)

경고레 표시할 ==> 경고에 표시할

최종수정일자: 2011년 6월 15일
1쇄본 오탈자


아래의 오탈자 사항은 2011년 6월 30일에 발행된 2쇄에는 모두 반영되었습니다.

1장 20쪽 밑에서 2행(최우식 님 제공)
개발자 인증서가 여러분의 장치에 설치되어야 한다. 부록 E는 이 절차에 대한 자세한 내용을 설명한다.
==>
개발자 인증서가 여러분의 장치에 설치되어야 한다. 부록 A는 이 절차에 대한 자세한 내용을 설명한다.

709쪽 밑에서 4행(Yuri님 제공)
[str2 retain];  // ---str2는 여러분이 소유한 것이 아니기 때문에 안된다.---
==>
[str2 release];  // ---str2는 여러분이 소유한 것이 아니기 때문에 안 된다.---

710쪽 위에서 5행(Yuri님 제공)
[str2 retain];  // ---str2는 여러분이 소유한 것이므로 괜찮다.---
==>
[str2 release];  // ---str2는 여러분이 소유한 것이므로 괜찮다.---

저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License

댓글을 달아 주세요

현재까지 발견된 위 책의 오탈자 정보와 오류 사항 그리고 보다 매끄러운 문장을 위해 수정한 내용들입니다. 불편을 끼쳐드려 죄송합니다.

혹시 이 외의 오탈자 정보를 발견하시는 분이 계시면 출판사 메일 jeipub골뱅이gmail.com이나  저자 지원 게시판인 http://www.androidside.com/bbs/board.php?bo_table=820&sca=%C1%A4%BF%C0%C7%A5로 연락주시면 고맙겠습니다.

최종수정일자: 2011년 11월 21일
아래의 오탈자 사항은 3쇄 시에 모두 반영하도록 하겠습니다. 불편을 끼쳐드려 다시 한 번 죄송하다는 말씀을 드립니다. 

11쪽 소스 코드 제목에서
mainActivity.java == > MainActivity.java

107쪽 소스 코드 제목에서
MainActivity.java의 Bubble Class == > MainActivity.java의 MyBubble Class

134쪽 소스 코드 9행(공백, 주석줄 불포함)
SurfaceHolder mHolder; // SurfaceHolder <=== 이 문장 삭제

134쪽 소스 코드 14행(공백, 주석줄 불포함)
mHolder = holder; // SurfaceHolder 보존 <=== 이 문장 삭제

164쪽의 소스 코드 아래에서 5행, 8행, 11행, 15행에 있는 MyGameView를 모두 mGameView로 바꿈 (4군데)



2011년 3월 11일 1쇄본 오탈자
 
아래의 오탈자 사항은 추후 2쇄 시에는 모두 반영하도록 하겠습니다. 불편을 끼쳐드려 다시 한 번 죄송하다는 말씀을 드립니다. (참고로, 함께 제공되는 소스 코드 파일에는 다행히 이상이 없습니다)


76쪽14행
dir = -dir;  ==>  dir = -1;
 
260쪽 5행
MyGameView.StopGame();  ==>  mGameView.StopGame();

저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License

댓글을 달아 주세요

  1.  댓글주소  수정/삭제  댓글쓰기 Favicon of http://lemonflavor.tistory.com BlogIcon 레몬에이드 2011/04/18 17:29

    화이팅! >ㅁ</

현재까지 발견된 위 책의 오탈자 정보와 오류 사항 그리고 보다 매끄러운 문장을 위해 수정한 내용들입니다. 불편을 끼쳐드려 죄송합니다.

혹시 이 외의 오탈자 정보를 발견하시는 분이 계시면 출판사 메일 jeipub골뱅이gmail.com이나  저자 메일 happyleemail골뱅이gmail.com으로 연락주시면 고맙겠습니다.

최종수정일자: 2011년 1월 5일
2010년 12월 21일 1쇄본 오탈자

아래의 오탈자 사항은 추후 2쇄 시에는 모두 반영하도록 하겠습니다. 불편을 끼쳐드려 다시 한 번 죄송하다는 말씀을 드립니다.

xiii페이지 아래에서 6번째 줄
쉽지 않는 ==> 쉽지 않은

32페이지 두 번째 코드의 아래에서 4번째 줄
dispatchEvent(new mageWithDataLoaderEvent( ==> dispatchEvent(new ImageWithDataLoaderEvent(

38페이지 본문 위에서 두 번째 줄
_imageLoaderEventList 변수는 ==> _imageWithDataLoaderEventList 변수는

39페이지 본문 위에서 세 번째 줄
_imageLoaderEventList 변수에 ==> _imageWithDataLoaderEventList 변수에

40페이지 밑에서 6번째 줄
ImageWith DataLoaderEvent ==> ImageWithDataLoaderEvent

40페이지 밑에서 3번째 줄
GameResourceMnager ==> GameResourceManager

42페이지 가운데 소스코드에서
for(var i:unit=0; i<_imageLoaderEventList.length; i++) 
==>
for(var i:unit=o; i<_imageWithDataLoaderEventList.length; i++) 

42페이지 본문 세 번째 문단 첫 번째 줄에서
imageLoaderEventList 변수가 ==> _imageWithDataLoaderEventList 변수가

56페이지 코드의 위에서 두 번째 줄
new Bitmap(cropImageBitmapData); ==> new Bitmap(cropImageBD);

77페이지 아래에서 2번째 줄
자신밖에는 불가능하다는 것이겠지요. ==> 자신만 가능하다는 것이겠지요.

저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License

댓글을 달아 주세요

  1.  댓글주소  수정/삭제  댓글쓰기 Favicon of http://lemonflavor.tistory.com BlogIcon 레몬에이드 2011/01/05 09:08

    체크체크... 프린트 해서 가져가야긋따 +ㅁ+

현재까지 발견된 위 책의 오탈자 정보와 오류 사항 그리고 보다 매끄러운 문장을 위해 수정한 내용들입니다. 불편을 끼쳐드려 죄송합니다.

혹시 이 외의 오탈자 정보를 발견하시는 분이 계시면 출판사 메일 jeipub골뱅이gmail.com이나  역자 메일 chosungmann골뱅이daum.net으로 연락주시면 고맙겠습니다.


최종수정일자: 2011년 4월 23일
3쇄본 오탈자
114쪽 코드 3-12 밑에서 다섯 번째 줄(원서오류)(임종호 님 제공)
// onCreate가 종료된 후 호출된다. UI 상태 복구에 사용한다.
==>
// onStart가 종료된 후 호출된다. UI 상태 복구에 사용한다. 

이에 따라 그림 3-7도 아래와 같이 수정되어야 합니다.


2쇄본 오탈자
114쪽 그림 3-7에서(원서오류)(송호진 님 제공)
Activity.onCreate 다음에 있는 Activity.onSaveInstanceState ==> Activity.onRestoreInstanceState
Activity.onResume 다음에 있는 Activity.onRestoreInstanceState ==>  Activity.onSaveInstanceState

9장 404쪽과 408쪽 전부(인쇄오류)



1쇄본 오탈자
아래의 소스 코드 오류들을 수정한 파일은 다음에서 받으실 수 있습니다.
==> http://jpub.tistory.com/102 의 소스 코드(역자 제공)

이 블로그에서 소스코드 들여쓰기는 서체 문제로 인해 글자 하나와 스페이스 하나가 일대일 대응이 되지 않고 있습니다.
아래 내용을 복사하여 메모장에 붙여 보시면 정확하게 보실 수 있음을 알려 드립니다.

185페이지 밑에서 5번째 줄부터 186페이지 위에서 3번째 줄까지 볼드 처리(역자 제공)
@Override
public void onCreateContextMenu(ContextMenu menu,
                                View v,
                                ContextMenu.ContextMenuInfo menuInfo) {
    super.onCreateContextMenu(menu, v, menuInfo);

    menu.setHeaderTitle("할 일 아이템 선택");
    menu.add(0, REMOVE_TODO, Menu.NONE, R.string.remove);
}
==>
@Override
public void onCreateContextMenu(ContextMenu menu,
                                View v,
                                ContextMenu.ContextMenuInfo menuInfo) {
    super.onCreateContextMenu(menu, v, menuInfo);

    menu.setHeaderTitle("할 일 아이템 선택");
    menu.add(0, REMOVE_TODO, Menu.NONE, R.string.remove);
}

187페이지 위에서 19번째 줄은 볼드처리를 해제(역자 제공)
registerForContextMenu(myListView); ==> registerForContextMenu(myListView);

188페이지 밑에서 11, 12번째 줄 2줄을 볼드처리 해제(역자 제공)
AdapterView.AdapterContextMenuInfo menuInfo;
menuInfo =(AdapterView.AdapterContextMenuInfo)item.getMenuInfo();
==>
AdapterView.AdapterContextMenuInfo menuInfo;
menuInfo =(AdapterView.AdapterContextMenuInfo)item.getMenuInfo();

232페이지 위에서 6번째 줄 코드 수정(역자 제공)
create = _create; ==> created = _created;

263페이지 위에서 13번째줄 부터 4줄을 볼드 처리(역자 제공)
<string name="auto_update_prompt">자동 업데이트?</string>
<string name="update_freq_prompt">업데이트 빈도</string>
<string name="min_quake_mag_prompt">최소 진도</string>
<string name="menu_preferences">환경설정</string>
==>
<string name="auto_update_prompt">자동 업데이트?</string>
<string name="update_freq_prompt">업데이트 빈도</string>
<string name="min_quake_mag_prompt">최소 진도</string>
<string name="menu_preferences">환경설정</string>

272페이지 위에서 10번째 줄을 볼드 처리(역자 제공)

    }
}
==>
    }
}

311페이지 위에서 3번째줄 부터 4줄을 볼드 처리 해제(역자 제공)
toDoDBAdapter = new ToDoDBAdapter(this);

// 데이터베이스를 개방 또는 생성한다.
toDoDBAdapter.open();

populateTodoList();

==>
toDoDBAdapter = new ToDoDBAdapter(this);

// 데이터베이스를 개방 또는 생성한다.
toDoDBAdapter.open();

populateTodoList();

322페이지 위에서 11번째 줄 코드 수정(역자 제공)
String where, String[] wArgs) {
==>
String where, String[] whereArgs) {

323페이지 위에서 18번째 줄 코드 수정(김성호 님 제공)
+ KEY_MAGNITUDE + " FLOAT), "
==>
+ KEY_MAGNITUDE + " FLOAT, "

330페이지 밑에서 3번째 줄을 볼드 처리(역자 제공)
loadQuakesFromProvider();
==>
loadQuakesFromProvider();

361페이지 밑에서 4, 5번째 줄 2줄을 볼드 처리(역자 제공)
myLocationText.setText("현재 위치:\n" +
                       latLongString + "\n" + addressString);
==>
myLocationText.setText("현재 위치:\n" +
                       latLongString + "\n" + addressString);

405페이지 밑에서 12번째 줄 코드 수정(역자 제공)

"yyyy-MM-dd 'T 'hh:mm:ss 'Z '"
==>
"yyyy-MM-dd'T'hh:mm:ss'Z'"

407페이지 위에서 3번째 줄부터 408페이지 위에서 13번째 줄까지의 모든 코드를 아래 코드로 대체(역자 제공)
private Timer updateTimer;
 
private int minimumMagnitude = 0;
private boolean autoUpdate = false;
private int updateFreq = 0;
 
@Override
public int onStartCommand(Intent intent, int flags, int startId) {

    // 공유 환경설정을 얻어온다.
    Context context = getApplicationContext();
    SharedPreferences prefs =
        PreferenceManager.getDefaultSharedPreferences(context);

    autoUpdate = 
        prefs.getBoolean(Preferences.PREF_AUTO_UPDATE, false);

    minimumMagnitude = 
        Integer.parseInt(prefs.getString(Preferences.PREF_MIN_MAG, "0"));

    updateFreq = 
        Integer.parseInt(prefs.getString(Preferences.PREF_UPDATE_FREQ, "0"))

    updateTimer.cancel();

    if(autoUpdate) {
        updateTimer = new Timer("earthquakeUpdates");

        updateTimer.scheduleAtFixedRate(new TimerTask() {
            public void run() {
                refreshEarthquakes();
            }
        }, 0, updateFreq*60*1000);
    }

    refreshEarthquakes();

    return Service.START_STICKY;
};

@Override
public void onCreate() {
    updateTimer = new Timer("earthquakeUpdates");
}

450페이지 4번째 줄(김성호 님 제공)
pdateFreq*60*1000;
==>
updateFreq*60*1000;

477페이지 7.1번 문장 수정(역자 제공)
먼저 EarthquakeService에 있는 doRefreshEarthquakes 메서드를 수정해 작업 완료 후 인텐트를 방송하도록 업데이트한다.
==>
먼저 EarthquakeService에 있는 EarthquakeLookupTask의 onPostExecute 메서드를 수정해 작업 완료 후 인텐트를 방송하도록 업데이트한다.

477페이지 7.1번에 딸린 코드 전체(역자 제공)
public static String QUAKES_REFRESHED =
    "com.paad.earthquake.QUAKES_REFRESHED";
public void doRefreshEarthquakes() {
    [ ... 기존 doRefreshEarthquakes 코드 ... ]
    sendBroadcast(new Intent(QUAKES_REFRESHED));
}
==>
public static String QUAKES_REFRESHED =    
    "com.paad.earthquake.QUAKES_REFRESHED"; 
protected void onPostExecute(Void result) {
    sendBroadcast(new Intent(QUAKES_REFRESHED));  
    stopSelf();
}

485페이지 첫 번째 줄에서(김성호 님 제공)
EarthquakeLiveFolder라는 이름의…
==>
EarthquakeLiveFolders라는 이름의…

493페이지 밑에서 10번째 줄 코드 수정 및 볼드처리(역자 제공)
private static int SEARCH = 3;
==>
private static final int SEARCH = 4;

495페이지 밑에서 17번 째 줄 코드 수정(역자 제공)
String searchQuery = Uri.withAppendedPath(EarthquakeProvider.SEARCH_URI,
                                          searchTerm);
==>
Uri searchQuery = Uri.withAppendedPath(EarthquakeProvider.SEARCH_URI,
                                       searchTerm);

495페이지 밑에서 3번째 줄 코드 수정(역자 제공)
android:label="Earthquake Search">
==>
android:label="지진 정보 검색">

564페이지 밑에서 7,8,9번째 줄 세 줄 볼드처리 해제(역자 제공)
if (message.getMessageBody().toLowerCase().contains
    (queryString))
    requestReceived(message.getOriginatingAddress());

==>
if (message.getMessageBody().toLowerCase().contains
    (queryString))
    requestReceived(message.getOriginatingAddress());

564페이지 밑에서 1번 째 줄 볼드처리 해제(역자 제공)
public void requestReceived(String _from) {}
==>

public void requestReceived(String _from) {}

573페이지 밑에서 9,10,11번 째 줄 세 줄 볼드처리(역자 제공)
Spinner respondForSpinner;
CheckBox locationCheckbox;
EditText responseTextBox;
==>
Spinner respondForSpinner;
CheckBox locationCheckbox;
EditText responseTextBox;

576페이지 위에서 18번째 줄 볼드 처리(역자 제공)
private void setAlarm(int respondForIndex) {}
==>
private void setAlarm(int respondForIndex) {}

579페이지 밑에서 4번째 줄 코드 수정(역자 제공)

String autoRespondPref = getString(R.string.autoRespondPref)
==>
String autoRespondPref = getString(R.string.autoRespondPref);

604페이지 위에서 1번째 줄부터 15줄 볼드 처리(역자 제공)
                    return null;
                }
                @Override
                protected void onPostExecute(BluetoothSocket result) {
                    if (result != null)
                        switchUI();
                    }
                };
                acceptThread.execute(resultCode);
            } catch (IOException e) {
                Log.d("BLUETOOTH", e.getMessage());
            }
        }
    }
}
==>
                    return null;
                }
                @Override
                protected void onPostExecute(BluetoothSocket result) {
                    if (result != null)
                        switchUI();
                    }
                };
                acceptThread.execute(resultCode);
            } catch (IOException e) {
                Log.d("BLUETOOTH", e.getMessage());
            }
        }
    }
}

674페이지 밑에서 7-15번째 줄 9줄 볼드 처리(역자 제공)

Animation slideInLeft;
Animation slideOutLeft;
Animation slideInRight;
Animation slideOutRight;
Animation slideInTop;
Animation slideOutTop;
Animation slideInBottom;
Animation slideOutBottom;
TextView myTextView;
==>
Animation slideInLeft;
Animation slideOutLeft;
Animation slideInRight;
Animation slideOutRight;
Animation slideInTop;
Animation slideOutTop;
Animation slideInBottom;
Animation slideOutBottom;
TextView myTextView;

674페이지 밑에서 2번째 줄부터 675페이지 위에서 15번째 줄까지 볼드 처리(역자 제공)

slideInLeft = AnimationUtils.loadAnimation(this,
    R.anim.slide_left_in);
slideOutLeft = AnimationUtils.loadAnimation(this,
    R.anim.slide_left_out);
slideInRight = AnimationUtils.loadAnimation(this,
    R.anim.slide_right_in);
slideOutRight = AnimationUtils.loadAnimation(this,
    R.anim.slide_right_out);
slideInTop = AnimationUtils.loadAnimation(this,
    R.anim.slide_top_in);
slideOutTop = AnimationUtils.loadAnimation(this,
    R.anim.slide_top_out);
slideInBottom = AnimationUtils.loadAnimation(this,
    R.anim.slide_bottom_in);
slideOutBottom = AnimationUtils.loadAnimation(this,
    R.anim.slide_bottom_out);

myTextView = (TextView)findViewById(R.id.myTextView);
==>
slideInLeft = AnimationUtils.loadAnimation(this,
    R.anim.slide_left_in);
slideOutLeft = AnimationUtils.loadAnimation(this,
    R.anim.slide_left_out);
slideInRight = AnimationUtils.loadAnimation(this,
    R.anim.slide_right_in);
slideOutRight = AnimationUtils.loadAnimation(this,
    R.anim.slide_right_out);
slideInTop = AnimationUtils.loadAnimation(this,
    R.anim.slide_top_in);
slideOutTop = AnimationUtils.loadAnimation(this,
    R.anim.slide_top_out);
slideInBottom = AnimationUtils.loadAnimation(this,
    R.anim.slide_bottom_in);
slideOutBottom = AnimationUtils.loadAnimation(this,
    R.anim.slide_bottom_out);

myTextView = (TextView)findViewById(R.id.myTextView);

저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License

댓글을 달아 주세요

  1.  댓글주소  수정/삭제  댓글쓰기 Favicon of http://lemonflavor.tistory.com BlogIcon 레몬에이드 2010/11/24 11:36

    오탈자 공고는 확실히 블로그보다는 게시판에서 공고하는게 나중에 찾기는 더 쉬울 것 같습니다 ^^
    제이펍도 빤딱빤딱한 홈페이지가 있길 바라는 한 독자의 의견입니다 ㅎㅎ

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2010/11/24 22:39

      네.. 사실 그렇죠..
      아직은 타이틀 수도 많지 않아 블로그로만 하고 있지만, 내년 중으로는 제대로 된 홈페이지도 만들어 서비스할 수 있도록 계획하고 있습니다.
      앞으로도 많은 조언 부탁드립니다!!!!

  2.  댓글주소  수정/삭제  댓글쓰기 오봉 2010/12/28 17:15

    chapter 5 의 earthquake 를 실행 시키면 다음 오류가납니다.
    explorer 에 url 을 그대로 치면 usgs 해당 페이지가 잘나오는데 program 에서 만 error 입니다.
    UnknownHostException : Host is unresolved:earthquake.usgs.gov:80 ........나옵니다.

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2010/12/28 19:07

      역자에게 확인한 후 다시 이 댓글로 답변 드리도록 하겠습니다.

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2010/12/29 00:07

      역자에게서 답변을 받았습니다.
      코드와 실행 결과에 이상이 없다고 하시네요.

      다음은 역자께서 보내주신 답변입니다.
      =======================================
      예상컨대 독자분의 에뮬레이터가 네트워크에 연결되어 있지 않을 가능성이 큽니다.
      독자분의 에뮬레이터에서 "Browser"를 실행해 인터넷이 접속되는지 먼저 확인해야 겠습니다.
      =======================================
      잘 해결되었으면 합니다.

  3.  댓글주소  수정/삭제  댓글쓰기 Favicon of http://cakel.tistory.com BlogIcon 카켈 2011/08/26 19:06

    안녕하세요, 이 책 덕에 공부를 열심히 하고 있는 독자입니다. 안드로이드 공부 중에 막히는게 있어서 문의드립니다. p267 끝 - p267 시작 사이의 예제코드

    int updateFreqIndex = prefs.getInt(PREF_UPDATE_FREQ, 2);
    int minMagIndex = prefs.getInt(PREF_MIN_MAG, 0);

    이 두구문을 처리하는 중에 프로그램이 문제가 생겨서 종료되고 있습니다.
    한참 삽질 후에 int 를 Integer 로 바꾸니 정상적으로 처리가 되는게 확인되었는데, 무슨 원인인지는 모르겠습니다. 확인 부탁드립니다. (Eclipse 3.6 - Helios / JDK 1.6.0_26)

    감사합니다.

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2011/08/27 00:11

      안녕하세요?
      먼저 도서 구매해주셔서 고맙습니다.
      문의사항을 역자에게 전달하여 답변을 받는 대로 다시 댓글로 안내해드리겠습니다!!
      잠시만 기다려주세요!!

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2011/08/31 11:21

      안녕하세요?

      역자로부터 아래와 같은 답변을 받았습니다.
      ==================================
      일단 코드상으로는 문제가 없어 보입니다.
      해당 코드는 preference가 없을 경우 대신 사용할 기본 값(default value)이 두 번째 매개변수에 지정되어 있기 때문에
      값을 못가져와 생기는 문제는 아닐 것이며
      따라서 Integer로 바꿨을 때는 실행되고 int로 놔두면 실행되지 않는 문제는 상관관계가 없다고 판단됩니다.
      지금 현상태로는 독자분께서 혹시 미스 타이핑하신 것이 있는지 살펴보는게 1차적인 진단이 될 수 있을 것이고요
      가장 간편하게 확인하는 법은 제이펍 홈페이지에 올려둔 소스코드와 독자분께서 입력하신 소스코드를 비교해보시는 것입니다.
      ==================================
      혹시 그래도 해결이 안 되면 역자께서 직접 소스 코드를 보내달라고 합니다. 보내주시면 확인 후 다시 답변을 드리겠다고 하시네요..
      역자 이메일 주소는 chosungmann골뱅이daum.net으로 하시면 됩니다.
      얼른 해결되었으면 좋겠네요 ^^

    •  댓글주소  수정/삭제 Favicon of http://cakel.tistory.com BlogIcon 카켈 2011/09/04 19:18

      답변 감사합니다. 다시 한번 알아보겠습니다.

현재까지 발견된 위 책의 오탈자 정보와 오류 사항 그리고 보다 매끄러운 문장을 위해 수정한 내용들입니다. 불편을 끼쳐드려 죄송합니다.

혹시 이 외의 오탈자 정보를 발견하시는 분이 계시면 출판사 메일 jeipub골뱅이gmail.com이나  독자지원 사이트인 http://www.bookgrapher.com으로 연락주시면 고맙겠습니다.

최종수정일자: 2010년 8월 7일

아래의 오탈자 사항은 2010년 6월 21일에 발행된 1쇄본에 해당하는 것들이며, 2010년 8월 중순에 발행되는 2쇄에는 모두 반영됨을 알려드립니다. 불편을 끼쳐드려 다시 한번 죄송하다는 말씀을 드립니다.

이 책의 1쇄 수정자가 많아 아래의 PDF 파일로 제공해드립니다. 책의 오탈자나 오류사항보다는 보다 읽기 편하고 이해하기 쉽도록 문장을 고친 부분들이 많습니다. 이에 아래에 모두 기입해드리는 것보다 PDF 파일로 보여드리는 것이 낫다고 판단하여 파일로 제공해 드립니다.




 

저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License

댓글을 달아 주세요

  1.  댓글주소  수정/삭제  댓글쓰기 ahn 2010/08/07 16:26

    리토마이어 씨의 2판은 언제 나오나요? 8월중에 출간되는 것으로 알고 있는데 얼릉 나왔으면 좋겠습니다
    1판을 워낙에 재미있게 봐서 2판 정말 기대됩니다. 표지 포스도 장난 아니고.~~

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2010/08/07 19:48

      관심 가져주셔서 감사드립니다. 현재 편집을 거의 마치고 교정 중에 있습니다. 8월말 안으로 출간하기 위해 애쓰고 있습니다만, 100% 장담은 못 드리겠네요. ^^; 열심히 해보겠습니다.

      조만간 마무리가 되면 포스팅을 통해 알려드리도록 하겠습니다. 고맙습니다.

오탈자 정보 | Posted by 제이펍 2010/08/06 11:25

[안드로이드 2 마스터 북]_오탈자

현재까지 발견된 위 책의 오탈자 정보와 오류 사항 그리고 보다 매끄러운 문장을 위해 수정한 내용들입니다. 불편을 끼쳐드려 죄송합니다.

혹시 이 외의 오탈자 정보를 발견하시는 분이 계시면 출판사 메일 jeipub골뱅이gmail.com이나  역자 메일 pinkhare골뱅이gmail.com으로 연락주시면 고맙겠습니다.

최종수정일자: 2011년 1월 6일
2010년 7월 19일 1쇄본 및 2010년 8월 16일 2쇄본 오탈자

아래의 내용들은 3쇄 시에 모두 수정반영하도록 하겠습니다.

464페이지 예제 10-2 소스 첫 줄에서(서비서비 님 제공)
jva.nio. ==> java.nio.

484페이지 위에서 3번째 줄(서비서비 님 제공)
mTestHarness = new OpenGLTestHarness(this);
==>
mTestHarness = new GLSurfaceView(this);
참고사항: 소스코드 파일에서는 수정되어 있습니다.
 
489페이지 예제 10-18 위에서 4번째 줄(서비서비 님 제공)
mid_OpenGL_SimpleTriangle" ==> mid_OpenGL15_SimpleTriangle"

489페이지 예제 10-18 위에서 6번째 줄(서비서비 님 제공)
mid_OpenGL_AnimatedTriangled15" ==> mid_OpenGL15_AnimatedTriangled15"
참고사항: 소스코드 파일에서는 수정되어 있습니다.

490페이지 예제 10-18 5번째 줄(서비서비 님 제공)
mid_OpenGL_Current ==> MenuId_OpenGL15_Current
참고사항: 소스코드 파일에서는 수정되어 있습니다.
 
491페이지 소스 위에서 9번째 줄(서비서비 님 제공)
TestHarness ==> mTestHarness

491페이지 소스 밑에서 14번째 줄(서비서비 님 제공)
new SimpleRectRenderer ==> new SimpleRectangleRenderer
 
492페이지 예제 10-20 위에서 2번째 줄(서비서비 님 제공)
int mid = intent.getIntExtra("com.ai.menuid", R.id.mid_OpenGL_Current);
==>
int mid = intent.getIntExtra("pro.android.menuid", R.id.MenuId_OpenGL15_Current);
 
493페이지 위에서 3번째 줄(2개 모두)(서비서비 님 제공)
mid_OpenGL_Current ==> MenuId_OpenGL15_Current
 
493페이지 예제 10-21 코드 위에서 4째줄(서비서비 님 제공)
R.id.mid_OpenGL10_SimpleTriangle ==> R.id.mid_OpenGL15_SimpleTriangle

495페이지 예제 10-22 9번째 줄(서비서비 님 제공)
SimpleRectRenderer ==> SimpleRectangleRenderer
 
497페이지 그림 10-7에서(서비서비 님 제공)
그림 안의 사각형이 직사각형이 아닌 정사각형이 되어야 함
  
509페이지 밑에서 7번째 줄(서비서비 님 제공)
약 4초마다 ==> 약 2초마다

511페이지 위에서 7번째 줄(서비서비 님 제공)
4초마다 ==> 2초마다

514페이지 9-10번째 줄(서비서비 님 제공)
SingleAbstractTextureRenderer ==> AbstractSingleTextureRenderer

2010년 7월 19일 1쇄본 오탈자

아래의 오탈자 사항은 2010년 8월 16일에 발행된 2쇄에는 모두 반영되었음을 알려드립니다. 불편을 끼쳐드려 다시 한 번 죄송하다는 말씀을 드립니다.

xx페이지 밑에서 11째 줄
하지 않을 수는 ==> 하지 않을 수

xxi 페이지 밑에서 4째 줄
이에 다른 ==> 이에 따른

xxi 페이지 밑에서 2째 줄
일찍이 ==> 일찌감치

2페이지 참고 박스 끝에서 1~2째 줄
휴대 기기용으로 코딩하고 있음을 거의 느끼지 못 한다.
==>
휴대 기기용으로 코딩한다는 생각이 들지 않을 정도다.

3페이지 1째 줄
표준판 Java SE과 ==> Java SE(Standard Edition)과

3페이지 3째 줄
자바에서 ==> 자바로

3페이지 맨 마지막 줄
(그림 설명) 스택에 대한고급 관점 ==> 스택의 구성

7페이지 12째 줄
버전 2.0 코드베이스는 ==> 버전 2.0 초기 코드에는

7페이지 16째 줄
비 관리 ==> 네이티브

7페이지 19째 줄
코어 ==> 핵심

7페이지 아래에서 두 번째 문단
끝으로, 달빅 가상 머신은 데이터 저장소의 기본 단위로 스택 대신레지스터를 사용하는 각종 어셈블리 코드 생성을 이용한다. 구글은 이로써 명령의 수가 30% 줄어들길 바라고 있다. 달빅 가상 머신의 이런 개선 결과로 안드로이드에서 최종 실행가능 코드가 자바 바이트 코드를 사용하지 않고 .dex 파일을 사용함을 눈여겨봐야한다. 즉, 개발자는 자바 바이트 코드를 직접 실행할 수 없으며, 자바 클래스 파일부터 작성한 후 연결 가능한 .dex 파일로 변환해야 한다.
 ==>
끝으로, 달빅 가상 머신은 다른 형태로 어셈블리 코드를 생성하는데, 생성된 코드에서는 스택 대신 레지스터에 데이터를 저장한다. 구글은 이를 통해 명령어 개수를 30% 줄일 수 있을 것으로 전망한다. 이에 따라 안드로이드에서 실행 가능한 최종 코드는 자바 바이트 코드가 아닌 .dex 파일을 기반으로 하게 되었다. 결과적으로 개발자는 자바 바이트 코드를 직접 실행할 수 없으며, 자바 클래스 파일을 먼저 생성한 다음 그것을 실행 가능한 .dex 파일로 변환하는 수밖에 없다.

17페이지 6~7째 줄
이러한 비동기적 대화창들은 일부 윈도 프레임워크의 동기 모들 대화창에 익숙한 개발자에겐…
 ==>
이러한 비동기적 대화창들은 일부 윈도  프레임워크의 동기적인 모들 대화창에 익숙한 개발자에겐…

20페이지 4째 줄(소스 코드는 건너뛰고)
다음은 로컬 기기에 있는 오디오 파일을 재생하는 코드의 예다.
 ==>
다음은 기기의 내장 메모리에 있는 오디오 파일을 재생하는 샘플 코드다.

29페이지 끝에서 3째 줄
본 장을 통해 안드로이드 플랫폼에서 돌아갈 프로그램을 큰 어려움 없이 생산적으로 작성할 수 있게 되었길 바란다.
 ==>
본 장에서 얻은 기초 지식을 바탕으로 안드로이드 플랫폼에서 돌아갈 프로그램을 큰 어려움 없이 생산적으로 작성할 수 있으리라 생각된다.

63페이지 끝에서 5째 줄
어떤 액티비티가 가시적이지 않으며 ==> 어떤 액티비티가 현재 사용 중이 아니며

65페이지 그림 2-15
원서 오탈자 등록에서 가져옴(그림의 화살표 반대로 된 오류)
onRestart -> onStop ==> onStop -> onRestart

66페이지 16~18째 줄
액티비티에 대해 묘사해 놓은 상태 모형이 복잡해 보이긴 하지만 모든 경우의 수를 처리해야 하는 것은 아니므로 괴로워하지 않아도 된다. 실제로는 주로 onCreate()와 onPause()를 처리하게 된다.
 ==>
액티비티 상태 전이 도식을 보면 복잡해 보여도, 이 모든 경우의 수를 직접 다룰 일은 없으니 걱정은 붙들어 매자. 실전에서 자주 다루게 될 메서드는 onCreate()와 onPause() 정도다.

87페이지 16째 줄
일단 스트레처블 PNG 이미지가 준비되면 ==> 일단 스트레처블 PNG 이미지만 있으면

92페이지 예제 3-19 (붉은색 글자 부분 추가)
String getStringFromRawFile(Activity activity) throws IOException
{
    Resources r = activity.getResources();
    InputStream is = r.openRawResource(R.raw.test);
    String myText = convertStreamToString(is);
    is.close();
    return myText;
}

String convertStreamToString(InputStream is) throws IOException
{
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    int i = is.read();
    while (i != -1)
    {
        baos.write(i);
        i = is.read();
    }
    return baos.toString();
}

274페이지 예제 6-1, 2째 줄
(앞의 주석 느낌표 뒤의 하이픈 – 두 개가 문서 편집 시에 하나짜리 특수기호로 자동변환된 것을 하이픈 2개로 수정)
<!– 파일명: 
==>
<!–- 파일명: 

282페이지 예제 6-6, 2째 줄
<-- filename:
==>
<–- 파일명:

551페이지 그림 12-3
(잘못된 그림이 삽입되었습니다. 다음 그림으로 교체해야 합니다.)


552페이지 1~3째 줄
다음 절에서 액티비티가 Contacts LF 폴더를 생성함을 살펴볼 텐데, 일단 지금은 사용자 경험이 관련돼 있는 한 Contacts LF 아이콘을 클릭해서 ListView에 표시되는 연락처 목록을 볼 수 있다.
==>
액티비티가 어떤 식으로 Contacts LF 폴더를 생성하는지는 다음 절에서 설명하겠다. 일단 이 절의 주제는 사용법을 알아보는 것이므로 Contacts LF 아이콘을 클릭해 보자. 그러면 그림 12-5처럼 연락처 목록이 뜬다.

573페이지 그림 13-4
(기존 그림을 아래 그림으로 교체해야 합니다. 컨피규레이터 액티비티의 라벨을 기존의 '생일 위젯 구성'에서 '생일 위젯 설정'으로 수정했습니다.)


583페이지 예제 13-5의 맨 마지막 줄

(위의 그림 수정에 따라, 그 결과를 얻기 위해서는 소스 코드를 다음과 같이 수정해야 합니다.)
android:label="생일 위젯 구성">
==>
android:label="생일 위젯 설정">

591페이지 14째 줄
안드로이드 SDK는 특정 접근법을 필요로 하지는 않지만,
==>
안드로이드 SDK에서도 그 개념이 별로 다르지는 않지만,

672페이지 8째 줄
ext_2: ==> text_2:

699페이지(코드) 31째 줄
// TTS 엔진이 준비됐으니, 버튼을 가용화
==>
// TTS 엔진이 준비됐으면, 버튼을 가용화

719페이지 그림 15-4
(이 그림은 거의 불필요한 ‘스페인어’ 항목을 없애고, 대신에 한국 실정에 맞는 지역화를 위해 ‘한국어’ 항목을 삽입하기 위해 다음 그림으로 교체해야 합니다.)


720페이지(코드) 1~17째 줄

(위의 결과 그림에 부응하기 위해 소스 코드도 아래와 같이 수정해야 합니다. 책의 레이아웃 유지를 위해 언어 추가가 아니라 한 개의 언어(스페인어)를 교체해서 언어를 6개 그대로 유지하였습니다.)

    <string-array name="languages">
        <item>중국어</item>
        <item>영어</item>
        <item>프랑스어</item>
        <item>독일어</item>
        <item>일본어</item>
        <item>스페인어</item>
    </string-array>
    <string-array name="language_values">
        <item>zh</item>
        <item>en</item>
        <item>fr</item>
        <item>de</item>
        <item>ja</item>
        <item>es</item>
        </string-array>
        </resources>

 ==> 

    <string-array name="languages">
        <item>독일어</item>
        <item>영어</item>
        <item>일본어</item>
        <item>중국어</item>
        <item>프랑스어</item>
        <item>한국어</item>
    </string-array>
    <string-array name="language_values">
        <item>de</item>
        <item>en</item>
        <item>ja</item>
        <item>zh</item>
        <item>fr</item>
        <item>ko</item>
    </string-array>
</resources>

저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License

댓글을 달아 주세요

현재까지 발견된 위 책의 오탈자 정보입니다. 불편을 끼쳐드려 죄송합니다.
혹시 이 외의 오탈자 정보를 발견하시는 분이 계시면 메일 jeipub골뱅이gmail.com으로 메일 주시면 고맙겠습니다.

최종수정일자: 2010년 9월 18일

2010년 5월 26일 2쇄본 오탈자
아래의 오탈자 사항은1쇄 및 2쇄본에서 발견된 오탈자 및 오류사항들입니다. 추후 3쇄 인쇄 시 수정하여 인쇄하도록 하겠으며, 불편을 끼쳐드려 다시 한번 죄송하다는 말씀을 드립니다.

1장 35쪽 팁의 첫줄에서(김진택 님 제공)
C++나 자바의 const ==> C++나 자바의 static

아래는 오탈자는 아니지만 Xcode 3.0을 사용하시는 경우 빌드앤런이 안 되는 현상에 대한 옮긴이의 해결책을 안내해드립니다. 소스코드와 pdf 문서를 참고하세요!


(Test_Framework1.zip 은 sdk 버전을 4.0으로 바꾸어 재작성한 코드입니다. 하지만 원본 코드와 같이 추가작업을 하지 않으면 컴파일 에러가 납니다. 예제코드 1은 예제코드2를 만들기 위한 중간과정입니다.예제코드 2,3,4 는 설정만 3.2, 4.0으로 바꾸어주면 컴파일 및 실행이 됩니다. 그 방법은 pdf 파일을 참고하시면 됩니다.)

2010년 3월 29일 1쇄본 오탈자
아래의 오탈자 사항은 2010년 5월 26일에 발행된 2쇄에는 모두 반영되었음을 알려드립니다. 

1장 11쪽 1행에서
Tools -> Library Panel을 ==> Tools -> Library를

1장 18쪽 3행에서
Cocoa Touch Plugin => Cocoa Touch

1장 21쪽 밑에서 7행에서
Cocoa Touch Plugin => Cocoa Touch

3장 104쪽 2번에서
NSObject subclass를 선택하고, ==> Objective-C Class에서 NSObject의 Subclass를 선택하고

3장 108쪽 3번에서
NSObject subclass를 선택하고 ==> Objective-C Class에서 NSObject의 Subclass를 선택하고

3장 111쪽 2번에서
NSObject subclass를 선택하고 ==> Objective-C Class에서 NSObject의 Subclass를 선택하고

3장 115쪽 2번에서
NSObject subclass를 선택하고 ==> Objective-C Class에서 NSObject의 Subclass를 선택하고

4장 195쪽 1행에서
레벨 맵은 간단한 복사 타일을 가지지 않는다. ==> 레벨 맵은 단순히 타일을 복사하여 이루어지지 않는다.

4장 223쪽 6행에서
메인 메뉴로부터 플레이 가능한 모든 레벨의 목록을 작성한다. ==> 메인 메뉴에서 플레이할 수 있는 모든 레벨의 목록을 작성한다.

4장 223쪽 9행에서
불변의 스토리지 => 메모리 혹은 저장 공간

4장 225쪽 18행에서
불변의 스토리지 => 메모리 혹은 저장 공간

5장 236쪽 14행에서
그 인스턴스를 만들 때 가속도계 입력을 위해 클래스를 목표에 설정해야 한다. ==> 클래스의 인스턴스를 만들 때 클래스를 가속도계 입력을 받는 대상으로 설정해야 한다.

5장 237쪽 11행에서
이전 신호의 일정 비율과 함께 새 신호의 비율을 합친다. ==> 이전 신호와 새 신호를 일정 비율로 합친다.

5장 256쪽 밑에서 12행에서
불변 값을 ==> 고정 값을

5장 277쪽 밑에서 7행에서
그 다음에 이 값이 새 최고 기록인지를 ==> 그 다음에 이 값이 새로운 최고 기록인지를

저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License

댓글을 달아 주세요

  1.  댓글주소  수정/삭제  댓글쓰기 Favicon of http://peterslab.tistory.com BlogIcon 피뤄 2010/05/19 11:13

    좋은 책을 만들어 가는 과정이라고 생각합니다. :)
    고생하시네요 ^^;;

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2010/05/19 21:25

      조금 더 완벽하게 낼 수 있었는데, 하는 아쉬움이 매번 듭니다. 같은 실수가 반복되는 건 너무 아쉽고 화가 날 때가 많습니다.ㅠㅠ

      메일로 연락드릴게요!

  2.  댓글주소  수정/삭제  댓글쓰기 Favicon of http://haneulbaram.tistory.com BlogIcon hanstar17 2011/04/17 20:49

    안녕하세요^^; 사실 책 읽다가 화가나서 왔는데... 책 내시느라 고생이 많으셨던 듯 해요~ㅋ 다음엔 더 좋은 번역 하시길 기대할꼐요..ㅎㅎ;

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2011/04/17 21:29

      화내러 오셨다가 격려를 해주시니 채찍질 강도가 더 세게 느껴집니다. ^^;
      사실 출간된 다음에는 어떤 변명도 할 수 없겠죠.
      더욱 노력하도록 하겠습니다.

현재까지 발견된 위 책의 오탈자 정보입니다. 불편을 끼쳐드려 죄송합니다.

혹시 이 외의 오탈자 정보를 발견하시는 분이 계시면 메일 jeipub골뱅이gmail.com으로 메일 주시면 고맙겠습니다.

최종수정일자: 2010년 9월 8일

2010년 4월 29일 1쇄본 오탈자

표지 앞날개 지은이 소개에서
이안 파이퍼 Ian Pipe  ==> 이안 파이퍼 Ian Piper 
 
ii페이지 판권에서
초판 1쇄 발행 2010년 3월 29일 ==> 초판 1쇄 발행 2010년 4월 29일 

xvi페이지 9-10행에서
그는 마마이트Marmite, 이스트 추출물로서 빵 등에 발라먹거나 함가 ==> 그는 마마이트Marmite(역자 주: 이스트 추출물로서 빵 등에 발라먹거나 함)가 

65페이지 리스트 3-5에서(안희기 님 제공)
NSAttributedString *mString; ==> NSAttributedString *string;

4장 79페이지 리스트 4-5에서(강진웅 님 제공)
IBOutlet NSTextField *destinationTextField; ==> IBOutlet UILabel *destinationTextField;
IBOutlet NSTextField *sourceTextField; ==> IBOutlet UITextField *sourceTextField;

위 내용은 2쇄 발행 책자에는 모두 수정되었음을 알려드립니다.
다음은 2쇄에서 추가로 발견된 오류 사항들입니다.


103페이지 그림 5-6을 아래 그림으로 교체(rcshinn 님 제공)


(클릭하면 크게 보실 수 있습니다.)

저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License

댓글을 달아 주세요

  1.  댓글주소  수정/삭제  댓글쓰기 rcshinn@gmail.com 2010/09/07 16:59

    제가 산책은 다 수정되어 있네요.

    추가로
    102쪽 설명으로는 "1:다" 관계를 설명하고 있고 관계를 설정할때 maincomputer로 이름을 지정했는데
    104쪽 그림5-6에 보면 Relationship 이 computers로 되어 있고, 관계도 다:다 로 되어 있습니다.
    뒤로 가면서 설명은 또 "1:다" 로 하고 있네요.

    결과적으로 그림 5-6이 잘못된건가요?

    •  댓글주소  수정/삭제 Favicon of http://jpub.tistory.com BlogIcon 제이펍 2010/09/08 15:21

      문의 주셔서 고맙습니다. 확인해 보니 지적해주신 것처럼 그림 5-6이 잘못 삽입되어 있었습니다.ㅠㅠ

      올바른 그림을 이 포스트에 올려 놓았으니 확인해주세요.
      이 내용을 메일로도 안내해 놓겠습니다.
      감사합니다.

오탈자 정보 | Posted by 제이펍 2009/10/28 17:01

[클라우드의 충격]_오탈자

현재까지 발견된 위 책의 오탈자 정보입니다. 불편을 끼쳐드려 죄송합니다.

 

혹시 이 외의 오탈자 정보를 발견하시는 분이 계시면 메일 jeipub골뱅이gmail.com으로 메일 주시면 고맙겠습니다.

보내주시는 분에게는 소정의 사은품을 드리도록 하겠습니다.

 

최종수정일자: 2010년 1월 6일


2009년 10월 22일 1쇄본 오탈자

13페이지 도표 1-3에서 가운데 음영 박스 내용 수정(윤동석 님 제공)
SaaS(Software as a Service) ==> PaaS(Platform as a Service)

55페이지 마지막 줄에서
PC와 ==> PC의

56페이지 밑에서 8번째 줄에서(이신 님 제공)
안드로이드가 아니면 이용할 수 없는, 혹은 매력이 반감되는 ==> 안드로이드가 아니면 이용할 수 없거나 매력이 반감되는

143페이지 7번째 줄에서(이신 님 제공)
걸설 ==> 건설

149페이지 4번째 줄에서(이신 님 제공)
수력 ==> 화력

* 아래의 오탈자는 일본 노무라종합연구소에서 한국어판을 검토한 후 추후 인쇄 시 수정요청이 있었던 부분입니다. 오탈자라기보다는 원서의 뜻을 보다 분명하게 옮겨달라는 취지인 것 같습니다. 이 부분도 추후 인쇄 시 모두 반영하도록 하겠습니다.

11페이지 6번째 줄에서
연산처리를 분산처리시킨다 ==> 연산을 분산시켜 처리한다

11페이지 16번째 줄에서
전 세계에 전개하는 ==> 전 세계에서 운용하는

15페이지 14번째 줄에서
인터넷 기업들이 많이 그 이름을 ==> 인터넷 기업들이 그 이름을 많이

19페이지 아래에서 6번째 줄에서
가격 대 성능비 향상을 ==> 가격대비 성능 향상을

20페이지 8번째 줄에서
한 번의 처리당 비용은 ==> 회당 처리비용은

32페이지 12번째 줄에서
가상화 기술을 채용하고 ==> 가상화 기술을 채택하고

43페이지 2~5번째 줄에서
괄호 안 원화표시 삭제

61페이지 아래에서 7번째 줄에서
고가용성을 실현하는 ==> 고가용성을 구현하는

72페이지 아래에서 3번째 줄에서
구미의 대기업을 ==> 미국과 유럽의 대기업을

77페이지 2번째 줄에서
엔드유저 ==> 엔드유저에 대한

87페이지 6번째 줄에서
인수단념의 ==> 인수포기의

114페이지 아래에서 5번째 줄에서
써드파티 벤더에서도 ==> 서드파티 벤더라도

129페이지 아래에서 5번째 줄에서
포탈 ==> 포털

133페이지 아래에서 6번째 줄에서
자사의 힘으로 ==> 자사만의 힘으로

136페이지 아래에서 4번째 줄에서
'시스템 통합'에 상부자 형태로 SI, System Integration 추가

148페이지 1번째 줄에서
개설장소 ==> 설치장소

155페이지 아래에서 13번째 줄에서
비용이 낮다는 ==> 비용이 저렴하다는

156페이지 아래에서 4번째 줄에서
시장 개척을 ==> 시장 확대를

166페이지 아래에서 2번째 줄에서
정부 대신 ==> 정부 장관

169페이지 아래에서 8번째 줄에서
오프쇼어 ==> 국외

176페이지 4번째 줄에서
장래적으로는 ==> 미래에는

다음은 책 전체에 걸쳐 수정할 내용들입니다.
Customer Relation Management ==> Customer Relationship Management
종래 ==> 기존
창업기업Startup Company ==> 설립초기기업Startup Company
릴리즈 ==> 출시
전전공사 ==> 전신전화공사
삭감 ==> 절감
에러 망각형 컴퓨팅 ==> 오류 망각형 컴퓨팅

위의 오탈자 사항은 2쇄 시에 모두 반영하도록 하겠습니다. 불편을 끼쳐드려 다시 한번 죄송하다는 말씀을 드립니다.



저작자 표시 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License

댓글을 달아 주세요

현재까지 발견된 위 책의 오탈자 정보입니다. 불편을 끼쳐드려 죄송합니다.

 

혹시 이 외의 오탈자 정보를 발견하시는 분이 계시면 메일 jeipub골뱅이gmail.com으로 메일 주시면 고맙겠습니다.

보내주시는 분에게는 소정의 사은품을 드리도록 하겠습니다.

 

최종수정일자: 20011년 9월 29일


1-3쇄본 오탈자

아래의 오탈자 사항은 4쇄에 모두 반영하도록 하겠습니다. 불편을 끼쳐드려 다시 한번 죄송하다는 말씀을 드립니다.

371페이지-372페이지의 그림 3-1에서 3-4 부분
애국가 가사가 나오는 각 이미지에서     하나님 ==> 하느님


1쇄본 오탈자

아래의 오탈자 사항은 2010년 2월 16일에 발행된 2쇄에는 모두 반영되었습니다. 불편을 끼쳐드려 다시 한번 죄송하다는 말씀을 드립니다.

432페이지 마지막 행에서
출력되, 고 ==> 출력되고, 

559페이지 본문 첫행에서
먼저 inctrase 함수 ==> 먼저 increase 함수

370페이지 애국가 1절 2행에서 
하나님 => 하느님 

저작자 표시 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License

댓글을 달아 주세요

현재까지 발견된 위 책의 오탈자 정보입니다. 불편을 끼쳐드려 죄송합니다.

 

혹시 이 외의 오탈자 정보를 발견하시는 분이 계시면 메일 jeipub골뱅이gmail.com으로 메일 주시면 고맙겠습니다.

보내주시는 분에게는 소정의 사은품을 드리도록 하겠습니다.

 

최종수정일자: 2010년 4월 12일

 

아래의 오탈자 사항들은 1쇄 이후 현재 판매중이 모든 서적에서 발견되는 오탈자 사항들입니다.


273페이지 하단에서 5번째 줄(양성현 님 제공)_원서오류
String where, String[] wArgs ==> String where, String[] whereArgs
역자 코멘트: 원서오류입니다. 해당 코드는 method stub으로서, 이 stub만 놓고 보자면 논리적으로 문제 될 것은 없지만 p.279에 나오는 해당 stub의 구현부를 놓고 볼 때,  혼란의 소지를 남겨둘 수 있습니다.
메서드 구현 코드를 통째로 붙여넣지 않는 한 충분히 오해의 소지가 있습니다.

280페이지 상단에서 11번째 줄(양성현 님 제공)_원서오류
if(dbCount > 0) ==> if(dbCount == 0)
역자 코멘트: 역시 원서오류입니다. 작년 7월에 원서 정오표로 등록된 부분이네요. 미처 반영하지 못한 점 사과드립니다.
 
337페이지 하단에서 4번째 줄(양성현 님 제공)_원서오류
String earthquakeURI ==> Uri earthquakeURI
역자 코멘트: 역시 원서오류입니다.
 
335페이지 하단에서 7번째 줄(양성현 님 제공)_원서오류
public EarthquakeOverlay(Cursor cursor, ContentResolver resolver) ==> public EarthquakeOverlay(Cursor cursor)
역자 코멘트: 원서 오류입니다. 이 역시 메서드를 통째로 붙여넣지 않는 한 오해의 소지가 있겠네요.
 

아래의 오탈자 사항들은 2쇄본부터는 모두 수정되었음을 알려드립니다.


2009년 7월 22일 1쇄본 오탈자

535페이지 8행에서
"풀 키보드역시"  ==> "풀 키보드 역시"

오탈자는 아니지만, 표지 이미지가 계단 현상이 보였는데, 2쇄에는 이 부분도 수정하였음을 아울러 알려드립니다. 

아래의 오탈자 사항들은 3쇄본부터는 모두 수정되었음을 알려드립니다.  


2009년 7월 22일 1쇄 및 2009년 7월 31일 2쇄본 오탈자

13페이지 밑에서 4-5행
북돋을 ==> 북돋울

17페이지 2행
기존에 존재하고 있는 ==> 기존의

19페이지 그림 1-1에서
연락처 공급자  ==> 콘텐트 공급자

90페이지 밑에서 2행
res/value ==> res/values

120페이지 단계 5의 하단 7번째 줄 코드에서 3, 4번째 인자 자리 변경
Canvas.drawLine(0, 0, getMeasuredHeight(), 0, linePaint); ==>  Canvas.drawLine(0, 0, 0, getMeasuredHeight(), linePaint);

121페이지 밑에서 6행
R.layout. todolist_item -> R.layout.todolist_item

142페이지 11행에서
그림 4-5에서 하위 메뉴  ==> 그림 4-4에서 하위 메뉴

154페이지 소스코드 5행에서 아래의 부분을 음영으로 처리해야 함
aa = new ArrayAdapter<String>(this, resID, todoItems);

159페이지
인텐드 소개 ==> 인텐트 소개

260페이지 1행에서
OnKeyListener에서부터 시작하다. ==> OnKeyListener에서부터 시작한다.

262페이지 1행에서
URI 모델 ==> URI(Uniform Resource Identifier) 모델

344페이지 밑에서 7행
확실해 해야 ==> 확실히 해야

346페이지 8행
것으로 시작으로 ==> 것을 시작으로

523페이지 12행
완전해 대체할 ==> 완전히 대체할

546페이지 10행
이 SDK에는 ==> 이 SDK

547페이지 5행
ANR 메시지 ==> ANR(Application Not Responding) 메시지

다음 페이지에서의 '콘텐츠'를 '콘텐트'로 변경합니다. 콘텐츠 ==> 콘텐트
6쪽 하단에서 6행, 11쪽 1행, 11쪽 4행, 11쪽 8행, 11쪽 17행, 11쪽 19행, 11쪽 22행, 16쪽 17행, 22쪽 5행, 22쪽 23행, 23쪽 8행, 67쪽 11행, 67쪽 12행, 67쪽 14행, 67쪽 15행, 67쪽 17행, 68쪽 3행, 69쪽 6행, 70쪽 1행, 70쪽 2행, 74쪽 18행, 105쪽 9행

저작자 표시 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License

댓글을 달아 주세요

이번 첫 책에도 오탈자의 망령을 쫓아내지 못해 죄송스럽네요. 앞으로 혹시 추가되는 정보들이 있으면 이 블로그에 올리고 재쇄 시에 반영하도록 하겠습니다. 불편을 끼쳐 죄송합니다.

 

혹시 이 외의 오탈자 정보를 발견하시는 분이 계시면 메일 jeipub골뱅이gmail.com으로 메일 주시면 고맙겠습니다.

 

최종수정일자: 2010년 6월 12일

 

==> 아래 오탈자는 5쇄본 오탈자입니다. 불편을 끼쳐드려 죄송하며, 6쇄 시 모두 수정할 수 있도록 하겠습니다. 


IV페이지 차례에서 2.1 리버스 프록시 도입 절의 하위 서브 순서가 잘못됨(이승희 님 제공)
아파치 모듈을 이용한 처리의 제어.........................56
리버스 프록시의 도입..........................................57
웹 서버가 응답하는 데이터의 버퍼링의 역할............53 
==>
웹 서버가 응답하는 데이터의 버퍼링의 역할............53  
아파치 모듈을 이용한 처리의 제어.........................56
리버스 프록시의 도입..........................................57

 
 
 

==> 아래 오탈자는 2010년 5월26일 4쇄본 오탈자입니다. 불편을 끼쳐드려 죄송하며, 5쇄 시 모두 수정할 수 있도록 하겠습니다. 


136페이지 그림 3.3.1 좌측 스위치 사이의 접속_(고승광 님 제공)
L1-2 ==> LS1-2

160페이지 그림 3.4.10에서_(고승광 님 제공)
그룹2 ID=1, 그룹2 ID=2, 그룹2 ID=3 ==> 그룹1 ID=1, 그룹2 ID=2, 그룹3 ID=3


117페이지 리스트 3.1.2의 코드 두 번째 줄_(역자 제공)
while true do ==> while true; do

158페이지 마지막줄에서_(역자 제공)
vcnofig ==> vconfig

222페이지 코드 6번째 줄_(역자 제공)
Int((( ==> int(((

247페이지 리스트 5.1.2에서_(고승광 님 제공)
name      generic-host  ==> name      generic-service

256페이지 리스트 5.1.6에서_(고승광 님 제공)
5번째 줄의  nNotifycation Type => Notifycation Type
14번째 줄의 nNotifycation Type => Notifycation Type

아래는 3쇄본에서 발견되었으나 4쇄본에 반영되지 못한 부분입니다.

221페이지 리스트 4.2.1의 6번 째 줄_(박영욱 님 제공)
usage: %0 ==> usage: $0

271페이지 아래에서 9번째 줄_(박영욱 님 제공)
gmetrix로 ==> gmetric으로

308페이지 그림 5.5.1에서_(고승광 님 제공)
⑤ 동그라미 위의 "부트 로더" 글자를 왼쪽 세로 화살표 옆으로 이동
⑥ 동그라미 위의 "부트 로더 설정 파일"도 마찬가지로 왼쪽 화살표 옆으로 이동


315페이지 밑에서 3번째 줄_(고승광 님 제공)
인증을 통화하기 위해서는 => 인증을 통과하기 위해서는
 
329페이지 그림 5.7.1에서_(고승광 님 제공)
편의성=A, 편의성=B  => 기능성=A, 기능성=B

다음은 오류는 아니나, 최근 원출판사 홈페이지 올라온 보충 자료인데, 역자께서 번역하여 보내주셨습니다. 참고하시기 바랍니다.

112쪽 3.1 ‘DNS서버의 다중화’에 대한 참고정보
현상: 메인장비의 DNS를 정지했을 때 백업장비에 가상 IP로 DNS에 접속할 수 없는(타임아웃) 경우의 대응에 대해 DNS서버인 BIND는 기동 시에 NIC에 할당되어 있는 IP주소별로 요청이 오기를 기다리도록 구현되어 있다. 따라서 BIND가 가동 중에 동적으로 IP주소가 할당되더라도 새로운 IP주소에 대한 DNS요청에는 응답할 수 없으므로 Failover 시에는 BIND를 재기동할 필요가 있다. keepalived는 Failover했을 때 임의의 명령을 실행할 수 있도록 되어 있으므로, keepalived.conf의 vrrp_instance내에 아래와 같은 설정을 추가함으로써 대응 가능하다.

notify_master "/etc/init.d/named restart"

==> 아래 오탈자는 2009년 11월 06일 3쇄본 오탈자입니다. 불편을 끼쳐드려 죄송하며, 4쇄 시 모두 수정할 수 있도록 하겠습니다. 


9페이지 4-5번째 줄에서
에러를 반환하는 것은 감지할 수 있다. ==> 에러를 반환하는 것은 감지할 수 없다. 

221페이지 리스트 4.2.1의 6번 째 줄_(박영욱 님 제공)
usage: %0 ==> usage: $0

271페이지 아래에서 9번째 줄_(박영욱 님 제공)
gmetrix ==> gmetric
 
357쪽 그림 6.2.3 의 벡엔드 서버 영역에서 'PS/WS'의 역할에 관한 보충설명입니다.
오탈자는 아니고 저자 홈페이지에 보충설명한 것을 옮겨드립니다.

'PS/WS'는 'Permanent Share/Web Share'의 약자로, PS는 NFS를, WS는 HTTP를 경유해서 공유파일에 접근할 수 있다는 점에서 유래한 명칭이다.
'PS/WS'란 'NFS 서버에 웹 서버를 올린(탑재한) 서버'를 의미한다. 서버 구성 상으로 PS와 WS는 동일한 서버를 가리키지만, 애플리케이션 개발자와 구성에 관한 얘기를 할 경우에는 다음과 같이 구분해서 사용하기도 한다.
- PS에서 파일 읽기 => NFS 경유
- WS에서 파일 읽기 => HTTP 경유

==> 아래 오탈자는 2009년 5월 30일 2쇄본 오탈자입니다. 불편을 끼쳐드려 죄송하며, 2009년 11월06일 발행된 3쇄에는 모두 수정 반영되었음을 알려 드립니다.


9페이지 4-5번째 줄에서
에러를 반환하는 것은 감지할 수 있다. ==> 에러를 반환하는 것은 감지할 수 없다.

30페이지 첫 문장에서
"NAT구성의 경우, L4 스위치는 클라이언트로부터 도착한 패킷의 송신지 주소를"  ==> "NAT구성의 경우, L4 스위치는 클라이언트로부터 도착한 패킷의 수신지 주소를"

30페이지 그림 1.3.6에서
L4 스위치(NAT)에서의 오른쪽 화살표 부분 수정: 
    x.x.x.x -> y.y.y.y ==> x.x.x.x -> z.z.z.z
    x.x.x.x <- y.y.y.y ==> x.x.x.x <- z.z.z.z

50페이지 11번째 줄
리소드 경합을 ==> 리소스 경합을

69페이지 “HTTP와 캐시” 첫 단락 3번째 줄
프로토콜의 레벨로 캐시의 기능이 ==> 프로토콜 레벨에서 캐시 기능이

76쪽 밑에서 5번째 줄
memcached이 그 일례다. ==> memcached가 그 일례다.

88쪽 5번째 줄
마스터, 슬레이브의 my.conf 비교 ==> 마스터, 슬레이브의 my.cnf 비교


96쪽 첫번째 줄
애플리케이션축의 처리가 ==> 애플리케이션측의 처리가


96쪽 7번째 줄

그렇다면 내부 로드밸런서를 경우한 ==> 그렇다면 내부 로드밸런서를 경유한


97쪽 그림 2.4.1, IP주소 오류 (.1 제거)
192.168.31.1.101 ==> 192.168.31.101
192.168.31.1.110 ==> 192.168.31.110
192.168.31.1.111 ==> 192.168.31.111
192.168.31.1.112 ==> 192.168.31.112
192.168.31.1.231 ==> 192.168.31.231
192.168.31.1.232 ==> 192.168.31.232


101쪽 마지막 줄

고생하더라도 NAT구성을 할 필요가 있다. ==> 고생해서 NAT구성으로 할 필요는 없다.

 

121쪽 밑에서 4번째 줄, 상부자로 표시
DRBD는 고가용성 High Availability, HA 클러스터를 구성할 때 ==> DRBD는 HAHigh Availability, 고가용성 클러스터를 구성할 때


125쪽 그림 3.2.2
(0.7계 ==> 0.7계열
(8.2계 ==> 8.2계열


131쪽 9번째 줄

DRBD이 볼륨을 미러링함으로써 ==> DRBD로 이 볼륨을 미러링함으로써


==> 아래 오탈자는 2009년 4월 22일에 출간된 1쇄본 오탈자입니다. 2009년 5월30일 발행된 2쇄에는 모두 수정 반영되었음을 알려 드립니다. 불편을 끼쳐 드려 다시 한번 죄송하다는 말씀을 드립니다.


 IV페이지 차례 2.2 제목에서  
    emcached ==> memcached


XXIV페이지 용어정리 중 장애극복에서   
    Active인 노드(…) ==> Active인 노드(…)

VIII페이지 차례 5.6과 5.7 제목에서 글자크기 줄임
    5.5 네트워크 부트의 활용 PXE, initramfs ==> 5.5 네트워크 부트의 활용 PXE, initramfs

    5.6 원격관리 관리회선, 시리얼 콘솔, IPMI ==> 5.6 원격관리 관리회선, 시리얼 콘솔, IPMI


XII페이지 옮긴이 서문 9번째 줄, 인용부호 위치 수정
    24시간 365 무중단 서비스를 ==> “24시간 365일 무중단 서비스를

7페이지 그림 1.1.6에서

    10.0.0.101(웹1) ==>  10.0.0.101(web1)    10.0.0.102(웹2) ==>  10.0.0.102(web2) 

 

8페이지 그림 1.1.7에서

    웹1 ==> web1    웹2 ==> web2    사용자(클라이언트) ==> 유저(클라이언트)


15페이지 그림 1.2.2에서

    웹1 ==> web1    웹2 ==> web2 


19페이지 밑에서 두 번째 줄에서
   
처음 시작하는 부분의 공백 줄임   두 자 공백 ==> 한 자 공백

24페이지 그림 1.3.1에서 
    웹1 ==> web1    웹2 ==> web2 


31페이지 그림 1.3.7에서
    메일1 ==> mail1    메일2 ==> mail2 


33페이지 마지막 줄과 34페이지 첫 줄
    문단이 나눠지는 것이 아니라 이어져야 함

39페이지 그림 1.4.3에서
    웹1 ==> web1    웹2 ==> web2 


49페이지 4번째 줄

    로봇에게는 사용자명이 표시된 필요가 없는 경우 ==> 로봇에게는 사용자명을 표시할 필요가 없을 경우

 

52페이지 그림 2.14

    동적 컨텐츠 용 웹서버 ==> 정적 컨텐츠용 웹서버

 

69페이지 제목에서
    캐시서버 도입 Squid, emcached ==> 캐시서버 도입 Squid, memcached


72페이지 그림 2.2.2 제목 수정
   
그림 2.2.2 캐시해서는 안 되는 부분 ==> 그림 2.2.2 Squid(리버스 프록시)


69~77페이지 2.2절 우측상단 2.2 제목
    캐시서버 도입 Squid, emcached ==> 캐시서버 도입 Squid, memcached

 

84페이지 밑에서 두번째 줄

    SHOW SLAVE TATUS ==> SHOW SLAVE STATUS

103, 105, 107, 109페이지 상단 절제목 부분
    2.4 MySQL 슬레이브 + 내부 로드밸런서 활용 예 ==> 2.5 고속, 경량의 스토리지 서버 선택

 
211페이지 그림 4.2.1에서
    병렬처리 있음 ==> 병렬처리 없음    병렬처리 없음 ==> 병렬처리 있음


318페이지 그림 5.6.1에서
    당구장 표시(참고표)를 별표 표시로 변경
    ==> *


374페이지 주15에서

    Repchached는 아래 ==> Repcached는 아래

저작자 표시 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License

댓글을 달아 주세요