Readers of this book will learn how to develop Windows Forms (WinForms) applications using C#. The first section of the book starts with Visual Studio 2012, an integrated development environment (IDE) for creating such applications. Readers will not only become familiar with this tool, but will also learn how to build and execute projects using it. The second section takes an in-depth look at the C# language, covering a broad range of topics that include syntax, data types, and event and exception handling. This is followed by a section on object orientation that includes fundamental concepts such as class, inheritance, and polymorphism, with a chapter on generic programming. Section 4 looks at connecting an application to its data stored in a relational database such as Microsoft’s SQL Server. The authors describe relational databases and ways to use ADO.NET to create and manipulate such databases. Section 5 discusses the use of alternative sources of data, such as text, binary, and Extensible Markup Language (XML) files. The final section closes the book with an amalgam of topics on single versus multiple document interfaces, different ways of deploying WinForms applications, and developing apps for the Windows 8 platform using Extensible Application Markup Language (XAML).
The authors follow a systematic approach, illustrating each topic with examples. Readability is improved through the use of a “paired pages” format, where a topic is explained on the left page and illustrated with examples on the right page. End-of-chapter exercises build on these examples. In working through these exercises, a reader ends up putting together more than a dozen complete applications. The authors provide a website where readers can download the examples, exercises, and their solutions.
The book is an excellent read for those who are familiar with C#-like languages such as Java and C++. Such readers will quickly grasp the nuts and bolts of developing WinForms-based applications using C#. It can also be a good resource for instructors who conduct training workshops on this subject. Those less familiar with C#-like languages will need to spend more time with the example code snippets and the exercises based on these examples. Since the book does not go into extreme depth on some topics, readers may need to consult other sources to gain a good understanding of certain aspects related to object-oriented and database programming. The book also assumes a certain familiarity with computer science fundamentals related to programming and databases. As such, this book is not meant for complete novices in the field. It is also not meant for experts looking for an advanced treatment of C#-related topics.
More reviews about this item: Amazon, B&N, Dr. Dobb’s