사이드바 영역으로 건너뛰기

게시물에서 찾기웹 표준

1개의 게시물을 찾았습니다.

  1. 2007/08/06
    다이내믹한 웹 표준 사이트를 위한 DOM 스크립트(2)
    바람들

다이내믹한 웹 표준 사이트를 위한 DOM 스크립트

다이내믹한 웹 표준 사이트를 위한 DOM 스크립트

글쓴이: Jeremy Keith
옮긴이: 윤석찬
출판사: 에이콘

금요일에 학교 서점에서 사서 읽고 있다. 처음에는 자바스크립트 책을 사려고 했는데, 먼저 DOM을 제대로 아는 것이 좋을 것 같아서 골랐다.

DOM은 문서 객체 모델로 옮겨지는 Document Object Model의 머릿글자를 딴 말인데, DOM을 이용하면 HTML 문서의 여러 요소들을 객체처럼 다룰 수 있고, 새로 읽지 않고도 페이지의 내용과 모양을 바꿀 수 있다. DOM을 이용하지 않고 HTML 문서를 바꾸는 방법들도 있지만, 그러한 방법들은 대개 웹 표준을 지키지 못한다. 이 책은 국내에서 거의 유일하게 DOM을 중심으로 다룬 책으로서, DOM을 이용해서 동적인 웹 사이트를 어떻게 만들 수 있는지 예제를 통해 설명하고 있다.

책은 전반적으로 편하게 읽을 수 있었다. 번역자의 노력도 여기 저기에서 볼 수 있었는데, 외국 사람에게 맞춘 표현들을 한국 사람에게 맞는 표현으로 옮겼고, 예제도 한국에 맞게 새로 만들어서 옮겼다. 맨 뒤에는 한국어판 특별 부록이 두개나 들어가 있다.

한가지 아쉬운 점을 꼽자면 잘못된 번역이나 오탈자가 많다는 것이다. 몇가지만 예로 들면 다음과 같다. (제가 잘못 생각한 것이 있다면 지적해 주시면 고맙곘습니다.)


1. 29쪽 2번째 줄

영어
Though the name never really stuck, we should really be referring to JavaScript as ECMAScript.

국어
사실 이름이 그리 중요하지 않을지 몰라도 ECMA스크립트로서 자바스크립트라고 불러야 합니다.

문제
국어 문장을 보면 ECMA스크립트를 자바스크립트라고 불러야 하는 것 같지만, 사실은 반대다. 자바스크립트를 ECMA스크립트로 불러야 한다는 문장이다.

대안
ECMA스크립트라는 이름이 널리 퍼지지는 않았지만, 사실 우리는 자바스크립트를 ECMA스크립트라고 불러야 합니다.

2. 29쪽 10번째 줄

영어
Unfortunately, the choice of this name really only had the effect of confusing the two languages in people's minds -- a confusion that was amplified by the fact that web browsers also support a form of client-side Java.

국어
하지만 이는 사람들이 자바 언어와 자바스크립트를 혼동하게 만드는 결과를 낳았습니다. 게다가 웹 브라우저에서 구동되던 자바 애플릿과도 마찬가지입니다.

문제
무엇이 마찬가지인지 도저히 알 수 없다. 문장에 주어가 없기 때문이다.

대안
안타깝게도 이는 사람들이 자바 언어와 자바스크립트를 혼동하게 하는 결과만을 낳았습니다. 웹 브라우저에서 자바 애플릿을 구동할 수 있었기 때문에 이 혼동은 더욱 심해졌습니다.

3. 30쪽 19번째 줄

영어
The first, tentative sort of Document Object Model is often referred to as DOM Level 0.

국어
이런 임시적인 형식을 가진 초기 문서 구조를 DOM 레벨 0이라고 불렀습니다.

문제
Document Object Model을 문서 구조라고 번역했다. 문서 객체 모델이 무엇인지 설명하는 문단에서 이러한 실수는 치명적이다. 문서 구조라고 하면 document structure를 번역했다고 생각하기 쉽다.

대안
이런 초기의 임시적인 문서 객체 모델을 DOM 레벨 0이라고 불렀습니다.

4. 32쪽 3번째 줄

영어
The difference didn't end there. Let's say you wanted to find out the left position of myelement and assign it to the variable xpos.

국어
둘 사이에 결과적인 차이는 없습니다. xpos라는 값을 정의해서 myelement라는 값의 왼쪽 위치를 정의해볼까요?

문제
잘못된 번역이다.

대안
차이는 여기서 끝나지 않습니다. 여러분이 myelement의 왼쪽 위치를 알아내서 xpos라는 변수에 넣고 싶다고 합시다.

5. 60쪽 아래에서 9번째 줄

코드
count++;
alert(count);

문제
코드의 순서가 바뀌었다. 이런 것까지 따진다고 생각할 수도 있지만, 원서의 errata에 있는 오류 정도는 반영해야 한다고 생각한다.

대안
alert(count);
count++;

번 역서에서 가장 중요한 것은 편하게 읽을 수 있도록 원서의 내용을 쉽고 정확하게 전달하는 것이라고 생각한다. 사람들이 번역서를 꺼리는 가장 큰 이유 중 하나가 오역이라고 생각해 볼 때, 번역자와 출판사가 조금만 더 노력을 기울였으면 하는 아쉬움이 남는다. 출판사 홈페이지에 정오표가 있는 것을 보면, 2쇄가 나올 때에는 더 나아지리라 기대해 본다.
진보블로그 공감 버튼트위터로 리트윗하기페이스북에 공유하기딜리셔스에 북마크