Home / IT Books / Book Reviews – C# 6.0 in a Nutshell 6th Edition

Book Reviews – C# 6.0 in a Nutshell 6th Edition

[Book Reviews] C# 6.0 in a Nutshell 6th EditionWhen you have questions about C# 6.0 or the .NET CLR and its core Framework assemblies, this bestselling guide has the answers you need. C# has become a language of unusual flexibility and breadth since its premiere in 2000, but this continual growth means there’s still much more to learn.

Organized around concepts and use cases, this thoroughly updated sixth edition provides intermediate and advanced programmers with a concise map of C# and .NET knowledge. Dive in and discover why this Nutshell guide is considered the definitive reference on C#.

Get up to speed with all aspects of the C# language, from the basics of syntax and variables, to advanced topics such as pointers and operator overloading
Dig deep into LINQ via three chapters dedicated to the topic
Learn about dynamic, asynchronous, and parallel programming
Work with .NET features, including XML, networking, serialization, reflection, security, application domains, and code contracts
Explore the new C# 6.0 compiler-as-a-service, Roslyn

1. Introducing C# and the .NET Framework
Object Orientation
Type Safety
Memory Management
Platform Support
C#’s Relationship with the CLR
The CLR and .NET Framework
C# and Windows Runtime
What’s New in C# 6.0
What Was New in C# 5.0
What Was New in C# 4.0
What Was New in C# 3.0
2. C# Language Basics
A First C# Program
Type Basics
Numeric Types
Boolean Type and Operators
Strings and Characters
Variables and Parameters
Expressions and Operators
Null Operators
3. Creating Types in C#
The object Type
Access Modifiers
Nested Types
4. Advanced C#
Lambda Expressions
Anonymous Methods
try Statements and Exceptions
Enumeration and Iterators
Nullable Types
Operator Overloading
Extension Methods
Anonymous Types
Dynamic Binding
Caller Info Attributes (C# 5)
Unsafe Code and Pointers
Preprocessor Directives
XML Documentation
5. Framework Overview
The CLR and Core Framework
Applied Technologies
6. Framework Fundamentals
String and Text Handling
Dates and Times
Dates and Time Zones
Formatting and Parsing
Standard Format Strings and Parsing Flags
Other Conversion Mechanisms
Working with Numbers
The Guid Struct
Equality Comparison
Order Comparison
Utility Classes
7. Collections
The ICollection and IList Interfaces
The Array Class
Lists, Queues, Stacks, and Sets
Customizable Collections and Proxies
Plugging in Equality and Order
8. LINQ Queries
Getting Started
Fluent Syntax
Query Expressions
Deferred Execution
Composition Strategies
Projection Strategies
Interpreted Queries
LINQ to SQL and Entity Framework
Building Query Expressions
9. LINQ Operators
Set Operators
Conversion Methods
Element Operators
Aggregation Methods
Generation Methods
10. LINQ to XML
Architectural Overview
X-DOM Overview
Instantiating an X-DOM
Navigating and Querying
Updating an X-DOM
Working with Values
Documents and Declarations
Names and Namespaces
Projecting into an X-DOM
11. Other XML Technologies
Patterns for Using XmlReader/XmlWriter
XSD and Schema Validation
12. Disposal and Garbage Collection
IDisposable, Dispose, and Close
Automatic Garbage Collection
How the Garbage Collector Works
Managed Memory Leaks
Weak References
13. Diagnostics and Code Contracts
Conditional Compilation
Debug and Trace Classes
Code Contracts Overview
Assertions and Object Invariants
Contracts on Interfaces and Abstract Methods
Dealing with Contract Failure
Selectively Enforcing Contracts
Static Contract Checking
Debugger Integration
Processes and Process Threads
StackTrace and StackFrame
Windows Event Logs
Performance Counters
The Stopwatch Class
14. Concurrency and Asynchrony
Principles of Asynchrony
Asynchronous Functions in C#
Asynchronous Patterns
Obsolete Patterns
15. Streams and I/O
Stream Architecture
Using Streams
Stream Adapters
Compression Streams
Working with ZIP Files
File and Directory Operations
File I/O in Windows Runtime
Memory-Mapped Files
Isolated Storage
16. Networking
Network Architecture
Addresses and Ports
Client-Side Classes
Working with HTTP
Writing an HTTP Server
Using FTP
Using DNS
Sending Mail with SmtpClient
Using TCP
Receiving POP3 Mail with TCP
TCP in Windows Runtime
17. Serialization
Serialization Concepts
The Data Contract Serializer
Data Contracts and Collections
Extending Data Contracts
The Binary Serializer
Authenticode Signing
The Global Assembly Cache
Resources and Satellite Assemblies
Resolving and Loading Assemblies
Deploying Assemblies Outside the Base Folder
Packing a Single-File Executable
Working with Unreferenced Assemblies
19. Reflection and Metadata
Reflecting and Activating Types
Reflecting and Invoking Members
Reflecting Assemblies
Working with Attributes
Dynamic Code Generation
Emitting Assemblies and Types
Emitting Type Members
Emitting Generic Methods and Types
Awkward Emission Targets
Parsing IL
20. Dynamic Programming
The Dynamic Language Runtime
Numeric Type Unification
Dynamic Member Overload Resolution
Implementing Dynamic Objects
Interoperating with Dynamic Languages
21. Security
Code Access Security (CAS)
Allowing Partially Trusted Callers
The Transparency Model
Sandboxing Another Assembly
Operating System Security
Identity and Role Security
Cryptography Overview
Windows Data Protection
Symmetric Encryption
Public Key Encryption and Signing
22. Advanced Threading
Synchronization Overview
Exclusive Locking
Locking and Thread Safety
Nonexclusive Locking
Signaling with Event Wait Handles
The Barrier Class
Lazy Initialization
Thread-Local Storage
Interrupt and Abort
Suspend and Resume
23. Parallel Programming
Why PFX?
The Parallel Class
Task Parallelism
Working with AggregateException
Concurrent Collections
24. Application Domains
Application Domain Architecture
Creating and Destroying Application Domains
Using Multiple Application Domains
Using DoCallBack
Monitoring Application Domains
Domains and Threads
Sharing Data Between Domains
25. Interoperability
Calling into Native DLLs
Type Marshaling
Callbacks from Unmanaged Code
Simulating a C Union
Shared Memory
Mapping a Struct to Unmanaged Memory
COM Interoperability
Calling a COM Component from C#
Embedding Interop Types
Primary Interop Assemblies
Exposing C# Objects to COM
26. Regular Expressions
Regular Expression Basics
Zero-Width Assertions
Replacing and Splitting Text
Cookbook Regular Expressions
Regular Expressions Language Reference
27. The Roslyn Compiler
Roslyn Architecture
Syntax Trees
Compilations and Semantic Models

Book Reviews – C# 6.0 in a Nutshell 6th Edition

Top books

About huydam

Check Also

[UWP] The program could not build Windows Universal Samples

If you get this error like this: “Type universe cannot resolve assembly: System.Runtime, Version=, Culture=neutral, …

Leave a Reply

Your email address will not be published. Required fields are marked *