현재까지 발견된 위 책의 오탈자 정보와 오류 사항 그리고 보다 매끄러운 문장을 위해 수정한 내용들입니다. 불편을 끼쳐드려 죄송합니다.
혹시 이 외의 오탈자 정보를 발견하시는 분이 계시면 출판사 메일 jeipub골뱅이gmail.com이나 역자 메일 pinkhare골뱅이gmail.com으로 연락주시면 고맙겠습니다.
아래의 내용들은 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>
'오탈자 정보' 카테고리의 다른 글
[프로페셔널 안드로이드 2 애플리케이션 개발]_오탈자 (9) | 2010.11.24 |
---|---|
[핵심만 골라 배우는 스마트폰 웹 개발]_오탈자 (2) | 2010.08.07 |
[오브젝티브-C로 배우는 아이폰 게임 개발]_오탈자 (4) | 2010.05.18 |
[맥과 아이폰 개발자를 위한 Xcode]_오탈자 (2) | 2010.05.04 |
[클라우드의 충격]_오탈자 (0) | 2009.10.28 |