HAPPY BOOKSGIVING
Use code BOOKSGIVING during checkout to save 40%-55% on books and eBooks. Shop now.
Register your product to gain access to bonus material or receive a coupon.
C# has quickly established itself as one of the world's most widely used programming languages. The newest version, Visual C# 2010, includes several important new features, including Silverlight, the Entity Framework, tighter integration with version 4.0 of the .NET Framework, and full support for programming Windows 7 and Office. The proven Sams Teach Yourself method will help all newcomers to C# 2010 get up to speed quickly, no matter whether you've had experience with previous versions of Visual C# or not. You are taken step by step through the process of software development, learning elements as you build a sample application so that the material is framed in a real world approach. The accompanying DVD contains Visual C# 2010 Express Edition, and the companion Web site contains all the code and exercises from the book.
Understanding Classes and Objects the C# Way
Download the sample pages (includes Chapter 3 and Index)
Introduction 1
PART I: C# FUNDAMENTALS
Hour 1 The .NET Framework and C# 7
The .NET Framework 7
The C# Language 17
Visual Studio 2010 24
Writing Your First Program 27
Q&A 31
Workshop 32
Hour 2 Understanding C# Types 35
Types 36
Predefined Types 37
Operators 47
Default Values 53
Null and Nullable Types 53
Casting and Conversion 55
Q&A 59
Workshop 60
Hour 3 Understanding Classes and Objects the C# Way 63
Object-Oriented Programming 64
Component-Oriented Programming 65
Classes in C# 65
Scope and Declaration Space 66
Nested Classes 85
Partial Classes 86
Static Classes 86
Object Initializers 88
Q&A 89
Workshop 90
Hour 4 Inheritance, Interfaces, and Abstract Classes 93
Inheritance and Polymorphism 93
Abstract Classes and Members 103
Interfaces 105
Q&A 109
Workshop 111
Hour 5 Creating Enumerated Types and Structures 113
Enumerated Types 114
Structures 119
Q&A 127
Workshop 127
Hour 6 Events and Event Handling 131
Understanding Events 132
Subscribing and Unsubscribing 132
Publishing an Event 136
Raising an Event 139
Q&A 141
Workshop 142
PART II: PROGRAMMING IN C#
Hour 7 Controlling Program Flow 147
Selection Statements 148
Iteration Statements 153
Jump Statements 159
Q&A 162
Workshop 163
Hour 8 Using Strings and Regular Expressions 167
Strings 168
Mutable Strings Using StringBuilder 177
Type Formatting 178
Regular Expressions 187
Q&A 190
Workshop 191
Hour 9 Working with Arrays and Collections 195
Arrays 196
Indexers 200
Generic Collections 203
Collection Initializers 217
Collection Interfaces 219
Enumerable Objects and Iterators 220
Q&A 223
Workshop 224
Hour 10 Handling Errors Using Exceptions 227
Understanding Exceptions 228
Throwing Exceptions 231
Handling Exceptions 232
Rethrowing Caught Exceptions 239
Overflow and Integer Arithmetic 241
Q&A 243
Workshop 243
Hour 11 Understanding Generics 245
Why You Should Use Generics 246
Using Generic Methods 253
Creating Generic Classes 254
Combining Generics and Arrays 257
Working with Tuples 261
Q&A 263
Workshop 264
Hour 12 Understanding Query Expressions 267
Introducing LINQ 268
Standard Query Operator Methods 279
Lambdas 280
Deferred Execution 283
Q&A 284
Workshop 285
PART III: WORKING WITH DATA
Hour 13 Using Files and Streams 289
Files and Directories 290
Reading and Writing Data 300
Q&A 307
Workshop 308
Hour 14 Working with XML 311
Understanding the XML DOM 312
Using LINQ to XML 313
Selecting and Querying XML 319
Modifying XML 323
Q&A 326
Workshop 326
Hour 15 Working with Databases 329
Understanding ADO.NET 330
Understanding LINQ to ADO.NET 333
Q&A 342
Workshop 343
PART IV: BUILDING AN APPLICATION USING VISUAL STUDIO
Hour 16 Debugging in Visual Studio 347
Commenting Your Code 348
Compiler and Runtime Errors 349
Debugging in Visual Studio 350
Visualizing Data 359
Q&A 361
Workshop 361
Hour 17 Building a Windows Application 363
Understanding WPF 364
Creating a WPF Application 370
Styling the Layout 379
Q&A 382
Workshop 382
Hour 18 Using Data Binding and Validation 385
Understanding Data Binding 386
Converting Data 390
Binding to Collections 395
Working with Data Templates 399
Validating Data 400
Q&A 404
Workshop 405
Hour 19 Building a Web Application 407
Understanding Web Application Architecture 408
Working with ASP.NET 408
Creating a Web Application 411
Understanding Data Validation 420
Q&A 423
Workshop 424
PART V: DIVING DEEPER
Hour 20 Programming with Attributes 427
Understanding Attributes 428
Working with the Common Attributes 430
Using Custom Attributes 433
Accessing Attributes at Runtime 434
Q&A 436
Workshop 436
Hour 21 Dynamic Types and Language Interoperability 439
Using Dynamic Types 439
Understanding the DLR 444
Interoperating with COM 447
Reflection Interoperability 448
Q&A 449
Workshop 450
Hour 22 Memory Organization and Garbage Collection 451
Memory Organization 452
Garbage Collection 452
Understanding IDisposable 453
Using the Dispose Pattern 455
Declaring and Using Finalizers 456
Q&A 458
Workshop 459
Hour 23 Understanding Threads, Concurrency, and Parallelism 461
Understanding Threads and Threading 462
Concurrency and Synchronization 463
Understanding the Task Parallel Library 467
Working with Parallel LINQ (PLINQ) 472
Potential Pitfalls 473
Q&A 475
Workshop 476
Hour 24 Next Steps: Silverlight, PowerShell, and Entity Framework 479
Understanding the Entity Framework 479
Introducing PowerShell 482
Silverlight 483
Index 485