Home > Store > Programming > C#
Essential C# 4.0, 3rd Edition
- By Mark Michaelis
- Published Mar 10, 2010 by Addison-Wesley Professional. Part of the Pearson Custom Library: Computer Science series.
- Copyright 2010
- Dimensions: 7 X 9-1/8
- Pages: 984
- Edition: 3rd
- Book
- ISBN-10: 0-321-69469-4
- ISBN-13: 978-0-321-69469-0
Register your product to gain access to bonus material or receive a coupon.
Product Author Bios
Mark Michaelis is founder and president of IntelliTechture and a trainer with IDesign. His expertise encompasses software architecture, VSTS/TFS, BizTalk, SharePoint, and .NET. He has been honored as a Microsoft MVP for C#, Visual Studio Team System, and the Windows SDK, and is a Microsoft Regional Director. He serves on Microsoft’s C# software design review team and often speaks at developer conferences.
Essential C# 4.0 is a well-organized,“no-fluff” guide to all versions of C# for programmers at all levels of C# experience. This fully updated edition shows how to make the most of C# 4.0’s new features and programming patterns to write code that is simple, yet powerful.
This edition contains two new chapters on parallel programming, multithreading, and concurrency, as well as extensive coverage of new C# 4.0 features: dynamic typing, variance, optional/named parameters, and many other new topics.
Mark Michaelis covers the C# language in depth, illustrating key constructs with succinct, downloadable code examples. Graphical “mind maps” at the beginning of each chapter show what material is covered and how individual topics interrelate. Topics intended for beginners and advanced readers are clearly marked, and the book includes indexes of C# versions (2.0, 3.0, and 4.0), which make it easy for readers to reference topics specific to a given release of C#.
Following an introduction to C#, readers learn about
- Best practices for object-oriented programming in C#
- C# primitive data types, value and reference types, implicitly typed variables, anonymous types, plus dynamic typing in C# 4.0
- Methods and parameters–including extension methods, partial methods, and C# 4.0’s optional and named parameters
- Generics, concurrent collections, and custom collections with iterators
- Delegates, events, and lambda expressions
- Collection interfaces and standard query operators
- Query expressions and the tree expressions on which LINQ providers are based
- Reflection, attributes, and dynamic programming
- Parallel Query Processing with PLINQ
- Multithreaded programming with the Task Parallel Library
- Platform interoperability and unsafe code
- The Common Language Infrastructure that underlies C#
Whether you’re just starting out, are an experienced developer moving to C#, or are a seasoned C# programmer seeking to master C# 4.0’s most valuable enhancements, Essential C# 4.0 will help you write high-quality, highly effective code.
Related Article
Essential C#: An Interview with Mark Michaelis
Author's Site
Please visit the author's web site at http://intelliTechture.com/EssentialCSharp.
|
23 of 25 people found the following review helpful
By Dave K (Colorado, USA) - See all my reviews
This review is from: Essential C# 4.0 (3rd Edition) (Microsoft Windows Development Series) (Paperback)
This is an excellent book about C# the language. Please read that again, as I can see a lot of people mistake what this book is - it is NOT a book about .Net (although it definitely is related to that) or about any specific frameworks that _use_ C#, such as WPF or ASP.Net or anything like that. It's a book about the C# language itself. And assuming that's what you want, it's a really well done book. It also clearly points out what C# features are in/from the different versions of C# much, much better than any other book I've ever seen.I'm not going to give an overview of the chapters, as you can already see what those are in the information section above. The coverage of every topic is very thorough, and the writing and sample code are both of high quality. If I had to complain about something here, it would be that some things which seem like "advanced" topics aren't marked as such all the time, while others are. This book is a great reference, but you'll... Read more
5 of 5 people found the following review helpful
By
Amazon Verified Purchase(What's this?)
This review is from: Essential C# 4.0 (3rd Edition) (Microsoft Windows Development Series) (Paperback)
It's rare to find a tech book that is this well written. The ideas are all clearly laid out and explained, without a lot for window dressing "for dummies". This book is smart and moves forward at a good pace (not too fast, not too slow). If you're working in C# (in any capacity) and want to really wrap your head around the language - including some of the more unique or esoteric points - this is the book you've been looking for. Granted, it doesn't go into many of the technologies that use C# (such as ADO.NET) but that's not what this book is for. It's for really learning the language.If you feel like you've been faking your way through your projects, only partially understanding more advanced topics like interfaces, inheritance, and delegates, please get this book. It will make you better in every aspect of your work, much to your own relief (and those who follow after).
11 of 14 people found the following review helpful
By
Amazon Verified Purchase(What's this?)
This review is from: Essential C# 4.0 (3rd Edition) (Microsoft Windows Development Series) (Paperback)
Essential C# 4.0 is a well written, high quality book receiving a well deserved placement on my reference bookshelf. The author has done an excellent job focusing on the C# language itself without becoming buried in the .NET libraries. In other words how to use the C# language and its constructs to harness .NET.When I got the book I first started reading the introduction and continued will into the first chapter. It was such an easy read that I pretty much read the whole book from front to back. Even in the early chapters, such as flow control, I was finding myself picking up features or behaviors that I had previously overlooked or plainly forgotten. In addition to including the latest C# 4.0 features such as parallel task library, a dedicated C# 4.0 table of contents lists the new features and patterns so I can quickly catch up. An interesting feature is the mind map at the beginning of every chapter visually representing its contents. I like that how different options... Read more |
› See all 18 customer reviews...
Online Sample Chapter
Essential C# 4.0: Delegates and Lambda Expressions
Table of Contents
Contents of C# 4.0 Topics xxv
Figures xxvii
Tables xxix
Foreword xxxi
Preface xxxv
Acknowledgments xlvii
About the Author li
Chapter 1: Introducing C# 1
Hello, World 2
C# Syntax Fundamentals 4
Working with Variables 12
Console Input and Output 16
Comments 20
Managed Execution and the Common Language Infrastructure 23
C# and .NET Versioning 26
Common Intermediate Language and ILDASM 27
Summary 30
Chapter 2: Data Types 31
Fundamental Numeric Types 32
More Fundamental Types 40
null and void 51
Categories of Types 55
Nullable Modifier 57
Conversions between Data Types 58
Arrays 64
Summary 81
Chapter 3: Operators and Control Flow 83
Operators 84
Introducing Flow Control 98
Code Blocks ({}) 105
Scope and Declaration Space 107
Boolean Expressions 109
Bitwise Operators (<<, >>, |, &, ^, ~) 115
Control Flow Statements, Continued 121
Jump Statements 132
C# Preprocessor Directives 138
Summary 145
Chapter 4: Methods and Parameters 149
Calling a Method 150
Declaring a Method 157
The using Directive 161
Returns and Parameters on Main() 165
Parameters 168
Recursion 176
Method Overloading 179
Optional Parameters 182
Basic Error Handling with Exceptions 186
Summary 199
Chapter 5: Classes 201
Declaring and Instantiating a Class 205
Instance Fields 209
Instance Methods 211
Using the this Keyword 213
Access Modifiers 220
Properties 222
Constructors 236
Static Members 247
Extension Methods 256
Encapsulating the Data 258
Nested Classes 260
Partial Classes 262
Summary 267
Chapter 6: Inheritance 269
Derivation 270
Overriding the Base Class 281
Abstract Classes 293
All Classes Derive from System.Object 299
Verifying the Underlying Type with the is Operator 301
Conversion Using the as Operator 302
Summary 303
Chapter 7: Interfaces 305
Introducing Interfaces 306
Polymorphism through Interfaces 307
Interface Implementation 312
Converting between the Implementing Class and Its
Interfaces 318
Interface Inheritance 318
Multiple Interface Inheritance 321
Extension Methods on Interfaces 322
Implementing Multiple Inheritance via Interfaces 323
Versioning 326
Interfaces Compared with Classes 328
Summary 329
Chapter 8: Value Types 331
Structs 332
Boxing 339
Enums 346
Summary 356
Chapter 9: Well-Formed Types 357
Overriding object Members 357
Operator Overloading 369
Referencing Other Assemblies 377
Defining Namespaces 382
XML Comments 385
Garbage Collection 390
Resource Cleanup 393
Lazy Initialization 400
Summary 403
Chapter 10: Exception Handling 405
Multiple Exception Types 405
Catching Exceptions 407
General Catch Block 409
Guidelines for Exception Handling 411
Defining Custom Exceptions 414
Summary 419
Chapter 11: Generics 421
C# without Generics 422
Introducing Generic Types 427
Constraints 439
Generic Methods 453
Covariance and Contravariance 457
Generic Internals 463
Summary 467
Chapter 12: Delegates and Lambda Expressions 469
Introducing Delegates 470
Anonymous Methods 480
System-Defined Delegates: Func<> 483
Lambda Expressions 486
Summary 506
Chapter 13: Events 507
Coding the Observer Pattern with Multicast Delegates 508
Events 523
Summary 533
Chapter 14: Collection Interfaces with Standard Query Operators 535
Anonymous Types and Implicitly Typed Local Variables 536
Collection Initializers 543
What Makes a Class a Collection: IEnumerable<T> 546
Standard Query Operators 552
Summary 586
Chapter 15: LINQ with Query Expressions 589
Introducing Query Expressions 590
Query Expressions as Method Invocations 608
Summary 609
Chapter 16: Building Custom Collections 611
More Collection Interfaces 612
Primary Collection Classes 617
Providing an Index Operator 630
Returning Null or an Empty Collection 634
Iterators 634
Summary 650
Chapter 17: Reflection, Attributes, and Dynamic Programming 651
Reflection 652
Attributes 663
Programming with Dynamic Objects 688
Summary 699
Chapter 18: Multithreading 701
Running and Controlling a Separate Thread 706
Executing Iterations in Parallel 724
Running LINQ Queries in Parallel 734
Multithreading before .NET Framework 4 738
Unhandled Exceptions on the AppDomain 744
Summary 746
Chapter 19: Synchronization and More Multithreading Patterns 749
Synchronization 750
Timers 778
Asynchronous Programming Model 783
Asynchronous Delegate Invocation 797
Event-Based Asynchronous Pattern (EAP) 801
Background Worker Pattern 804
Windows UI Programming 809
Summary 814
Chapter 20: Platform Interoperability and Unsafe Code 815
Platform Invoke 816
Pointers and Addresses 830
Summary 839
Chapter 21: The Common Language Infrastructure 843
Defining the Common Language Infrastructure (CLI) 844
CLI Implementations 845
C# Compilation to Machine Code 847
Runtime 849
Application Domains 854
Assemblies, Manifests, and Modules 855
Common Intermediate Language (CIL) 858
Common Type System (CTS) 858
Common Language Specification (CLS) 859
Base Class Library (BCL) 860
Metadata 860
Summary 862
Appendix A: Downloading and Installing the C# Compiler and the CLI
Platform 865
Appendix B: Full Source Code Listings 869
Appendix C: Concurrent Classes from System.Collections.Concurrent 895
Appendix D: C# 2.0 Topics 899
Appendix E: C# 3.0 Topics 903
Appendix F: C# 4.0 Topics 905
Index 907
Sample Pages
Download the sample pages (includes Chapter 12 and Index)
Errata

This book includes free shipping!
This book includes free shipping!
eBook (Watermarked)
$43.99
$35.19
Includes EPUB, MOBI, and PDF
About eBook Formats
This eBook includes the following formats, accessible from your Account page after purchase:
EPUBThe open industry format known for its reflowable content and usability on supported mobile devices.
MOBIThe eBook format compatible with the Amazon Kindle and Amazon Kindle applications.
PDFThe popular standard, used most often with the free Adobe® Reader® software.
This eBook requires no passwords or activation to read. We customize your eBook by discretely watermarking it with your name, making it uniquely yours.
- Request an Instructor or Media review copy.
- Corporate, Academic, and Employee Purchases
- International Buying Options
Get access to thousands of books and training videos about technology, professional development and digital media from more than 40 leading publishers, including Addison-Wesley, Prentice Hall, Cisco Press, IBM Press, O'Reilly Media, Wrox, Apress, and many more. If you continue your subscription after your 30-day trial, you can receive 30% off a monthly subscription to the Safari Library for up to 12 months. That's a total savings of $199.

