|
| Login | Sign up | Settings | My Wish List |
![]() | C# Network Programming by Richard Blum ISBN-10: 9780782141764 ISBN-10: 0-7821-4176-5 ISBN-13: 9780782141764 ISBN-13: 978-0-7821-4176-4 Paperback 2002-11-26 Sybex Find Lowest Price | |
Editorials | ||
Product Description C# is Microsoft's hot new language for the .NET platform. This book covers everything C# programmers need to know to create network applications, a task traditionally done in C++. It explores the basics of network programming, including IP and TCP protocols, and moves on to targeted C# instruction, including using the C# network programming classes in the .NET framework. Topics covered include low-level network programming (such as sockets and multithreading), as well as network application layer programming for email, web-based, and security applications. Specific examples show how to create applications that use network protocols such as SNMP, SMTP, and HTTP. The book also has advanced coverage of incorporating an Active Directory server database and .NET remoting in a network application. Author Richard Blum has been a network and systems administrator for 13 years for the Department of Defense and is the author of four books on networking topics. | ||
Reviews | ||
OK for a sys admin 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 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 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 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 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. | ||