Rating:  Summary: An especially excellent reference source Review: Clearly and accessibly written by Jesse Liberty (President of Liberty Associates, Inc. which provides .NET training, contract programming, and consulting services), Learning C# is a straightforward and "reader friendly" instructional guide to the fundamentals of C# and .NET programming. Individual chapters address the basics of object-oriented programming, essentials of the C# language, and the basic concepts that any C# programmer needs to understand such as inheritance and polymorphism, overloading operators, throwing and catching exceptions, looping and branching, string objects, debugging, and other such integral building blocks of solid programming. Learning C# is an especially excellent reference source, particularly for programmers new to C# language.
Rating:  Summary: clear but wordy = for programming novices Review: Focuses on basic language syntax in a very slow, very wordy way. Those fairly new to programming will appreciate this, such as the guy in accounting who has written some Office macros, the web designer who writes simple javascript blocks, or the QA tester who aims to become a QA engineer or developer. The back cover description is misleading because it mentions being for "experienced programmers who are new to object-oriented programming," whatever that means. Any truly experienced programmer, coming from VB6 or C or Fortran etc, will be skimming and skipping A LOT to get over the many paragraphs of hand-holding.I can only see this book being really valuable for novices, and those "experienced programmers" who have only been doing scripting in the past. Note that there are *much* better books for going from VB6 to C#. And despite the subtitle, there is very little coverage of object-oriented programming in this book. The basics are scratched for about 4 pages of chapter 3 -- but this is of little value, especially since classes are not introduced until chapter 8.
Rating:  Summary: clear but wordy = for programming novices Review: Focuses on basic language syntax in a very slow, very wordy way. Those fairly new to programming will appreciate this, such as the guy in accounting who has written some Office macros, the web designer who writes simple javascript blocks, or the QA tester who aims to become a QA engineer or developer. The back cover description is misleading because it mentions being for "experienced programmers who are new to object-oriented programming," whatever that means. Any truly experienced programmer, coming from VB6 or C or Fortran etc, will be skimming and skipping A LOT to get over the many paragraphs of hand-holding. I can only see this book being really valuable for novices, and those "experienced programmers" who have only been doing scripting in the past. Note that there are *much* better books for going from VB6 to C#. And despite the subtitle, there is very little coverage of object-oriented programming in this book. The basics are scratched for about 4 pages of chapter 3 -- but this is of little value, especially since classes are not introduced until chapter 8.
Rating:  Summary: Very well-written book! Review: I am most impressed with the examples in this book. The author clearly has a knack of weeding out irrelevancies that might cloud the issue. His examples deliver the main point of the subject matter quite adeptly. I would recommend this book to anyone who wants to learn C#. As a side note though, this book is not for readers who want to learn the advanced features of C#.
Rating:  Summary: Author support is amazing! Review: I cruised through the first seven chapters, but I got bogged down in the eighth. So I went to the author's Delphi forum and posted a couple of questions. Received four answers promptly, two by JL himself. And he even apologized (!) for being less than perfect. Yeah, the book is intelligent, well organized, entertaining, blah blah...but who cares? With this kind of support from the author, you are just about guaranteed success.
Rating:  Summary: Helpful for syntax, lacking for the rest Review: I found this book to be good for syntax, I would guess, because other books I have viewed don't cover as many areas of C# as this book does. However, I have found this book hard to follow. I am a true novice programmer. I have never programmed anything other than my remote control! I've had to re-read certain chapters many times to understand. I am one of those beginners that needs hand-holding.
Liberty doesn't explain the flow of the programs very well. Without Visual Studio's debugger, I would have a hard time understanding program flow in the later chapters.
The examples he uses in this book couldn't be used in real-world applications, unless you are planning to write a program that only prints to the screen. All of the examples in this book use the Console.WriteLine method except for one. None of the examples use the Console.ReadLine or any other input methods. I'm sure most people writing programs would like to be able to handle user input.
This book could be a good source for references not covered in other books, but it is too incomplete to say it is the best book for beginners.
Rating:  Summary: Good starting point Review: I just finished reading this book and I think it is a good starting point for learning the language. Some of the other reviews say "it didn't cover this" and "it didn't cover that", but I think the book accomplishes the task. It teaches a beginner the basics of the language. It's not going to teach everything about programming in C#, it just starts you on the path. I thought it was very readable and the author explains concepts very well. This book was so interesting that I want to learn more about the language. The next book I read will definitely be "Programming C#" by the same author. If you are a seasoned programmer and want to learn advanced topics, this is not the book for you. If you are new to programming and want a good start, I highly recommend this book.
Rating:  Summary: Not Bad - but not "Learning Perl," either.... Review: I loved Learning Perl. I hoped that another "Learning..." book by this great publisher would be similiar.
It is, in some respects. It's well written, easy to read and it has proven a useful tool.
However, I can only give it three stars because it lacks exercises at the end of each chapter. I loved that feature in "Learning Perl" and miss it dearly.
Perhaps O'Reilly is moving away from this technique, a shame if that's the case.
As it stands, I'll end up buying another book (MS's Step by Step) to give me some practice exercises.
Rating:  Summary: Good book for novice or VB developers but could be better Review: I would never recommend just 1 book to learn a new language or to study for a certification exam. As a matter of fact, I would recommend several books and C# is no exception. C# is a new programming language and it will take several books to be proficient with it. When you use several authors from different publishers, you get a better understanding of that subject. Jesse Liberty's book "Learning C#" is a good primer for the novice developer or to a person who knows a little bit about Visual Basic 6.0. For a more experienced developer I would recommend several other books such as Jesse Liberty's "Programming C#". Pros: There are ample examples in every chapter to demonstrate the principles the author is trying to convey. The important changes are highlighted in bold. This makes for easy reading. Jesse Liberty tries to cover all of the basics and then some. This book was published after the initial release of Visual Studio.Net, so you do not get the errata associated books that were published during the beta. Cons: The readers of this book (Learning C#) will find that it is not a good book if you want to learn how to program C# for Windows or Web applicatons. Approximately 90% of this book covers "console" applications. Jesse tries to explain that the fundamentals of C# are best learned if the user does not have the extra baggage that Windows or Web development have but I have to question how much "real-world" development is done using console mode. The author skims over the Integrated Development Environment (IDE) and the very first application is actually created using Notepad. The basics of the IDE are covered in Chapter 4. In Chapter 10, the author uses the IDE to demonstrate debugging. Some of the screen shots (which are in Chapters 4, 10, 12, and 16) of the IDE are hard to read. Not impossible to read, just hard to read. They have been reduced down in size to the point that someone without perfect vision will have a hard time reviewing these screen prints. In chapter 3 (Object-Oriented Programming), the author states that the 3 pillars of OOP are encapsulation, specialization, and polymorphism. The other books that I have read call these encapsulation, inheritance, and polymorphism respectively. In chapter 11, the author does some back-tracking and substitutes inheritance for specialization. Overall this is book is good but it could be better. I would also recommend several other books including Robert Orberg's "Introduction to C# using .Net" and Klaus Michelsen's "C# Primer Plus". With all three books, you will get a solid foundation for C# and then you could go on to the more advanced C# books.
Rating:  Summary: Very Basic Introduction Review: Jesse Liberty has written an excellent introduction to C# entitled, "Programming C#". That book required some background in an object oriented language such as Java or C++ to get the most out of it. This book is geared for the less experienced developer. "Learning C#" covers basically the first half of "Programming C#" in about 50% more pages. A person without a background in OO will find this book much easier to follow. The book covers the language a little slower, gives more hand holding, and even gives an introduction to Visual Studio. Of course, none of the advanced topics in "Programming C#" (ASP.NET, ADO.NET, Web Services, etc.) are found in this book. The author has a nice style of writing that makes the topics easy to follow. His examples are clear and there are plenty of them. All the basic C# topics are covered including control structures, enums, structs, delegates, operator overloading, polymorphism, interfaces, and collections. The topics covered demonstrate the main features of OO languages without being overwhelming. However, the book is not a complete introduction to C#. Some topics are left out (I/O for example). But overall, the book is a good introduction for the novice object-oriented programmer. If you already have some OO experience then you will probably want to get "Programming C#". If object oriented programming (or just programming in general) is new to you then this would be a good place to start.
|