C# 3.0 in a Nutshell, 3rd Edition View Larger Image | Joseph Albahari, Ben Albahari O'Reilly Media, Paperback, 3rd edition, Published September 2007, 504 pages, ISBN 0596527578 | List Price: $49.99 Our Price: $30.95 You Save: $19.04 (38% Off)
| | | Availability: In-Stock |
Be the First to Write a Review and tell the world about this title!People who purchase this book frequently purchase: - Learning WCF; Michele LeRoux Bustamante, $27.95, 38% Off!
- Head First C#; Andrew Stellman, et al, $31.95, 36% Off!
- C# 3.0 Design Patterns; Judith Bishop, $24.50, 39% Off!
- C# 3.0 Pocket Reference, 2nd Edition; Ben Albahari, et al, $9.95, 34% Off!
Books on similar topics, in best-seller order:Books from the same publisher, in best-seller order:
This is a concise yet thorough reference to C# 3.0 programming as implemented
in Microsoft's Visual Studio 2008. C# 3.0 in a Nutshell gets right
to the point, covering the essentials of language syntax and usage as well as
the parts of the .NET base class libraries you need to build working applications.
But unlike earlier editions, this book is now organized entirely around concepts
and use cases, providing greater depth and readability.
C# 3.0 introduces the most significant enhancements yet to the programming language,
and C# 3.0 in a Nutshell delves deep into the subject while assuming
minimal prior knowledge of C#-making it accessible to anyone with a reasonable
background in programming. In addition to the language, the book covers the
.NET CLR and the core Framework assemblies, along with the unified querying
syntax called Language Integrated Query (LINQ), which bridges the traditional
divide between programs and their data sources.
Free of clutter and long introductions, this book provides a map of C# 3.0 knowledge
in a succinct and unified style:
- Opening chapters concentrate purely on C#, starting with the basics of syntax,
types and variables, and finishing with advanced topics such as unsafe code
and preprocessor directives
- Later chapters cover the core .NET 3.5 Framework, including such topics
as LINQ, XML, collections, I/O and networking, memory management, reflection,
attributes, security, threading, application domains and native interoperability
Table of Contents
Preface
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
What's New in C# 3.0
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
3. Creating Types in C#
Classes
Inheritance
The object Type
Structs
Access Modifiers
Interfaces
Enums
\Nested Types
Generics
4. Advanced C#
Delegates
Events
Lambda Expressions (C# 3.0)
Anonymous Methods
try Statements and Exceptions
Enumeration and Iterators
Nullable Types
Operator Overloading
Extension Methods (C# 3.0)
Anonymous Types (C# 3.0)
Attributes
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
Enums
The Guid Struct
Equality Comparison
Order Comparison
Utility Classes
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
8. LINQ Queries
Getting Started
Lambda Queries
Comprehension Queries
Deferred Execution
Subqueries
Composition Strategies
Projection Strategies
Interpreted Queries
LINQ to SQL
Building Query Expressions
9. LINQ Operators
Overview
Filtering
Projecting
Joining
Ordering
Grouping
Set Operators
Conversion Methods
Element Operators
Aggregation Methods
Quantifiers
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
Annotations
Projecting into an X-DOM
11. Other XML Technologies
XmlReader
XmlWriter
Patterns for Using XmlReader/XmlWriter
XmlDocument
XPath
XSD and Schema Validation
XSLT
12. Disposal and Garbage Collection
IDisposable, Dispose, and Close
Garbage Collection and Finalizers
Calling Dispose from a Finalizer
How the Garbage Collector Works
Alternatives to Garbage Collection
13. Streams and I/O
Stream Architecture
Using Streams
Stream Adapters
File and Directory Operations
Compression
Isolated Storage
14. Networking
Network Architecture
Addresses and Ports
URIs
Request/Response Architecture
HTTP-Specific Support
Writing an HTTP Server
Using FTP
Using DNS
Sending Mail with SmtpClient
Using TCP
Receiving POP3 Mail with TCP
15. 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
16. Assemblies
What's in an Assembly
Signing an Assembly
Assembly Names
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
17. 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
18. Security
Permissions
Code Access Security
Running in a Sandbox
Sandboxing Another Assembly
Operating System Security
Identity and Role Security
Cryptography Overview
Windows Data Protection
Hashing
Symmetric Encryption
Public Key Encryption and Signing
19. Threading
Threading's Uses and Misuses
Getting Started
Asynchronous Delegates
Synchronization
Locking
Thread Safety
Nonblocking Synchronization
Signaling with Event Wait Handles
Signaling with Wait and Pulse
Interrupt and Abort
Local Storage
BackgroundWorker
ReaderWriterLockSlim
Timers
20. Asynchronous Methods
Why Asynchronous Methods Exist
Asynchronous Method Signatures
Using Asynchronous Methods
Writing Asynchronous Methods
Fake Asynchronous Methods
Alternatives to Asynchronous Methods
Asynchronous Events
21. Application Domains
Application Domain Architecture
Creating and Destroying Application Domains
Using Multiple Application Domains
Using DoCallBack
Domains and Threads
Sharing Data Between Domains
22. Integrating with Native DLLs
Calling into DLLs
Marshaling Common Types
Marshaling Classes and Structs
In and Out Marshaling
Callbacks from Unmanaged Code
Simulating a C Union
Shared Memory
Mapping a Struct to Unmanaged Memory
Interop Attribute Reference
23. Diagnostics
Conditional Compilation
Debug and Trace Classes
Debugger Integration
Processes and Process Threads
StackTrace and StackFrame
Windows Event Logs
Performance Counters
The Stopwatch Class
24. Regular Expressions
Regular Expression Basics
Quantifiers
Zero-Width Assertions
Groups
Replacing and Splitting Text
Cookbook Regular Expressions
Regular Expressions Language Reference
A. C# Keywords
B. Namespace-to-Assembly Reference
Index
About the Authors
Joseph Albahari is a core C# design architect at Egton Medical Information
Systems, the largest primary healthcare software supplier in the UK. He has
been developing large-scale enterprise applications on .NET and other platforms
for more than 15 years, working in medical, telecommunication and education
industries. Joseph specializes in writing custom components and controls, and
has designed application component frameworks for three companies.
Ben Albahari is currently involved in the bioinformatics business. 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.
|