In-depth API coverage
The value of this book is in the depth of the coverage it gives to every topic. As opposed to the usual code fragments glued together with the necessary minimum of expository text, this book takes it's time to explain topics in detail. It's clear that in it's third revision the author has learned how to teach the Java network APIs.
Topics covered include both client and server code with sockets and UDP, non-blocking I/O, and protocol and content handlers, as well as many others. This is very in-depth, very well written with effective use of graphics. And better yet you will learn about the protocols themselves as well as the APIs.
This is an outstanding book, easily the best book, on the Java network APIs.
An Excellent Choice
I read this book and really enjoyed it. It is easy to read, and has lots of useful code. I like all books written by this author. If you like this book, then you should try his book on JAVA and XML. That book is well written. I would recommend this networking book to anyone who wants to learn JAVA and Networking. Some LAN experience or a networking course will help you. Buy this book -- it is worth an investment!!!
Misapprehensions and misinformation. Avoid.
Avoid. This book appears to have quite a reputation, but despite being in its 2nd edition, it is riddled with errors. The book exhibits some fundamental misapprehensions about TCP/IP; as a result it perpetrates some astonishing misinformation, much of it quite basic. Partial list: the nature of a socket close operation; what IOException when closing a socket means; what happens when the listen backlog is exceeded; specification of the ServerSocket constructors; Nagle's algorithm (Socket.setTcpNoDelay); linger; keepalive; etc etc.Of the examples which do work, the PortScanner and LocalPortScanner are provided in versions which perpetrate atrocities on the local machine and network by not closing sockets. Multi-homing very cursorily treated, not even indexed. Firewalls apparently treated in one page. Role of TTL in multicast apparently ignored.
The text is verbose and repetitive, and a number of the examples are irrelevant. Fully 50% of the Sockets for Servers chapter consists of a rather irrelevant excursion into HTTP and HTML; the examples have bugs, not that they have much point. Also, what pray have HTML rendering and parsing in Swing got to do with networking? 30 irrelevant pages on this; nice to have, but why here?
Author seems to think HotSpot is a JIT. Typos in the index, not encouraging. Many impending JDK 1.4 enhancements will shortly obsolete this book. Avoid it. For TCP/IP and UDP fundamentals, buy W.R. Stevens Unix Network Programming. -
Misapprehensions and misinformation. Avoid.
Avoid. This book appears to have quite a reputation, but despite being in its 2nd edition, it is riddled with errors. The book exhibits some fundamental misapprehensions about TCP/IP; as a result it perpetrates some astonishing misinformation, much of it quite basic. Partial list: the nature of a socket close operation; what IOException when closing a socket means; what happens when the listen backlog is exceeded; specification of the ServerSocket constructors; Nagle's algorithm (Socket.setTcpNoDelay); linger; keepalive; etc etc.Of the examples which do work, the PortScanner and LocalPortScanner are provided in versions which perpetrate atrocities on the local machine and network by not closing sockets. Multi-homing very cursorily treated, not even indexed. Firewalls apparently treated in one page. Role of TTL in multicast apparently ignored.
The text is verbose and repetitive, and a number of the examples are irrelevant. Fully 50% of the Sockets for Servers chapter consists of a rather irrelevant excursion into HTTP and HTML; the examples have bugs, not that they have much point. Also, what pray have HTML rendering and parsing in Swing got to do with networking? 30 irrelevant pages on this; nice to have, but why here?
Author seems to think HotSpot is a JIT. Typos in the index, not encouraging. Many impending JDK 1.4 enhancements will shortly obsolete this book. Avoid it. For TCP/IP and UDP fundamentals, buy W.R. Stevens Unix Network Programming. -
Very thorough but not very user friendly
Let me start off by saying that the content is very thorough. It covers the topic extremely well, and the examples are good. This book, however, is not for the newcomer to Java. It is assumed that you are fairly familiar with the language, and the examples are not explained very well. The text is also a bit dry. I found it hard to sit down and read. Dispite the minor issue of user friendliness, this is an excellent reference on the subject of networking, and I recommed it to anyone who knows Java fairly well and wants to expand their horizons.