Hudson Valley Sudbury School

            Shopping Cart  Cart  |  Help
AllBooksVideoDVDMusicVideo GamesGames and ToysElectronicsSoftwareComputersToolsKitchenApparel

Programming C#
by Jesse Liberty
Publisher: O'Reilly
List Price: $44.95
Price: $29.67
You Save: $15.28 (33.99%)
Availability: Usually ships in 24 hours
Edition: Paperback
50 used & new from: $26.63
Ready to Buy?
Price: $29.67
Availability: Usually ships in 24 hours
33 New from $26.63
14 Used from $26.63
3 Collectible from $43.60
Customers who bought this also bought:
1. Programming ASP.NET by Jesse Liberty, Dan Hurwitz
2. Programming .NET Components by Juval Lowy
3. Windows Forms Programming in C# by Chris Sells
4. Learning C# by Jesse Liberty
5. C # in a Nutshell, Second Edition by Peter Drayton, Ben Albahari, Ted Neward
Editorial Reviews:
Jesse Liberty's Programming C# provides an adept and extremely well conceived guide to the C# language and is written for the developer with some previous C++, Java, and/or Visual Basic experience.

It's no secret that many computer books are pretty much devoid of an authorial personality. This title is a winning exception. The author is able to weave in clever examples (using such topics as his own long experience in computing, his dog, Star Trek, etc.) without being coy or getting in the way of presenting real technical information. Liberty's wide experience in computers and general writing skill shows, as he is able to draw on a wealth of examples to move his text forward.

These are a couple of goals at work in Programming C#. First, it's an excellent language tutorial, certainly one of the smartest and best available guides to C# as a language. Early chapters explore basic and obscure language options using inheritance, delegation, interface, and the conventions in C# used to implement these techniques. The middle part of the book turns toward the .NET Framework itself, with two useful (and somewhat introductory) chapters on both Windows Forms and Web Forms, for standalone and Web-based applications, respectively.

Later sections crank up the technical knowledge again with several advanced topics on understanding .NET assemblies and deployment in detail, as well as "reflection" APIs that allow .NET programs to essentially modify their code at run time. (One technique, reflection emit, which literally writes bytecodes, will definitely interest expert readers, though it's unlikely most programmers will need to do this.) Final sections look at the .NET stream classes (rivaled only by Java's for complexity). Liberty looks at basic file and network I/O as well as how objects get serialized and marshaled both for SOAP and Web services and "normal" .NET remoting.

The author's sure hand here in navigating the difficult waters of C# and .NET makes for a relatively concise text that is chock-full of useful information on C#. Filled with notably clever and inventive examples, this book is possibly this veteran computer author's best title to date, and it's sure to be a noteworthy resource as experienced developers tackle C# for the first time. --Richard Dragan

Topics covered:

  • Introduction to C# and the .NET platform
  • A "Hello World" example in C#
  • Tutorial to C# as an object-oriented programming language (types and variables, operators, namespaces, and preprocessor directives)
  • Defining classes in C# (including static members, finalizers, overloading, and read-only fields)
  • Inheritance and polymorphism implemented in C#
  • Operator overloading
  • Structures in C#, interfaces, arrays, and indexers
  • Built-in .NET collections, strings, and regular expression support
  • Structured exception handling
  • Delegate and events
  • Introduction to programming with Windows Forms
  • ADO.NET database APIs (including basic XML support)
  • Quick introduction to Web Forms and ASP.NET used with C#
  • Introduction to Web services (SOAP, WSDL, and Discover services described)
  • In-depth guide to .NET assemblies (including metadata, versioning, private and shared assemblies)
  • C# support for attributes and reflection (including reflection emit techniques)
  • Marshaling and remoting (with and without SOAP)
  • Threads and synchronization
  • Tutorial to C#/.NET streams (including basic I/O techniques, Web streams, and serialization)
  • COM and .NET interoperability

Book Description
The programming language C# was built with the future of application development in mind. Pursuing that vision, C#'s designers succeeded in creating a safe, simple, component-based, high-performance language that works effectively with Microsoft's .NET Framework. Now the favored language among those programming for the Microsoft platform, C# continues to grow in popularity as more developers discover its strength and flexibility. And, from the start, C# developers have relied on Programming C# both as an introduction to the language and a means of further building their skills.

The fourth edition of Programming C#--the top-selling C# book on the market--has been updated to the C# ISO standard as well as changes to Microsoft's implementation of the language. It also provides notes and warnings on C# 1.1 and C# 2.0.

Aimed at experienced programmers and web developers, Programming C#, 4th Edition doesn't waste too much time on the basics. Rather, it focuses on the features and programming patterns that are new to C# language. Some of these new features covered in-depth include:

  • Visual Studio 2005
  • Generics
  • Collection interfaces and iterators
  • Anonymous methods
  • New ADO.NET data controls
  • Fundamentals of Object Oriented Programming
Author Jesse Liberty, an acclaimed web programming expert and entrepreneur, teaches C# in a way that experienced programmers will appreciate by grounding its applications firmly in the context of Microsoft's .NET platform and the development of desktop and Internet applications.

Liberty also incorporates reader suggestions from previous editions to help create the most consumer-friendly guide possible.

Product Details
  • Paperback: 672 pages
  • Publisher: O'Reilly; edition (Feb 22, 2023)
  • ISBN: 0596006993
  • Average Customer Review: 4.0 Based on 172 reviews.
  • Sales Rank: 1454

Customer Reviews

1 of 1 people found the following review helpful:

5Well written and laid out, Aug 4, 2023
For someone who is well versed in programming microcontrollers in C, but brand new to .NET and to C#, it seems like you've walked into an alternate universe where legions of previously common terms like "framework" and "method" and "sealed" suddenly have special meaning. It really takes a while to wrap your brain around it all, but Liberty has done a good job of minimizing the pain involved.

The layout of the book is good--start with the basics you need and move through examples to get you up and going. At the end there are some more conceptual subjects, but by then you know how to write some applications. I particularly like the way Liberty breaks up information into chunks--short paragraphs and regular asides/tips that help clarify the subject. Liberty does not try to impress you with his vast knowledge, but just tells you what you need to know.

While this is not a given with books on programming, I think I can say got my money's worth with this one.

0 of 0 people found the following review helpful:

3Suggestion to Author for next book, Aug 3, 2023
Overall, book is pretty darn good.

The problem I have with the book is the author's choice of example code. At times, instead of selecting "objects", he chooses abstract concepts such as "Compressible". For instance, in chapter 8, which covers interfaces, why not choose the traditional automobile interface. Something surely all of us can quickly grasp, so that we can focus on the C# concepts, rather than what a "compressible" is? Object "A" is a "Compressible", what???, what the heck is a Compressible..... This made it a bit difficult to follow many of the code examples, and subsequently I found myself glossing over the examples, moving on to the next pages in hopes of something more interesting.

As a side note: My favorite computer book of all time is "Win32 System Services" by Marshall Brain. The examples in the book get right to the point, making it very easy to read. This is my benchmark I gauge all other books by.

Other than that minor complaint, the book is a valuable resource that I intend to keep, and add to my repertoire of books.

1 of 1 people found the following review helpful:

5Really a great book for learning the language., Jul 28, 2023
When I started learning C# (and I'm still learning), I purchased a number of books. Though each book contributes a little something extra, this book is my primary reference. The first half of the book covers the fundamentals of the language. If you have absolutely no prior programming experience, I'd recommend the other book from this series "Learning C#". Still, this book is thorough in its explanations. The second half of the book covers the use of C# for Windows and Web applications (and more). I yet haven't devoted much time to this section, but I expect more of the same great instruction. I HIGHLY recommend this book.

5 of 6 people found the following review helpful:

2This 4th edition is much worse, Jul 23, 2023
If you are going to buy this book, stick with earlier editions. Earlier editions of the book included interesting in-depth discussions of Reflection. In fact, many links on the web discussing reflection or dynamic invokation reference this book's earlier edition. The new edition of the book, however, skips any in-depth discussion of .NET's underlying technology. If you are already programming in C#, you will get very little from this book. It may cover newer material, yet the newer material isn't difficult to master in the first place, so it provides little value.

1 of 1 people found the following review helpful:

4Detailed C# book, Jul 20, 2023
The book is divided into three parts - introduction and presentation of C#, C# programming techniques, and description of .NET framework and runtime environment.

First part starts with the history and motivation behind .NET and in particular C# programming language particular. And, as in most programming books the author presents a typical C# "Hello World" application, followed by discussion about such concepts as classes, methods, attributes, namespaces, that helps the reader to learn or refresh object oriented programming and language syntax. The details are provided about compilation and running "Hello World" application, instructions are sufficient enough for the beginner to launch the app and even debug through it.

Fundamentals of the C# language are presented in the next chapter, this includes types, statements, enumerations, operators, processor directives. After that the author gives a detailed description of C# classes - their declaration, initialization, constructors and destructors, overloading, encapsulation, and accessors - essentially the basic object oriented concepts, followed by inheritance and polymorphism - the section that also includes abstract and sealed classes, boxing and unboxing. Next paragraphs are about overloading, structs and interfaces. I think it would be logical to have the Interfaces mentioned earlier in a special chapter focused on general object oriented C#, instead of dedicating a separate chapter to it. Next is Arrays, Indexers and Collection - a long and very detailed chapter that explains the usage and handling of these structures. Strings, Exceptions, Delegates and Events are each very important and used by every C# programmer, and author dedicated each of them a separate chapter, thus closing the first part of the book.

Part 2 actually helps to apply the knowledge of the language to build applications, using Visual Studio as a development tool. We learn about Forms - basic user interface components, creating and coding controls. ADO.NET and data access are also described based on SQL databases. ASP.NET and web services are described in the next chapter, here we learn how to use visual and data access controls to create a web application. Steps to create an web services application are presented in good details.

The last part of the book is about .NET framework and runtime environment. It starts with a chapter about marshalling and remoting, that focuses on application contexts and boundaries, marshalling (transporting) objects across application domain boundaries, marshalling with proxies. An example to build a server and a client. Next chapter is threads and synchronization. The author assumes that the reader is already familiar with multithreading and focuses on how threads work in C#, we particularly learn about creating, running, killing threads and applying locks and monitors to synchronize them. Race conditions and deadlocks are mentioned at the end of the chapter.

The streams chapter is essentially about input output and is dedicated to reading and writing data from/to files and sockets. The last chapter is about integrating .NET with COM and ActiveX. Although the subject deserves a separate book, the author provides a detailed example how an ActiveX control can be imported into Visual Studio .NET project.

Overall the book gives a good detailed introduction to C# as a language and teaches how to use it in practice to build either desktop or web based application accessing database. Author illustrates material by screenshots and code examples, that helps the reader to easily create his or her own program. I think, given compact size of the book, author managed to put together all necessary details about C# as a programming language, .NET framework and their essential programming techniques. The book is a good reference material for someone already familiar with basics object oriented programming, multithreading, input output and looking to learn C# basics or make transition from Java to C#. As a developer who programmed with different languages I found the book to be a useful C# syntax reference source.


Look for similar items by category in Books

Copyright © 2004 Hudson Valley Sudbury School