Rock Your Code: Code & App Performance for Microsoft .NET (4th Edition)

"Rock Your Code: Code & App Performance for Microsoft .NET" is a comprehensive guide that emphasizes the importance of optimizing code performance for enhanced user experience and backend efficiency. With practical insights and example code, developers learn essential practices for maximizing the performance of their business applications within the Microsoft .NET framework. From string manipulation to leveraging source generators, this edition covers a wide range of topics, including new chapters on code analysis and benchmark testing. Written for developers using Microsoft .NET 8 and Visual Studio 2022, this book offers timeless principles applicable across different versions of .NET, ensuring relevance and utility in any environment.

Rock Your Code: Coding Standards for Microsoft .NET (8th Edition)

The 8th edition of the book, Rock Your Code: Coding Standards for Microsoft .NET, is available on Amazon. It consolidates Microsoft .NET coding standards and provides supplementary directives. Drawing insights from Microsoft’s code inspection tools, the book covers topics such as project setup, naming standards, class design, coding style, and more. The book's purpose is to facilitate superior code quality and swift integration of new team members. It's designed for use with Visual Studio 2022, C#, and .NET 8.

Collection Performance: Looping Over a Collection Using Span and ReadOnlySpan

The article explores the performance benefits of utilizing Span and ReadOnlySpan for collection processing, highlighting advantages such as improved performance, reduced memory pressure, enhanced safety, and compatibility with modern API design. Span allows read-write access and efficient iteration with lightweight storage, while ReadOnlySpan provides read-only access to prevent accidental modifications, offering similar benefits for collection processing.

Code It Any Way You Want: Performance Considerations for Sealed and Internal Classes

This article explores the historical belief that sealed and internal classes in .NET might offer performance advantages, but suggests that in modern .NET runtimes, compiler optimizations, and hardware advancements, the difference in performance is likely negligible, emphasizing that design considerations should drive decisions regarding class sealing or internalization rather than performance concerns.

Collection Performance: Optimizing Sequence Comparison

The article discusses different methods for comparing two collections for identity in programming. It introduces the use of the SequenceEqual() method for comparing sequences in the LINQ extension methods, as well as the StructuralSequenceEqual() method, which is beneficial for comparing custom classes based on the values of their elements rather than object references.

General Performance Tip: Type Conversion

This article explores type conversion in programming, comparing the traditional syntax with the newer "as" keyword in .NET. While the "as" keyword improves code readability, benchmark results suggest that the conventional method is slightly more performant, advising developers to stick with traditional type conversion unless significant performance improvements are observed with the "as" keyword.

String Performance: Checking for a Character

The article compares two methods of checking for the presence of a specific character in a string in C#. Benchmark results reveal that using a character in the search is 3.57 times more efficient than using a string, and Contains() outperforms StringComparison.Ordinal and StringComparison.OrdinalIgnoreCase in terms of speed.

dotNetDave Rocks The Austin .NET User Group (2024)

The dotNetDave No Rest for the Wicked World Tour is coming to the Austin .NET User Group in Texas on May 9th. This session will focus on code and app performance for Microsoft .NET, covering efficient code execution and techniques for minimizing memory footprint. Watch the live session and access related resources to optimize code performance.