이전

리뷰 (5)

한줄평
평점 분포
  • 리뷰 총점10 60%
  • 리뷰 총점8 40%
  • 리뷰 총점6 0%
  • 리뷰 총점4 0%
  • 리뷰 총점2 0%
연령대별 평균 점수
  • 10대 0.0
  • 20대 0.0
  • 30대 9.0
  • 40대 10.0
  • 50대 8.0
리뷰 총점 종이책
제 값 하는 책.
"제 값 하는 책." 내용보기
자바 프로그래머이면서 현재 갓 MFC를 접하고 있다.   그 동안 몇 년 안 되는 프로그래머 인생을 살면서 느낀 바는   모든 언어의 스킬은 파일io, DB 제어, 네트워크만 알면 된다였다.   많이 접해 보진 않았지만 C언어의 파일과 DB는 접해 봤는데 도통 모르겠던 것이 네트웍이었다.   공부하고자 몇권의 책을 도서관에서 찾아봤는데 이 역시 잘 이해가 안 갔다.   그러던 중
"제 값 하는 책." 내용보기

자바 프로그래머이면서 현재 갓 MFC를 접하고 있다.

 

그 동안 몇 년 안 되는 프로그래머 인생을 살면서 느낀 바는

 

모든 언어의 스킬은 파일io, DB 제어, 네트워크만 알면 된다였다.

 

많이 접해 보진 않았지만 C언어의 파일과 DB는 접해 봤는데 도통 모르겠던 것이 네트웍이었다.

 

공부하고자 몇권의 책을 도서관에서 찾아봤는데 이 역시 잘 이해가 안 갔다.

 

그러던 중 윤성우님의 책 소문을 들었다.

 

도서관 목록에서 찾아보니 구청 도서관에 있었다. 구청은 먼데...

 

하는 수 없이 서점에서 도둑 독서를 시도했다. 점심 시간 1시간을 온통 도서관에서 이 책 보는 것으로 투자했다.

 

그 동안 도서관에서 보던 책하고는 다르게 몇 장 넘길 때마다 절로 나오는 감탄사를 어찌하리오.

 

네트웍 외의 관련 내용도 잘 정리되어 있다. 스레드와 동기화, 파일IO관련 내용에도 충실하다.

 

그래서 그냥 샀다. 책 사는 데 돈 아끼는 거 아니라곤 하지만 아까웠던 책도 몇 있다.하지만 이 책은 정말 안 아깝다.

 

책 외에 동영상 강의 쿠폰도 있다.

 

솔직히 책 보고 코딩해도 이해 안 가는 부분 있는데 동영상 보니 이 또한 감탄이다

 

프로그램 세상에 입문한 사람은 반드시 있어야 할 책이 아닌가 싶다.

 

충분히 중급자로 인도할 것이다.

 

s*****y 2010.07.16. 신고 공감 3 댓글 0
리뷰 총점 종이책
[2012-012] TCP/IP 소켓통신의 기본을 이해하자
"[2012-012] TCP/IP 소켓통신의 기본을 이해하자" 내용보기
이 책을 리뷰한다고 적어야 할지 고민을 했다. 왜냐하면, 나는 FREELEC의  "열혈강의 TCP/IP 소켓 프로그래밍" 책을 읽었지, 오렌지미디어의 "윤성우의 열혈 TCP/IP 소켓 프로그래밍"이란 책을 읽지 않았기 때문이다.  하지만, 리뷰를 적기로 했다. 괜찮은 책을 신입사원이나 초보 프로그래머에게 소개하는 것이 필요하고, 또한, 목차를 비교해 보니 기존에 읽었던 내용과 큰 차이가 없다
"[2012-012] TCP/IP 소켓통신의 기본을 이해하자" 내용보기

이 책을 리뷰한다고 적어야 할지 고민을 했다. 왜냐하면, 나는 FREELEC의  "열혈강의 TCP/IP 소켓 프로그래밍" 책을 읽었지, 오렌지미디어의 "윤성우의 열혈 TCP/IP 소켓 프로그래밍"이란 책을 읽지 않았기 때문이다.  

하지만, 리뷰를 적기로 했다. 괜찮은 책을 신입사원이나 초보 프로그래머에게 소개하는 것이 필요하고, 또한, 목차를 비교해 보니 기존에 읽었던 내용과 큰 차이가 없다고 생각했기 때문이다. 

최근에 어떤 개발자가 금융권 프로젝트에 투입된다고 한다면, 대외계 프로그램을 작성하지 않는한 소켓 프로그램을 작성할 기회가 많지 않을 것이다. EAI(Enterprise Application Integration) 솔루션이나, 채널통합 솔루션, Framework 등이 대부분 도입되어 있어, 과거와 같이 소켓으로 통신을 하는 프로그램을 작성할 기회가 적어졌기 때문이다.  하지만,  소켓 통신의 동작원리를 이해하고 있으면 우리가 사용하는 많은 소프트웨어들이, 사용하는 사람 모르게 소켓을 만들어서 통신하고 있다는 사실에 놀랄지도 모른다.
 
 이 책은 UNIX 와 Windows 양쪽 환경에서 소켓을 구현하는 방법에 대해서 설명하고 있다.  (사실 Windows 클라이언트 소켓이 UNIX 서버 소켓에 연결하는 경우가 더 많은 것 같다 )

이 책의 주요 내용 중 간단하고 기본적인 내용을 주로 살펴보자.

IP주소(Internet Protocol Address)와 Port에 대한 설명이 나온다.  TCP/IP 통신에서 가장 기본적인 내용이다. IP는 전 세계의 모든 컴퓨터를 구분하기 위하여 번호를 붙여 놓은 것이고, Port번호는 해당 컴퓨터에서 특정 프로세스(또는 쓰레드)와 연결을 구분하기 위한 번호라고 이해하면 되겠다. 

좀 더 쉽게 이야기하면, 대한민국 서울시 여의도 A아파트 101호에 살고 있는 영희가 미국 뉴욕의 B 아파트 201호에 살고 있는 철수에게 편지를 보냈다고 하면, 아파트까지 주소가 IP주소에,  201호가 port에 해당하고 201호에는 철수라는 프로세스가 요청에 응답을 할 것이다.
(IP주소가 모자라서 IPv4에서 IPv6로 바꾸고자 한다던지,  네트워크 주소를 계산하기 위해서 subnet mask를 활용한다던지 하는 내용은 기회가 있으면 다른 글로 올리겠다.)

시스템이 내부적으로 데이터를 처리할 때 Big-Edian이나 Little-Endian을 사용할 수 있는데... 우리가 일반적으로 사용하는  Intel x86계열 CPU는 Litten-Endian을 사용하고 있으며, CPU에 따라 순서를 다르게 해석할 수 있으므로 네트워크로 데이터를 전송할 때는 반드시 네트워크 바이트순서(Network Byte Order)에 따라야 한다는 것을 기억하자.

TCP기반 서버 프로그램을 만들기 위해서는, 서버소켓 만들기(socket) -> 소켓에 주소할당(bind) -> 연결요청 대기(listen) -> 연결허용(accept) -> 데이터 송수신(read & write) -> 연결종료(close)의 과정을 거친다.

TCP기반 클라이언트 프로그램을 만들기 위해서는, 소켓생성(socket) -> 연결(connect) -> 데이터 송수신(read & write) -> 연결종료(close)의 과정을 거친다.

프로그램은 간단하다.  하지만, 소켓 프로그램을 작성해 본 사람은 알겠지만... 자기가 테스트 해서 잘 되는 프로그램도, 전화로만 이야기하는 보이지 않는 상대와 같이 작업하다 보면, 다양한 문제가 생긴다.  서로 자기는 잘못한 것이 없어 보이고  상대방이 의심스러워 진다. 

이런 경우에 전화로 왈가왈부할 필요없이, Wireshark와 같은 패킷추적 툴을 사용해 보자.  http://www.wireshark.org/  무료 툴이고, 가장 많이 사용하는 툴인 것 같다.  이 툴을 사용하여 연결이 정상적으로 이루어 졌는지 확인하기 위하여 3-way handshaking을 이해하여야 하고, 정상적으로 종료되었는지를 확인하기 위하여 4-way handshking을 이해해야 한다.  연결이 되어서, 패킷이 보내지면 반드시 상대방이 ACK를 보내는지도 확인해야 한다.  이 책에서는 TCP기반 소켓에서 연결과 종료에 대한 Handshaking에 대해서 자세히 설명하고 있다. 

이 밖에도 서버소켓을 기동하는 특정 Port번호를 재사용할 수 없는 문제와 관련된 TIME-WAIT 상태라던지, 좀비프로세스, 시그널 처리 방법, IPC(Inter-Process Communication), 멀티플렉싱(multiplexing), 멀티쓰레드, 비동기 Notification 등에 대해서 설명하고 있다. 

"HTTP 서버 제작하기" 에서는 HTTP 프로토콜이 Stateless 프로토콜이어서 연결을 맺고 요청/응답이후에 연결이 종료된다는 내용을 설명하고 있다.  이 블로그의 "HTTP  Session을 이해하자" 란 글과 연관해서 생각해보면 도움이 될 것이다.


모 은행에서 대외계 시스템을 구축할 때, 이 책의 내용을 많이 참조하였다. 좋은 예제들이 많다. 통신 프로그램을 작성하려는 사람들에게 적극 추천할 만한 책이다.

t********s 2012.02.29. 신고 공감 3 댓글 0
리뷰 총점 종이책
뭐 고민할 게 있나? 당연히 윤성우!
"뭐 고민할 게 있나? 당연히 윤성우!" 내용보기
아마도 대부분 사람들이 컴퓨터,IT에 입문할 때 C언어를 처음 공부하려고 했을 것이다, 그래서 인터넷 여기저기를 수소문해서 C언어 책 추천을 받았을 것이고 열에 아홉은 윤성우의 '열혈강의 C프로그래밍'책을 추천받았을 것이다.   윤성우의 열혈강의 C 책을 구입하고 강의를 보면서 공부하신 분 중 구매을 후회한 사람이 있을까?   나도 대략 1년 전쯤에 대학교에 입학해 컴퓨터
"뭐 고민할 게 있나? 당연히 윤성우!" 내용보기

아마도 대부분 사람들이 컴퓨터,IT에 입문할 때 C언어를 처음 공부하려고 했을 것이다, 그래서 인터넷 여기저기를 수소문해서 C언어 책 추천을 받았을 것이고 열에 아홉은 윤성우의 '열혈강의 C프로그래밍'책을 추천받았을 것이다.

 

윤성우의 열혈강의 C 책을 구입하고 강의를 보면서 공부하신 분 중 구매을 후회한 사람이 있을까?

 

나도 대략 1년 전쯤에 대학교에 입학해 컴퓨터 공부를 시작하면서 위처럼 윤성우의 열혈강의 C프로그래밍 책을 접하게 되었고 지금은 윤성우의 TCP/IP 소켓프로그래밍 책을 온라인 강의와 함께 보는 중이다. 아직 책 초반부를 보는 중인데 처음 접하는 영역인 만큼 어렵다, 책을 뒤로 쓱 넘겨보면 갈수록 복잡하고 난해한 소스들이 보이는데 그러나 윤성우님의 온라인 강의와 함께할 걸 생각하면 전혀 두렵지 않다!

 

지금 현재 소켓프로그래밍 교재는 C언어 만큼 교재 선택의 폭이 넓지는 않지만

정말 소켓프로그래밍을 처음 시작하는 분이라면 고민할 것 없이 윤성우를 믿고 이 책을 선택하길 추천한다!

 

w******l 2010.05.22. 신고 공감 0 댓글 0
리뷰 총점 종이책
정말 독자들을 위한 책!
"정말 독자들을 위한 책!" 내용보기
정말 독자들을 위한 책이라니 제목부터 이상하게 시작하긴 하지만 옳은 말이라고 자신한다.   이 책은 네트워크 프로그래밍을 처음 시작하는 입문자들을 위한 기본서이다.   기본서는 기본서 답게 입문자들의 시점에서 쓰여져야 한다. 당연한 소리 아닌가.   그런데 요즘은 서점에서 프로그래밍 관련 서적을 보면 기본서라는 이름을 단 중급자수준의 서적이 많이 보인다.   그런
"정말 독자들을 위한 책!" 내용보기

정말 독자들을 위한 책이라니 제목부터 이상하게 시작하긴 하지만 옳은 말이라고 자신한다.

 

이 책은 네트워크 프로그래밍을 처음 시작하는 입문자들을 위한 기본서이다.

 

기본서는 기본서 답게 입문자들의 시점에서 쓰여져야 한다. 당연한 소리 아닌가.

 

그런데 요즘은 서점에서 프로그래밍 관련 서적을 보면 기본서라는 이름을 단 중급자수준의 서적이 많이 보인다.

 

그런 책들이라고 좋은 지식을 담고 있지 않은건 아니고, 오히려 이 책보다 좋은 지식을 담고 있을지도 모른다.

 

하지만 기본서는 어디까지나 기본서여야 한다고 생각한다. 기본서는 입문자들이 해당기술을 부담없이 접하

 

게끔 도와주는 책인데, 내용이 어려워 접하는 것이 부담스러워진다면 역효과를 내는 것이 아닌가!

 

그런 의미에서 이 책은 기본서다운 기본서, 정말 독자들을 위한 책이다.

 

12개월 강의 쿠폰도 동봉되어 있어 한층 더 "재밌게 즐길" 수 있을 것이다.

r***s 2010.02.15. 신고 공감 0 댓글 0
리뷰 총점 종이책
원래는...
"원래는..." 내용보기
C언어 책을 처음 윤성우님꺼를 사서 봤었는데 초보자일때도 저한테는 어려웠습니다.그래서 본 책도 살까말까 고민 많이했는데 그냥 마땅한것이 없을거 같아 그냥 주문하기로 마음먹고 샀어요.그런데............꽤 좋네요... 내용도 상당히 알차고 사길 잘한거 같아요.저는 그냥 소켓통신하는 개념? 정도 부터 그냥 간단한 통신하는 논리정도?만 필요해서 보고 있거든영.아직 첫부분이지
"원래는..." 내용보기

C언어 책을 처음 윤성우님꺼를 사서 봤었는데 초보자일때도 저한테는 어려웠습니다.


그래서 본 책도 살까말까 고민 많이했는데 그냥 마땅한것이 없을거 같아 그냥 주문하기로 마음먹고 샀어요.


그런데............


꽤 좋네요... 내용도 상당히 알차고 사길 잘한거 같아요.


저는 그냥 소켓통신하는 개념? 정도 부터 그냥 간단한 통신하는 논리정도?만 필요해서 보고 있거든영.


아직 첫부분이지만 괜찮은거 같아요ㅎㅎ


뭉뜬거리는것도 없고 일단 차근차근 처음에 굳이 몰라도 되는건 뛰어넘고 먼저 개념설명부터 해준느거 아주 좋아해서요.


처음부터 코드 파는거는 개인적으로 안좋아해서리.....


두고두고 한번씩 기초레퍼런스로 볼꺼 같아요.


추천

YES마니아 : 로얄 p*****0 2017.06.28. 신고 공감 0 댓글 0