Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Murach’s C# 2015 (6th ed.)
Boehm A., Murach J., Mike Murach & Associates, Inc., Fresno, CA, 2016. 908 pp. Type: Book (978-1-890774-94-3)
Date Reviewed: Apr 20 2016

Despite the increasing prevalence of browser-based apps (and their advantages in running more or less identically on most platforms), Windows desktop applications remain the bread-and-butter development task for many programmers. The advantages of running programs from compiled code and on local hardware are very important. That Microsoft has provided a good development environment in Visual Studio, and a solid collection of support libraries (in .NET), is an added plus.

This book covers the basics of C#, .NET, and Visual Studio (VS). Given the size and complexity of these, the book is necessarily large and its coverage still only partial.

The book consists of 26 chapters in six major sections and includes an introduction to C#, a fairly practical introduction to .NET and Windows Forms, and quite a bit of coverage of VS (enough to make a beginning programmer more or less productive quickly).

The major sections include:

  • An introduction to Visual Studio, which provides some very basic programming and an introduction to Windows forms.
  • The C# language essentials: basics of the language, basic data types, some coverage of Windows forms, and some coverage of VS debugging.
  • Object-oriented programming, including what a class is, what inheritance does, and how to work with interfaces and generics.
  • Database programming: client server systems, relational databases, and the VS interfaces to them.
  • More skills for working with data: files and streams, Extensible Markup Language (XML), and LINQ.
  • Enhancement and deployment: making the user interface better and how to deploy an application.

Most of the book is organized so that pages on the left cover a given topic and the corresponding pages on the right have examples or further information. In some places, the right pages are devoted to Visual Studio screenshots. Most chapters include exercises that extend code presented in the chapter. (The code is available online along with answers to exercises.)

An important question is who would benefit most from this book. Experienced programmers who’ve used a C-based language (as C# certainly is) will not need much of the language basics, so the level of detail is probably good for them. On the other hand, inexperienced programmers are likely to need more information than is provided in most sections. Similarly, most integrated development environments (IDEs) look more or less the same and provide much of the same facilities as VS, so long discussions of VS generalities are not likely to be helpful for the knowledgeable. For new users, the coverage may be helpful, but this is not a reference work for any of the technologies covered, and questions and difficulties that arise while using the book are unlikely to be answered. Three more books in the series are recommended for those who wish to go further.

Compare the 20 or so pages consisting mostly of screenshots that cover interfacing with a database with the six pages provided for C# loops, or the two pages discussing numeric conversions. This coverage seems a bit unbalanced. LINQ (an embedded mini-language in C# that can be used to iterate over collections) is also discussed more extensively but without extensive comparisons to the raw loop code that could accomplish the same thing. The distinction between the prefix and postfix “++” operator is mentioned but not described in an example (an interesting editorial choice, as many interesting and difficult-to-find errors lurk in the use of auto-increment/decrement operators).

The chapter on XML is also a bit odd since the LINQ interface to XML is not even mentioned, nor is XPATH, and the ways to process XML seem awkward and difficult for the programmers this book is likely to interest. Indeed, it may be better to simply ignore XML if possible and spend the time on other data representations.

Given the relatively low price (and money-back guarantee!) and sheer size, it will be very useful for some, probably intermediate programmers who are unfamiliar with the technologies discussed. It should also be good supplemental material for students in a course on C#.

Experienced programmers who are new to the Microsoft ecosystem will probably find better approaches, and complete newcomers will require a better language and programming tutorial for C#.

More reviews about this item: Amazon

Reviewer:  Jeffrey Putnam Review #: CR144337 (1607-0461)
Bookmark and Share
  Featured Reviewer  
 
C# (D.3.2 ... )
 
 
Object-Oriented Programming (D.1.5 )
 
Would you recommend this review?
yes
no
Other reviews under "C#": Date
Programming C#
Liberty J., O’Reilly & Associates, Inc., Sebastopol, CA, 2001.  680, Type: Book (9780596001179)
Jun 12 2002
C# primer: a practical approach
Lippman S., Addison-Wesley Longman Publishing Co., Inc., Boston, MA, 2002.  394, Type: Book (9780201729559)
Jun 5 2002
C# essentials
Merrill B., Drayton P., Albahari B., O’Reilly & Associates, Inc., Sebastopol, CA, 2002.  216, Type: Book (9780596003159)
Jul 8 2002
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy