Search this Site powered by Google
Home | About Us | Blog | Link to Us | Contact Us  Shop at Our ASP.NET Store!

Powered by ASP.NET

In association with Amazon.com
Store

See larger picture

C# Network Programming
by Richard Blum - Sybex

List Price: $59.99
Price at Amazon.com: $39.91 (Save 33%)

Buy from Amazon.com

Availability: Usually ships in 24 hours
Shipping rates and policies

  • Average Customer Review: Based on 16 reviews.
  • Amazon.com Sales Rank: 355505


Product Description

On its own, C# simplifies network programming. Combine it with the precise instruction found in C# Network Programming, and you'll find that building network applications is easier and quicker than ever.

This book helps newcomers get started with a look at the basics of network programming as they relate to C#, including the language's network classes, the Winsock interface, and DNS resolution. Spend as much time here as you need, then dig into the core topics of the network layer. You'll learn to make sockets connections via TCP and "connectionless" connections via UDP. You'll also discover just how much help C# gives you with some of your toughest chores, such as asynchronous socket programming, multithreading, and multicasting.

Network-layer techniques are just a means to an end, of course, and so this book keeps going, providing a series of detailed application-layer programming examples that show you how to work with real protocols and real network environments to build and implement a variety of applications. Use SNMP to manage network devices, SMTP to communicate with remote mail servers, and HTTP to Web-enable your applications. And use classes native to C# to query and modify Active Directory entries.

Rounding it all out is plenty of advanced coverage to push your C# network programming skills to the limit. For example, you'll learn two ways to share application methods across the network: using Web services and remoting. You'll also master the security features intrinsic to C# and .NET--features that stand to benefit all of your programming projects.


Featured Customer Reviews

OK for a sys admin, March 08, 2007
This is a good book if you are a systems admin (like the author) wanting to write simple network programs in C#. However, the author has a very limited knowledge of .NET programming. In most of his numerous code samples, his ignorance of CLR fundamentals shine through. For instance, on page 192 he has these lines of code in the VarTcpSrvr.cs listing:

byte[] datasize = new byte[4];
datasize = BitConverter.GetBytes(size);

The first line of code creates a new byte array named datasize on the managed heap. Then the call to BitConverter.GetBytes(...) returns another byte array and stores the reference in datasize! The first byte array will now be garbage collected, as it is no longer referenced and was never used in the first place. The book is filled with code examples like this.

If you are a professional developer, the book doesn't have much to offer, as you will likely already know nearly as much as (if not more than) the author. Not to mention, seeing all the poor coding samples will likely become a distraction. I still give this book three stars because the networking content is good and the code samples do, in fact, seem to work. They just happen to be coded poorly. Since the author doesn't really understand the platform he's coding on, approach with caution -- especially if you are a beginner.

Very good book, April 12, 2006
if you allready have some c# experience this books is the next step u need for jump into the network programming... the books compile the 99% on vs 2005 and the examples are clear, they left no doubt when you are reading, if you want to invest some money on learning this is one way you can do it.

Highly recommended, October 11, 2005
I used a number of books as references for a server project in C#, including the "TCP/IP Sockets in C#" book referenced in another review, but that book is more geared toward academic use (though to his credit I emailed one of the authors of the book regarding multithreading issues that were not addressed in print and he was very responsive, so I support the purchase of that book to round out your sockets library as well). Blum's book provided far more practical advice relating to my project and was the one I consistently returned to for reference. I had an issue not addressed directly in the book, did a Google search on it and found the answer...by the book's author in an online discussion forum!

In short, it is virtually impossible to find a book that addresses every last real-world gotcha inherent in starting any new project with a new language and class library as vast as .NET's, but if you have a C# sockets project to do then I can't recommend another book more than this one.

Doesn't go deep enough into the real issues, September 05, 2005
This book is a good introductory book to network programming in general. While it attempts to cover all the general topics that you can find in reference books like "TCP/IP Illustrated", it seriously lacks the breadth and depth of such reference books and falls short of tackling the real issues of Network Programming with the .Net frameowrk in C#.

The .Net framework and the C# language bring some new design patterns and some paradigms that are definitely different from what we used to see with C/C++ or Java and I found that this book while containing a lot of source code examples in C# lacks coverage of such patterns and the .Net way of solving issues like high performance multi-client servers, performance oriented data handling over network connections, multi-threaded network applications design patterns in C# and .Net framework,...

In summary, if you are new to C#, .Net and have never programmed network applications in another language and are looking for a book that covers a lot of subjects, this is your book. If you already have the TCP/IP Illustrated books and want an advanced book about how .Net and C# apply to network programming, I recommend "TCP/IP Sockets in C#", a much smaller book but extremely focused on what the title says!

thorough introduction to network programming, June 20, 2005
This is an excellent introduction to network programming. Even if you don't use C#/.NET, you may still want to have a look at this book as it discusses IP programming and techniques from first principles. For example, the book includes an overview of socket programming in the Unix world, then moves on to Winsock specifics before introducing the socket and higher-level classes in .NET. I really like the author's approach of explaining multiple ways to solve a particular network programming issue, such as how to deal with the fact that using TCP by itself doesn't preserve message boundaries.

All of the code samples can be downloaded from the Sybex website and there is complete and perfect tie-in to the samples from the book. In fact, all of the code is reproduced in the book so you can effectively read it from cover to cover without a computer. Besides just listing source files, the author always explains what each block of code is doing.

The code samples typically consist of self-contained client and server programs that illustrate a particular network programming topic. I found most of them can be tested on the same PC (except that you won't be able to analyze the network traffic as there won't be any). A few of them require two PCs as the client and server bind to the same IP port. To test the SNMP client programs, I didn't have access to a real Cisco router so I just downloaded a trial version of an SNMP agent simulator from iReasoning to test the programs.

To reach the largest audience, the book describes how to compile, build and debug the sample programs using the command line tools in the .NET Framework SDK (which is a free download from Microsoft). I used Visual Studio .NET 2003 instead and had no problems with building any of the samples.

Overall, the book does a great job of explaining what can be a complex subject area. It would have been good though if the author included an advanced topics chapter that discusses popular network-aware applications (such as chat programs, file-sharing systems, etc) and how they are implemented architecturally.


You might also be interested in these items...

Home | About Us | Link to Us | Contact Us
Privacy Statement © 2004-2008 ASPNETWorld.com