윈도우즈 API 정복 1 윈도우즈 API 정복 2
김상형 지음 / 한빛미디어
나의 점수 : ★★★★★





이번에 개정판이 나온 Windows API(Application Programming Interface) 정복 1,2권을 질렀습니다.
작년 11월달에 이 책을 산게 기억나는데 벌써 개정판이 2006년 6월달에 나왔답니다 멍~
7월달에 책을 살까 말까 고민을 하다가 서점에서 책을 보고나서 지름신이 꿈틀꿈틀거리더군요. 근데 돈이 없어서 참았습니다(통장 잔고는 남아있어도 뺄수가 없어서 ㅠ_ㅠ)


계속 개정판을 사고 싶어도.. 아직도 구판은 다 보질 못했는데 -_-;;


9월 22일 금요일날 집에 가려고 지하철에 타고 나서 앉아서 가려고 했더니 지름신이 강림하셨습니다.

이번에 나온 책 2권의 총 가격은 60,000원이네요. ㅠ_ㅠ
이 돈이면 한달 교통비가 나간다고 생각하시면 될듯(통장 잔고가 좀 남아서 다행이죠,  요즘따라 지름신이 SD메모리 카드 512M짜리 지르라고 머릿속에서 맴돌고 있습니다.)


이번 개정판은 지를수 밖에 없을 정도로 내용들이 더 많아졌으며, 예전 것 보다 예제가 아주 엄청나게 풍부해졌습니다. 거기에 예전 책은 20세기 말에 쓰여져서 지금 현재와 맞지 않는 부분도 (windows 98이나 2000중심의 소개, Windows XP가 나오기 전의 내용들) 많았습니다.
이번에 나온 개정판은 미래에 나올 64bit 컴퓨터 시스템을 고려한 측면과 64bit OS인 Windows Vista에 대해서도 소개가 되어 있으며 예전 책과 다르게 Unicode지원쪽으로 가려는 듯 유니코드 출력함수들이 많이 등장합니다.
휠마우스가 대중화 되었다고 휠마우스부분도 추가되었고 듀얼모니터 부분도 추가가 되었더군요. 그리고
개정판에서 획기적인 것은 Visual C++ 2005를 권장하는 것입니다. 시대의 추세를 위해서인지?
저는 아쉽게도 Visual Studio 2005는 익숙하지 않고 다운로드 받기도 좀 그렇고 해서 아직도 Visual C++ 6.0을 쓰고 있습니다.
이번 개정판을 쓰기 위해서는 MicroSoft사의 Platform SDK는 꼭 깔아야 되군요.(Visual C++ 6.0이 98년도에 나왔던 Compiler이니 최신 내용을 알아 먹을수 없으니까, 최신 내용 반영하기 위해서는 필수로 깔아줘야 합니다.)

이 Windows API 개정판과 구판을 비교를 해봤더니, 개정판이 더 글이 재미있게 쓰여졌더군요. (Code부분도 유니코드 지원으로 바뀐 것과 예제가 더 많아지고, Windows 98에 없는 XP, 2003내용들이 추가되었다는 것이 보이지만 Code는 다 영어로만 보입니다 멍~) 개정판과 구판은 그래도 내용은 대부분 비슷하덥니다.

정말 개정판이 구판보다 양이 더 많아져서 1,2권으로 분권되었습니다. 아래 사진은 구판과 개정판의 비교


아래는 구판과 개정판의 비교에서 재미있게 봤던 내용
Windows API 정복 1판 제 25장 시스템 정보 P.942~943
(상략)
이 함수들은 SYSTEMTIME 포맷의 날짜를 입력 받아 2000년 1월 1일을 기준으로 한 절대 초를 계산하고 또한 절대 초를 다시 SYSTEMTIME 포맷으로 변환한다. 앞에서 만든 MyGetAbsDay함수가 절대 날짜를 계산하는데 비해 이 함수는 좀 더 정밀하게 초단위로 절대 시간을 구함으로써 날짜가 아닌 시간 계산에 융용하게 사용할 수 있다. 32비트 정수로 절대 초를 표현하기 때문에 표현 가능한 년수가 136년 밖에 되지 않아 부득이 하게 기준날짜를 FILEFIME의 1601년으로 잡지 못하고 2000년 1월 1일로 잡았다. 따라서 이 함수들은 2136년까지는 잘 써먹을 수 있을 것이다.

다음 예제는 이 함수들을 활용하여 시스템이 부팅한 시간과 현재까지 경과한 시간을 보여준다. 노트북 사용자들은 배터리를 얼마나 사용했는지 측정할 수 있으며, 서버 관리자는 서버가 몇일 동안 안죽고 잘 버티고 있는지를 살펴볼 수 있다. 그래서 이 예제는 가급적이면 작은 화면을 차지하도록 초소형의 대화상자로 디자인하였다.
(하략)

아래 추가된 내용은 빨간색으로 처리하였습니다.
Windows API 정복 2판 2 권 제 34장 시스템 정보 P.1316
(상략)
이 함수들은 SYSTEMTIME 포맷의 날짜를 입력 받아 2000년 1월 1일을 기준으로 한 절대 초를 계산하고 또한 절대 초를 다시 SYSTEMTIME 포맷으로 변환한다. 앞에서 만든 MyGetAbsDay함수가 절대 날짜를 계산하는데 비해 이 함수는 좀 더 정밀하게 초단위로 절대 시간을 구함으로써 날짜가 아닌 시간 계산에 융용하게 사용할 수 있다. 32비트 정수로 절대 초를 표현하기 때문에 표현 가능한 년수가 136년 밖에 되지 않아 부득이 하게 기준날짜를 FILEFIME의 1601년으로 잡지 못하고 2000년 1월 1일로 잡았다.

따라서 이 함수들은 2136년까지는 잘 써먹을 수 있을 것이다. 이 말은 곧 2137년부터는 틀린 연산을 한다는 애기인데 그때 내 나이는 168살이 되므로 설사 문제가 생겨도 나는 아무 책임을 질 수 없다. 설마 그럴리는 없겠지만 168살까지 살아 있다 한들 기력도 없는 어르신에게 "왜 함수를 저딴식으로 만드셨어요?" 라는 험한 말을 할 것 같지도 않으니 대충 이정도면 쓸만하다.

다음 예제는 이 함수들을 활용하여 시스템이 부팅한 시간과 현재까지 경과한 시간을 보여준다. 노트북 사용자들은 배터리를 얼마나 사용했는지 측정할 수 있으며, 서버 관리자는 서버가 몇일 동안 안죽고 잘 버티고 있는지를 살펴볼 수 있다. 그래서 이 예제는 가급적이면 작은 화면을 차지하도록 초소형의 대화상자로 디자인하였다.
(하략)


......




이글루스 가든 - 무적의 공대생이 되자!

'독서(讀書)' 카테고리의 다른 글

Code Reading  (4) 2006.10.06
스즈미야 하루히의 동요  (7) 2006.10.06
Marketing Myopia (마케팅 근시)  (3) 2006.09.19
도서관에 갔다오다.  (4) 2006.08.26
8월달에 읽은 책들  (4) 2006.08.25
Buy me a coffeeBuy me a coffee

+ Recent posts