The C# Type System cover

The C# Type System

by Steve Love
September 2023, 344 pp.
ISBN-13: 
9781718501584

Download Chapter 2: VALUE AND REFERENCE TYPES

Look Inside!

The C# Type System back coverThe C# Type System 220-221The C# Type System 264-265

The type system is the foundation upon which all C# programs are built. The C# Type System will show you how to define and implement value types effectively, and write more performant and robust code. Real-world code examples and test cases throughout will elevate your programming with C# and show you how best to implement the principles you’re learning.

Among the core aspects of working with the type system, you’ll learn:

  • How user-defined value types, and even simple types, can enhance your code’s readability
  • How reference and value types differ within C#
  • How method parameters and arguments relate to reference and value types
  • How differences in copy semantics between value and reference types affect a program’s behavior
  • How the different methods of value comparisons for equality work behind the scenes
  • The unique characteristics and roles of various types in an application, especially how value types go beyond mere data storage
  • Why inheritance isn’t optimal for value types
  • How to measure and evaluate the performance of an app’s use of different data types

Whether you’re a novice or seasoned programmer, you’ll find The C# Type System indispensable in your efforts to turn good code into great.

Author Bio 

Steve Love has been a professional C# developer for nearly 20 years, and has trained many other C# developers of varying levels of expertise. He writes for the ACCU magazines C Vu and Overload, and is a frequent speaker at conferences. This is the book he wishes he’d had early in his career.

Table of contents 

Introduction
Chapter 1: Making the Most of the Type System
Chapter 2: Value and Reference Types
Chapter 3: Reference and Value Parameters
Chapter 4: Implicit and Explicit Copying
Chapter 5: Types of Equality
Chapter 6: The Nature of Values
Chapter 7: Value Types and Polymorphism
Chapter 8: Performance and Efficiency
Afterword
Appendix: Further Reading
Index

View the Copyright page
View the detailed Table of Contents
View the Index

Reviews 

"A detailed analysis of low-level aspects of C# and .NET memory management and performance."
—Jon Skeet, Senior Staff Engineer at Google and Convenor of the ECMA Technical Group for C# Standardization

"Exceptionally 'user friendly' in organization and presentation, The C# Type System is the ideal DIY instruction manual that is unreservedly recommended for novice users and seasoned programmers alike."
—Midwest Book Review