Book Image

C# 7 and .NET Core 2.0 High Performance

By : Ovais Mehboob Ahmed Khan
Book Image

C# 7 and .NET Core 2.0 High Performance

By: Ovais Mehboob Ahmed Khan

Overview of this book

While writing an application, performance is paramount. Performance tuning for realworld applications often involves activities geared toward fnding bottlenecks; however, this cannot solve the dreaded problem of slower code. If you want to improve the speed of your code and optimize an application's performance, then this book is for you. C# 7 and .NET Core 2.0 High Performance begins with an introduction to the new features of what?explaining how they help in improving an application's performance. Learn to identify the bottlenecks in writing programs and highlight common performance pitfalls, and learn strategies to detect and resolve these issues early. You will explore multithreading and asynchronous programming with .NET Core and learn the importance and effcient use of data structures. This is followed with memory management techniques and design guidelines to increase an application’s performance. Gradually, the book will show you the importance of microservices architecture for building highly performant applications and implementing resiliency and security in .NET Core. After reading this book, you will learn how to structure and build scalable, optimized, and robust applications in C#7 and .NET.
Table of Contents (11 chapters)
5
Designing Guidelines for .NET Core Application Performance

Designing Guidelines for .NET Core Application Performance

Architecture and design are the core foundations for any application. Conforming to the best practices and guidelines makes the application highly maintainable, performant, and scalable. Applications can vary from a web-based application, Web APIs, a server/client TCP-based messaging application, a mission-critical application, and so on. However, all of these applications should follow certain practices that benefit in various ways. In this chapter, we will learn certain practices that are common in almost all of our applications.

Here are some of the principles we will learn in this chapter:

  • Coding principles:
    • Naming convention
    • Code comments
    • One class per file
    • One logic per method
  • Design principles:
    • KISS (Keep It Simple, Stupid)
    • YAGNI (You Aren't Gonna Need It)
    • DRY (Don't Repeat Yourself)
    • Separation of...