Most Helpful Customer Reviews
|
|
7 of 7 people found the following review helpful:
4.0 out of 5 stars
Simple to understand, but I prefer a bit of complexity. . ., July 26, 2002
Most of my experience in network programming comes from W. Richard Stevens' "UNIX Network Programming", where there's lots of detail in the TCP/IP protocol, and using C to implement it. At the time, the professor teaching the course tried to provide us with comparable programs in Java, but not having a good Java networking book to consult from was a drawback to those segues.This book serves as an excellent companion to Stevens' book, so that you can get the feel for how Java accomplishes networking capabilities. I still prefer the TCP/IP detail that Stevens' book provides, but that's mainly because I like the language independent concept of networking. I created a small client2client messaging applet, sent it to a couple of friends for testing, and enjoyed how quickly and easily it was to get it working. Java abstracts a lot of the detail away from the user, since it was designed from the get-go to include networking capabilities, and this book uses those abstractions to its advantage. I'll probably want to get my hands dirty and see how much hands-on control I can get with Java sometime later. (Reilly*2)'s book is a great way to just jump into network programming without getting your head too tangled with TCP/IP intricacies. This is not to say that the book doesn't cover those details, but it doesn't delve into them as deeply as Stevens' book does. In my view, that's a drawback to it being an absolute reference, but for many who just want to start developing client/server apps, this may be just what you're looking for.
|
|
|
5 of 5 people found the following review helpful:
4.0 out of 5 stars
A good intro book, May 31, 2002
This book is an introduction to four major areas: networking, Java language, Java network programming, and Java distributed computing. Dozens of published books are specifically dedicated to each of these topics in detail, but this book is trying to give a reader a taste of all these technologies at the same time.The book is easy to read. Most of the material is clearly explained and illustrated. Code examples (demos) are clean and complete. The demos are not contrived, but present to the reader interesting implementations that may be reused and give a good idea of how programs that are commonly used may work (SMTP, POP clients, HTTP server, etc.). Each of the demos is followed by a detailed explanation that focuses on how the demo works. I like the book, although I think that the chapters covering Java language programming are extraneous: if you don't know Java, you should learn it from Java language specific books first, and only then venture into the advanced topics of Java network and distributed programming. The book reminds me somewhat of the classic "Unix Network Programming" by Richard Stevens, which was a must for any C/Unix programmer more than a decade ago.
|
|
|
13 of 17 people found the following review helpful:
5.0 out of 5 stars
Java Network Programming, April 30, 2002
Do you already program in Java? Do you want to go beyond building neat GUIs for applets or desktop applications? Java has two great strengths. It was built with graphical objects (widgets) being an inherent part of the language. This is an immense strategic advantage over earlier text-based languages like C and C++. For graphics, those needed special graphics libraries that were not part of the original languages, and which varied from vendor to vendor and between operating systems. The ease of use of Java widgets led to its rapid gain of programmers' mindshare. Indeed, if you look at a row of Java books in a bookstore, you will see most packed with attractive diagrams of cool graphics.But there is a second great advantage of Java. It was designed with Internet awareness from its inception. C and C++, due to their earlier vintage, have to use libraries that vary with the operating system. Java gives you a consistent interface to network programming, independent of the operating system. It is to this exposition that this book from Addison-Wesley is devoted. Written by two Queenslanders, it assumes that you already know the rudiments of Java. This is not a book for tyros. If you want to write a network client (for example, a specialised mail reader), or a multiplayer online game, or a software agent that trolls the Internet, then this book can be very useful. It describes how to use TCP sockets, UDP datagrams, multithreading, HTTP and other topics. It expands on CGI for building applets. For client-server applications, it devotes entire chapters to servlets and RMI (Remote Method Invocation). If you need to use CORBA, maybe because you have some legacy code that you want to write a Java program to interact with, then you will find a chapter expounding on it. If you have already been programming Java GUIs, then this book will expose you to a more abstract class of problems. There is no visual feedback from widget layouts here. What feedback you get is from text-based output. What you have to design against are problems based on data flow across a network. The authors have written clearly, and the code examples are well done, illustrating simply the desired concepts, without tangling you in the details. The only slight critique I have is that there is no comparative assessment of the network capabilities of Java vis-a-vis C#/.NET. The latter pair is an even newer language/programming environment that also has networking built in. But this may be unfair and straying from the book's scope. C# and .NET have just been released by Microsoft, and it is not certain if they will gain much traction. But if they do, you will undoubtedly see many books arguing the relative merits.
|
|
|
Most Recent Customer Reviews
|