Programming C# 3.0, Fifth Edition

Best-Selling Guide to Building Windows and Web Applications with C# 3.0

By Jesse Liberty, Donald Xie
December 2007
Pages: 607
ISBN 10: 0-596-52743-8 | ISBN 13: 9780596527433
starstarstarstarstar (3) (Average of 5 Customer Reviews)

Buy 2 Get 1 Free Free ShippingGuarantee

Description

This thoroughly updated tutorial for beginning to intermediate programmers covers C# 3.0 and the newest .NET platform for developing Windows and web applications. Now in its fifth edition, our bestselling Programming C# 3.0 teaches the essentials of the C# and the .NET Framework Class Libraries, and explains how to use these tools to create applications for Windows, as well as for the Web.
Full Description

Written by popular author and .NET expert Jesse Liberty, this thoroughly updated tutorial for beginning to intermediate programmers covers the latest release of Microsoft's popular C# language (C# 3.0) and the newest .NET platform for developing Windows and web applications.

Our bestselling Programming C# 3.0, now in its fifth edition, is a world-class tutorial that goes well beyond the documentation otherwise available. Liberty doesn't just teach C#; he tells the complete story of the C# language and how it integrates with all of .NET programming, so that you can get started creating professional quality web and Windows applications.

This book:

  • Provides a comprehensive tutorial in C# and .NET programming that also serves as a useful reference you'll want by your side while you're working
  • Covers all of the new features of the language, thoroughly integrated into every chapter, rather than tacked on at the end
  • Provides insight into best practices and insight into real world programming by a professional programmer who worked with C# as an independent contractor for nearly a decade before joining Microsoft as a Senior Program Manager
  • Every chapter in this book has been totally revised, and the entire book has been reorganized to respond to the significant changes in the language
  • Full coverage, from the ground up of LINQ (Language Integrated Query) and other C# 3.0 language innovations to speed up development tasks
  • Explains how to use C# in creating Web Applications as well as Windows Applications, using both the new Windows Presentation Foundation (WPF) and the older WinForms technology


This new edition of Programming C# 3.0 is for working programmers who want to develop proficiency in Microsoft's most important language. No prior .NET experience is required for you to get started. There's no time like the present to work with C# -- and no book like this one to teach you everything you need to know.

Special note to VB6 and Java programmers: if you've decided to transition to .NET, this book will take you there.



Featured customer reviews

Write a Review


Excellent,  May 25 2009
Rating: StarStarStarStarStar
Submitted by jdruin   [Respond | View]

As a professional programmer, I found this reference to be excellent. In particular, the author points out in various places the relationship between code written in C# and in other .NET languages. This was useful since we have .NET code written over a few years which may or may not already be in C#. Having a "translation" state what was similar helped when we re-wrote some VB.NET code into C#. Also, even if you stick with another .NET language, any tricks or tips from this book should be possible to write in the other languages (it all compiles to roughly the same object code anyway). For programmers who are already programming in .NET, this book is great because it gets right into programming practical applications. For those new to programming, the book may seem complicated but the C# language itself is complicated if you do not have a strong computer science foundation. Still there are many examples in the book and the examples can be downloaded on-line as well.


Is Good If You Have A Bit Of Knowledge In Other Languages, But Definitely Not For Beginners.,  April 19 2009
Rating: StarStarStarStarStar
Submitted by Andrés (Vermillion)   [Respond | View]

I bought this book last October, but I didn't have the time to read it until two months ago. I started reading it, and since I have knowledge in C# and C++, I found this book very easy to read, but while I was on that, I saw the concepts that were impossible for me to understand back when I was learning C++.

It seems that authors many times make the mistake of assuming that readers know some basic concepts about the book, but that's not really the case. I have been reading programming books for over 2 years now, and they always make the same mistake: They assume we have an idea of what a concept is, but in reality, we have no idea what they are talking about.

In this book, it was not my case, because I had to pick the concepts when I was learning C++, but I was able to detect what tends to kill beginners when they are learning a new programming language. And those mistakes are not good; not only they induce the reader to read the book in a "jumping" motion, but at the end, the readers, specially the beginner, has to use external resources to understand the book completely. Not all the basics are always covered in a beginners book, or at least they do not appear where they should appear.

When I say that the book induces the beginner to read the book in a "jumping", I mean the book says things like:



At first, that doesn't look like a problem at first. It becomes a problem when the Arrays are mentioned over and over again in that section, saying what the class can do with arrays and how. Without knowing what an array is, you can't understand what that part is saying, so you "jump" to chapter X of the book to read about Arrays. You read about it, find other weird terms you can't understand at first, so you keep jumping through some chapters, until you can finally jump back to the chapter you were reading. Reading like this is a problem. It is confusing, and beginners will find it difficult. I know I would if I still was one.
A quick fix to this problem would be to give a basic explanation of the array (in this example, that is. This is just an example, the book doesn't do this with arrays, but it does with collections, indexers, interfaces, and others), and after the explanation of what an array is, just say that more details about them will be found in Chapter X. In that way the beginner reader will know what an array is, will be able to work with them, and understand what that section is about.

Never the less, this book does an awesome job setting a hard base on the reader, specially when the reader is question is NOT a beginner. I now know C# thanks to this book, and I didn't have to do much (though, like always, I had to look for external resources to fully understand everything the book was saying). It has a deep coverage on LINQ, which is essential when dealing with Databases with C#.

It has a lot of examples as well. The best way to learn by example, and Jesse Liberty did exactly that. He puts code, and then he explains the code in a clear manner. I can't remember examples that required "jumping" reader, so that is definitely a plus. It also does explain the concepts very well. While you have to jump to other sections to read them, at least the concepts are very well covered.

I recommend this book to people who have a deep understanding on C++ at least, rather than to beginners. It reminded me about what I found hard when I was learning C++, and if it wasn't because my knowledge with C++, this book would have been the same case. If you' have knowledge on C++ (or even better, Java), then you will be able to pick this book without too much problem.


Good, but not great,  October 05 2008
Rating: StarStarStarStarStar
Submitted by Anonymous Reader   [Respond | View]

As a PHP developer I was interested in learning something new and C# draw my attention. I already had some Java experience and am familiar with object oriented programming.

The book starts off with the basics of programming, but goes through them really fast. If you are totally new to programming, I wouldn't recommend this book because in that case some of the basics of programming need more coverage as is given in this book. Altho, for me personally this wasn't a problem. I rather found it a pro instead of a con.

The book has alot of code snippets in it which is great. In my opinion it is a great way to learn by example and have the examples explained. When you try to build something yourself, you can grab pieces of the code snippets as an example of how it should be done.

The book covered the different subjects on a great pace. Not too over simplified but not too fast or too difficult either. You just have to take the time to read it, try it and get the feeling of how it should be done.

One drawback on the book is the coverage on LINQ. The book discusses it, but for more indepth information about LINQ I had to find internet articles. On the other hand you can't expect everything from one book of course. But it went through some subjects really fast. If I wasn't very familiar with MySQL already I would have been lost.

Overall I liked the book and am now able to use C#. Not to the level I want myself to be, but that will come in time.



Read all reviews


Not very Bad,  May 02 2008
Rating: StarStarStarStarStar
Submitted by A beginner programmer   [Respond | View]

This book is not very bad. I bought it specificially because I studied the book of J. Liberty: Learning C++ in 24 Hours.. Though it was very simple, it has helped me to study C++ again from more sophisticated book of Deitel..Before I study Liberty book first, I faced a big difficulty to begin studying C++ and it looked very sophisticated to me..

C# is more sophisticated than C# where it is branched and has more code and wider various applications..it would be very hard to me to begin studying it from a sophisticated book from the first time.. I will begin from this book then I will transfer to more detailed book..


Poor explanaition,  March 14 2008
Rating: StarStarStarStarStar
Submitted by Anonymous Reader   [Respond | View]

I bought this book by reviewing the first few chapters and first thought it is a good book, but after getting into the later chapters realized it’s a very poor written book. The write overdo explanation of the easy-to-understand material by when he got to the more difficult topics, he simply left them to the mercy of an example! Without any elaboration. I would not recommend this book to anybody. It simple one of the worst programming books I have read.


See larger cover