TCP/IP Sockets in C# : Practical Guide for Programmers (Morgan Kaufmann Practical Guides Series)

  Author:    David Makofske, Michael J. Donahoo, Kenneth L. Calvert
  ISBN:    0124660517
  Sales Rank:    264989
  Published:    2004-04-29
  Publisher:    Morgan Kaufmann
  # Pages:    175
  Binding:    Paperback
  Avg. Rating:    5.0 based on 12 reviews
  Used Offers:    3 from $19.62
  Amazon Price:    $22.45
  (Data above last updated:  2008-11-29 06:31:02 EST)
  
  
Sort customer reviews by:
  
Show All Reviews on Page      Hide All Reviews on Page
   
  
TCP/IP Sockets in C# : Practical Guide for Programmers (Morgan Kaufmann Practical Guides Series)
  
"TCP/IP sockets in C# is an excellent book for anyone interested in writing network applications using Microsoft .Net frameworks. It is a unique combination of well written concise text and rich carefully selected set of working examples. For the beginner of network programming, it's a good starting book; on the other hand professionals could also take advantage of excellent handy sample code snippets and material on topics like message parsing and asynchronous programming."
Adarsh Khare, SDT, .Net Frameworks Team, Microsoft Corporation


The popularity of the C# language and the .NET framework is ever rising due to its ease of use, the extensive class libraries available in the .NET Framework, and the ubiquity of the Microsoft Windows operating system, to name a few advantages. TCP/IP Sockets in C# focuses on the Sockets API, the de facto standard for writing network applications in any programming language. Starting with simple client and server programs that use TCP/IP (the Internet protocol suite), students and practitioners quickly learn the basics and move on to firsthand experience with advanced topics including non-blocking sockets, multiplexing, threads, asynchronous programming, and multicasting. Key network programming concepts such as framing, performance and deadlocks are illustrated through hands-on examples. Using a detailed yet clear, concise approach, this book includes numerous code examples and focused discussions to provide a solid understanding of programming TCP/IP sockets in C#.

Features
*Tutorial-based instruction in key sockets programming techniques complemented by numerous code examples throughout
*Discussion moves quickly into the C# Sockets API definition and code examples, desirable for those who want to get up-to-speed quickly
*Important coverage of "under the hood" details that developers will find useful when creating and using a socket or a higher level TCP class that utilizes sockets
*Includes end-of-chapter exercises to facilitate learning, as well as sample code available for download at the books companion web site

*Tutorial-based instruction in key sockets programming techniques complemented by numerous code examples throughout

*Discussion moves quickly into the C# Sockets API definition and code examples, desirable for those who want to get up-to-speed quickly

*Important coverage of "under the hood" details that developers will find useful when creating and using a socket or a higher level TCP class that utilizes sockets

*Includes end-of-chapter exercises to facilitate learning, as well as sample code available for download at the book's companion web site
                  Reader Reviews 1 - 15 of 15                 
  
  
Review
Date
Review
Rating(5 High)
Review
Helpful
to:
Customer Review Reviewer
Info
Permanent
Link
Reader Reviews Below Sorted by Newest First
03-14-08 5 (NA)
(Hide Review...)  Excellent - I wish more programming books were like this
Reviewer Permalink
I have a technical book collection that rivals most libraries and this has to be one of the best programming books I've ever purchased. I'm very new to Sockets programming but I am familiar with C#. Therefore, all I needed was a way of familiarizing myself with the fundamentals of sockets programming, not a full-on long-winded lecture of everything-C#. The structure of this book is amazing. It starts each section by providing a brief description of the classes and concepts the authors are about to present. It then presents sample code illustrating the topic followed by an analysis of the code at key points by line number. It then follows up with a detailed summary of each class used in the sample along with its methods, constructors, and properties. Each example gets progressivly more complex which keeps the reader from being overwhelmed with the complexity of the subject matter too quickly.

Quick, concise, and very well written, these authors did a fantastic job!
(Review Data Last Updated: 2008-10-19 10:46:54 EST)
02-19-08 4 3\3
(Hide Review...)  Very good for its intended audience
Reviewer Permalink
This book gets very high ratings on both amazon.co.uk and amazon.com. I've given it a slightly lower rating than some, although still four stars, and will explain why...

The subtitle on the cover of the book is "Practical Guide for Programmers" which suggests it is going to be good even for experienced developers. It is only when you read the preface (page X) that you find that the book is aimed "primarily at students", and even then is "intended as a supplement, to be used with a traditional textbook", which seems a bit of a contradiction when it then says that "we have tried to make the book reasonably self-contained".

Anyway, what are the good points of this book? Well, it does mention most of the bits that a developer using sockets will want to consider. It has everything from blocking sockets, through non-blocking sockets and the select model, through to overlapped I/O. It also mentions threading, the use of thread pools, broadcast and multicast. All good stuff. Even includes example code for each.

Where the book falls down is that having skimmed over all of those topics it (a) doesn't provide adequate information about how to choose the model (synch vs. asynch, blocking vs. non-blocking, 1 thread vs. fixed number (> 1) of threads vs. thread pool, etc) to use for a particular project, and (b) falls short of being self-contained, doing the blah-blah is beyond the scope of this book thing.

I have seen many projects developed using the wrong model, resulting in poor performance, lack of responsiveness, inability to shutdown cleanly etc. I'm pretty sure that the authors of the book will have seen projects like that too. Books about using sockets really need to advise on this area.

It is understandable that a book of this size and price will say that some things are outside the scope of the book, but not something as basic as socket options (p52 refers the reader to the MSDN). Again, socket options are an area where well-meaning developers or support staff set values that are little better than guesses, and which sometimes cause adverse effects. If there's going to be a second edition of this book, please include advice on such matters.

So, all in all, good for students or people new to sockets, but not quite great. It tells you the basic techniques, but not how to use them to best advantage. Having said that, I prefer this book to C# Network Programming which rambles, uses language that is ambiguous in places, and contains a significant error (if being very generous, it could be very lazy English causing an unintended meaning) on the very page I opened it on.

It's probably best for people who already know sockets really well, but who are switching from one language to another (e.g. C++ or Java to C#). Those people probably know what model and options to use, just need to see how to do it in C# - something the book does do well.
(Review Data Last Updated: 2008-11-30 05:27:35 EST)
09-06-07 5 (NA)
(Hide Review...)  Very Practical, Well Written, and Instructive Book
Reviewer Permalink
This is a no-nonsense HOWTO book that will help .NET (C# in this case) programmers write simple networking code. The authors did not intend this book to be a single-source, tell all book. The authors intended the book to supplement other books that are more in-depth. Hence, this is a book intended to get you writing networking code quickly in a simple laboratory environment. The book will take you to the level where you may be able to run Ethereal (www.ethereal.com) and sniff network packets. However, that is not what the book is for. If you are looking for a book with low-level detail such as how the IP packets are constructed etc. consider purchasing a classic text such as Douglas E. Comer's (no relation) "Internetworking with TCP/IP, Vol 1.", Richard Stevens "The Protocols (TCP/IP Illustrated, Vol 1.)", or Fred Eady's, "Networking and Internetworking with Microcontrollers", or other depending on your level of interest.
I typically list the contents of a book in a review.

However, since Amazon.com has the look inside feature on this book I will skip that part. I will say, however, that the authors do a good job in presenting a short discussion of each concept, illustrate the required principles with working code, and briefly document the highlights of the classes and methods used in the code with extra information. I found this to be a very good book.
(Review Data Last Updated: 2007-09-07 19:14:21 EST)
09-05-07 4 (NA)
(Hide Review...)  Pretty good but...
Reviewer Permalink
This book is a good intermediate to somewhat advanced book on TCP and UDP protocols using Sockets in .Net - all examples of-course as the title suggests are in C#. It does show some interesting examples and was able to get me started using Sockets in .Net - however it didn't go as far as I had hoped. But if you're needing something to show you how to start using Sockets it is a very good book.
(Review Data Last Updated: 2008-02-20 02:37:56 EST)
05-09-07 4 0\1
(Hide Review...)  Simple and practical
Reviewer Permalink
I think this book is very good because es simple, explain clearly and go directly to the matter.



Juan Ramon Divison
(Review Data Last Updated: 2007-09-05 21:37:28 EST)
01-03-07 5 1\2
(Hide Review...)  To the point.
Reviewer Permalink
Did you ever just want a book get to the point and tell you what you need to know? This is that book. If your new to winsock, this book will get you rolling quickly.
(Review Data Last Updated: 2007-07-08 16:49:53 EST)
09-03-06 5 2\2
(Hide Review...)  Good book
Reviewer Permalink
I've read through the first couple of chapters and I must say this is a good book. The thing I like most about this book is that the authors take time to not only give you working code but explain what the heck blocks within the programs do. If you are a novice programmer you may want to pick up a different book because it does assume you have a good understanding of basic C# programming.
(Review Data Last Updated: 2007-07-08 16:49:53 EST)
12-08-05 4 4\4
(Hide Review...)  A good practical manual
Reviewer Permalink
This book teaches TCP Socket programming using C# in a very efficient step-by-step manner.
Unlike many other books on .NET that I have, this one does not just give you code samples and leave you to scratch your head trying to figure out what's going on there. Instead, it analyzes all code samples line-by-line, leaving you virtually no questions to ask.

I gave this book 4 stars only because I was particularly interested in using multithreading with sockets for the project I'm working on, and this book's chapter on threading is surprisingly weak.

Other than that, it's a great manual to start with if you need to learn how to write socket apps in .NET.
(Review Data Last Updated: 2007-06-23 05:42:00 EST)
12-07-05 4 1\1
(Hide Review...)  A good practical manual
Reviewer Permalink
This book teaches TCP Socket programming using C# in a very efficient step-by-step manner.
Unlike many other books on .NET that I have, this one does not just give you code samples and leave you to scratch your head trying to figure out what's going on there. Instead, it analyzes all code samples line-by-line, leaving you virtually no questions to ask.

I gave this book 4 stars only because I was particularly interested in using multithreading with sockets for the project I'm working on, and this book's chapter on threading is surprisingly weak.

Other than that, it's a great manual to start with if you need to learn how to write socket apps in .NET.
(Review Data Last Updated: 2006-09-03 15:32:18 EST)
10-06-05 4 6\6
(Hide Review...)  many useful classes
Reviewer Permalink
C# comes with some classes that greatly alleviate a lot of low level issues in using TCP/IP sockets. You can contrast this book with the classic text by Comer and Stevens from the early 90s. The latter used a lot of grubby C code. But now in C#, you have such things as TcpListener to listen for incoming connections. Then, when a connection is established, you can improve performance with buffering by using BufferedStream.

And internationalisation is a reality nowadays. Thus, various Reader and Writer classes let you use different encodings in a simple manner. Goes far beyond being restricted to simple ASCII.
(Review Data Last Updated: 2007-07-08 16:49:53 EST)
09-05-05 4 6\6
(Hide Review...)  Size does not matter!
Reviewer Permalink
Only a 170 pages but right on target. I like books like this one who simply focus on what the title claims to deal with. This book deals with Socket Programming in C# in a pretty complete way. Instead of repeating the MSDN library information adn the online help of the .Net frameowrk, it covers very specific issues related to socket programming and shows how the C# and the .Net framework deal with them.

I would have given a 5 stars if the book included a complete application that demonstrates the concepts and design patterns discussed in the book.
(Review Data Last Updated: 2007-07-06 13:49:56 EST)
09-01-05 4 1\1
(Hide Review...)  Shrinked but effective
Reviewer Permalink
A little big book. I expected the book to be more expert-oriented (there are lot of books around talking about TCP that a beginner can read). In any case it targets expert audience too and has a good reference for TCP/IP stacks options.
I would have preferred to find more information on parsing techniques, framing/defaming etc (too few pages perhaps?) but definetly it is a good book.
(Review Data Last Updated: 2006-07-06 10:04:13 EST)
03-23-05 5 7\7
(Hide Review...)  Brilliant!
Reviewer Permalink
This book delivers a good understanding of sockets. I have read one or two other books regarding the subject. The thing I like about this one is A) the whole book is dedicated to it. B) Its explanations are probably the best I have read regarding any topic in programming. Remember first starting C++, and the first chapters of the book taught you how to add integers? You kind of sit there saying "Yeah, Yeah, get on with the hard stuff". As a total compliment: That is how this books makes you feel about sockets! The explanations and examples almost make it impossible to believe it is really that simple.
(Review Data Last Updated: 2006-07-06 10:04:13 EST)
02-18-05 5 10\10
(Hide Review...)  The Perfect Book With Perfect Examples
Reviewer Permalink
I loved this book!

I bought this book not knowing anything about sockets. All I knew was that I had to use them for my next project. I bought this book, and within 2 weeks time had developed a full-scale proof-of-concept, distributed, client-server type application communicating over TCP/IP and using UDP for multicasting.

The examples are concise and practical, including examples of data framing/parsing and how to deal with different wire formats (big/little endian).

This book is a must-have for any serious C# programmer.
(Review Data Last Updated: 2006-07-06 10:04:13 EST)
02-12-05 5 11\11
(Hide Review...)  Exactly what I was looking for
Reviewer Permalink
TCP/IP Sockets in C# delivers an incredible amount of knowledge considering it is only 175 pages! The authors spend the first chapter looking at TCP and UDP protocols, their differences and benefits. By chapter two you are already experimenting with sockets.

The authors go over the TcpClient/TcpListener classes, as well as the more low-level raw socket class. The book is extremely easy to read, and is moist with interesting examples. They also cover asynchronous I/O, handling multiple connections, retrieving EndPoint information about the connecting sockets (IP Address, host info, etc..). Then FINALLY in the middle of the book they did a marvelous job of explaining byte ordering, encoding, threading, etc...

I was happy to find that we are freely able to use the raw socket classes just as we did with the Winsock 2 API. I would definetly recommend this book to C# novices, and experts who want to learn about TCP/IP sockets. This book does not teach the C# language, however, even if you're not 100% sure about the C# language, the authors don't really use advanced programming techniques to confuse you. Face it, socket programming is one of the easiest things you'll ever do!! FIVE STARS!!!!
(Review Data Last Updated: 2006-07-06 10:04:13 EST)
  
                  Reader Reviews 1 - 15 of 15                 
  
  
  
  
  
  

Because the data used to generate this site come from outside sources, VeryWellSaid.com cannot guarantee the completeness or accuracy of the data.
Search VeryWellSaid™
Google
Web VeryWellSaid™
New subjects are added every week.
View Subjects Below by:
* Top Selling
 (click category name, left)
* Top-Rated Top Sellers
 (click 'Top Rated', right)
In the news...  
Dubai\UAE Top Rated
Influenza\Bird Flu Top Rated
Iraq Top Rated
Supreme Court Top Rated
All Books Top Rated
Arts Top Rated
Photography Top Rated
Digital Photography Top Rated
Digital Cameras Top Rated
Biography Top Rated
Business Top Rated
Management Top Rated
Marketing Top Rated
Sales Top Rated
Stocks Top Rated
Bonds Top Rated
Real Estate Top Rated
Trading Top Rated
Commodities Trading Top Rated
Time Management Top Rated
Starting A Business Top Rated
Children's Top Rated
Comics Top Rated
Computers Top Rated
PC Top Rated
Mac Top Rated
Programming Top Rated
Design Patterns Top Rated
.Net Top Rated
C# Top Rated
Vb.Net Top Rated
Asp.Net Top Rated
Java Top Rated
Python Top Rated
PHP Top Rated
Perl Top Rated
Javascript Top Rated
Ajax Top Rated
CSS Top Rated
Open Source Top Rated
SQL Top Rated
Databases Top Rated
Oracle Top Rated
MySql Top Rated
Sql Server Top Rated
IIS Top Rated
Apache Top Rated
Linux Top Rated
Windows Server Top Rated
Project Management Top Rated
HTML Top Rated
UML Top Rated
IT Certifications Top Rated
Cisco Certifications Top Rated
MCSE Top Rated
MCSD Top Rated
Cooking Top Rated
Italian Cooking Top Rated
Vegetarian Cooking Top Rated
Wine Top Rated
Engineering Top Rated
Entertainment Top Rated
Health Top Rated
Nutrition Top Rated
Dieting Top Rated
Sex Top Rated
History Top Rated
Military History Top Rated
British History Top Rated
Middle East History Top Rated
Land Battles Top Rated
Naval Warfare Top Rated
Air Warfare Top Rated
9/11 Top Rated
Terrorism Top Rated
Home Top Rated
Mortgage\Home Equity Loan Top Rated
Cars Top Rated
Car Buying Top Rated
Sports Cars Top Rated
Cat Top Rated
Humor Top Rated
Horror Top Rated
Law Top Rated
IP Law Top Rated
Legal History Top Rated
Fiction Top Rated
Oprah's Book Club Top Rated
Medicine Top Rated
Cancer Top Rated
Stroke Top Rated
Heart Disease Top Rated
Fertility Top Rated
Diabetes Top Rated
Pharmacology Top Rated
Back Problems Top Rated
Menopause Top Rated
Thyroid Top Rated
Pain Top Rated
Organic Chemistry Top Rated
Immune System Top Rated
Mystery Top Rated
Nonfiction Top Rated
Outdoors Top Rated
Running Top Rated
Radio Control Models Top Rated
Guns Top Rated
Parenting Top Rated
Divorce Top Rated
Professional Top Rated
Reference Top Rated
Religion Top Rated
Romance Top Rated
Science Top Rated
Physics Top Rated
Chemistry Top Rated
Astronomy Top Rated
Psychology Top Rated
Science Fiction Top Rated
Sports Top Rated
Teens Top Rated
Travel Top Rated
USA Top Rated
Europe Top Rated
France Top Rated
Italy Top Rated
England Top Rated
China Top Rated
All Books Arts Biography Click Here For An A-Z Index Of All 213 Best-Seller Subjects Business Children's Comics
Computers Cooking Engineering Entertainment Health History Home Horror Humor Law Fiction Medicine Mystery
Nonfiction Outdoors Parenting Professional Reference Religion Romance Science Sci-Fi Sports Teens Travel
In Association with Amazon.com

Cache miss
(not cached)