"C# 4.0 in a Nutshell is one of the few books I keep on my desk as a quick reference. It is a book I recommend." - Scott Guthrie, Corporate Vice President, Microsoft
Why to Buy:
In the tradition of O'Reilly Nutshell guides, C# 5.0 in a Nutshell is simply the best one volume
introduction and reference to the C# language availability today!
KEY SELLING POINTS
-
The bestselling Nutshell from O'Reilly
-
Completely updated for C# 5.0
-
Highly acclaimed book and authors
-
Comprehensive and complete single reference
-
C# 5.0 in a Nutshell will build on the success of C# 3.0 in a Nutshell,
providing concise and thorough information on the language and core
framework in one straightforward and accessible volume.
-
C# 5.0 in a Nutshell will also feature a "What's new in C# 5.0" section,
which will be of appeal to developers moving from previous C# versions.
-
Part of the book's appeal is that it's highly orthogonal in coverage -
there's no "heart" around which other topics receive less attention
-
The readers will get excited primarily about the speed and ease to which
they can gain information across a wide variety of topics
AUDIENCE
Anyone learning or using the C# programming language will find this book
useful - either in by itself or with other C# books. Readers at all
levels will be able to use this book as a reference, and readers with
some prior background in C# or another programming language will be able
to read this book sequentially to learn the language.
With this digital Early Release edition of C# 5.0 in a Nutshell,
Fifth Edition, you get the entire book bundle in its earliest form –
the author's raw and unedited content – so you can take advantage of
this content long before the book's official release. You'll also
receive updates when significant changes are made, as well as the final
ebook version. When
you have a question about how to use C# 5.0 or the .NET CLR, this
highly acclaimed bestseller has precisely the answers you need. Uniquely
organized around concepts and use cases, this fifth edition includes
in-depth coverage of concurrency and asynchrony new to C# 5.0 as well as
continued coverage of parallel programming, code contracts, dynamic
programming, security and COM interoperability. You'll also find updated
information on language enhancements such as Caller Info Attributes,
ReadOnlyDictionary, Web Sockets, and the new HttpClient class. This
handy book has all you need to stay on track with C# 5.0. - Get up to speed on C# language basics, including syntax, types, and variables
- Explore advanced topics such as unsafe code and preprocessor directives
- Learn C# 5.0 features such as concurrency and asynchrony
- Work with .NET 4.5's rich set of features for parallel programming, code contracts, and the code security model
- Understand
.NET topics, including XML, collections, I/O and networking, memory
management, reflection, attributes, security, and native
interoperability
About the Author Joseph Albahari is author of C# 3.0 in a Nutshell, LINQ Pocket Reference, and C# 3.0 Pocket Reference.
He has been developing large-scale enterprise applications on .NET and
other platforms for more than 15 years, and is author of LINQPad - the popular utility for querying databases in LINQ. Joseph is currently a freelance consultant. Ben Albahari is the founder of Take On It.
He was a Program Manager at Microsoft for 5 years, where he worked on
several projects, including the .NET Compact Framework and ADO.NET. He
was the cofounder of Genamics, a provider of tools for C# and J++
programmers, as well as software for DNA and protein sequence analysis.
He is a co-author of C# Essentials, the first C# book from O'Reilly, and of previous editions of C# in a Nutshell.
|
Chapter 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# 5.0
- What’s New in C# 4.0
- What’s New in C# 3.0
Chapter 2 C# Language Basics- A First C# Program
- Syntax
- Type Basics
- Numeric Types
- Boolean Type and Operators
- Strings and Characters
- Arrays
- Variables and Parameters
- Expressions and Operators
- Statements
- Namespaces
Chapter 3 Creating Types in C#- Classes
- Inheritance
- The object Type
- Structs
- Access Modifiers
- Interfaces
- Enums
- Nested Types
- Generics
Chapter 4 Advanced C#- Delegates
- Events
- Lambda Expressions
- Anonymous Methods
- try Statements and Exceptions
- Enumeration and Iterators
- Nullable Types
- Operator Overloading
- Extension Methods
- Anonymous Types
- Dynamic Binding
- Attributes
- Caller Info Attributes (C# 5)
- Unsafe Code and Pointers
- Preprocessor Directives
- XML Documentation
Chapter 5 Framework Overview- The CLR and Core Framework
- Applied Technologies
- Chapter 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
- Globalization
- Working with Numbers
- Enums
- Tuples
- The Guid Struct
- Equality Comparison
- Order Comparison
- Utility Classes
Chapter 7 Collections- Enumeration
- The ICollection and IList Interfaces
- The Array Class
- Lists, Queues, Stacks, and Sets
- Dictionaries
- Customizable Collections and Proxies
- Plugging in Equality and Order
Chapter 8 LINQ Queries- Getting Started
- Fluent Syntax
- Query Expressions
- Deferred Execution
- Subqueries
- Composition Strategies
- Projection Strategies
- Interpreted Queries
- LINQ to SQL and Entity Framework
- Building Query Expressions
Chapter 9 LINQ Operators- Overview
- Filtering
- Projecting
- Joining
- Ordering
- Grouping
- Set Operators
- Conversion Methods
- Element Operators
- Aggregation Methods
- Quantifiers
- Generation Methods
Chapter 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
- Annotations
- Projecting into an X-DOM
Chapter 11 Other XML Technologies- XmlReader
- XmlWriter
- Patterns for Using XmlReader/XmlWriter
- XmlDocument
- XPath
- XSD and Schema Validation
- XSLT
Chapter 12 Disposal and Garbage Collection- IDisposable, Dispose, and Close
- Automatic Garbage Collection
- Finalizers
- How the Garbage Collector Works
- Managed Memory Leaks
- Weak References
Chapter 13 Diagnostics and Code Contracts- Conditional Compilation
- Debug and Trace Classes
- Code Contracts Overview
- Preconditions
- Postconditions
- 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
Chapter 14 Concurrency & Asynchrony- Introduction
- Threading
- Tasks
- Principles of Asynchrony
- Asynchronous Functions in C# 5.0
- Asynchronous Patterns
- Obsolete Patterns
Chapter 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
Chapter 16 Networking- Network Architecture
- Addresses and Ports
- URIs
- 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
Chapter 17 Serialization- Serialization Concepts
- The Data Contract Serializer
- Data Contracts and Collections
- Extending Data Contracts
- The Binary Serializer
- Binary Serialization Attributes
- Binary Serialization with ISerializable
- XML Serialization
Chapter 18 Assemblies- What’s in an Assembly
- Strong Names and Assembly Signing
- Assembly Names
- 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
Chapter 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
Chapter 20 Dynamic Programming- The Dynamic Language Runtime
- Numeric Type Unification
- Dynamic Member Overload Resolution
- Implementing Dynamic Objects
- Interoperating with Dynamic Languages
Chapter 21 Security- Permissions
- 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
- Hashing
- Symmetric Encryption
- Public Key Encryption and Signing
Chapter 22 Advanced Threading- Synchronization Overview
- Exclusive Locking
- Locking and Thread Safety
- Non-Exclusive Locking
- Signaling with Event Wait Handles
- The Barrier Class
- Lazy Initialization
- Thread-Local Storage
- Interrupt and Abort
- Suspend and Resume
- Timers
Chapter 23 Parallel Programming- Why PFX?
- PLINQ
- The Parallel Class
- Task Parallelism
- Working with AggregateException
- Concurrent Collections
- BlockingCollection<T>
Chapter 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
Chapter 25 Native and COM 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
Chapter 26 Regular Expressions- Regular Expression Basics
- Quantifiers
- Zero-Width Assertions
- Groups
- Replacing and Splitting Text
- Cookbook Regular Expressions
- Regular Expressions Language Reference
Colophon
|