Learning .NET High-performance Programming

Learn everything you need to know about performance-oriented programming for the .NET Framework
Preview in Mapt

Learning .NET High-performance Programming

Antonio Esposito

4 customer reviews
Learn everything you need to know about performance-oriented programming for the .NET Framework
Mapt Subscription
FREE
$29.99/m after trial
eBook
$20.00
RRP $39.99
Save 49%
Print + eBook
$49.99
RRP $49.99
What do I get with a Mapt Pro subscription?
  • Unlimited access to all Packt’s 5,000+ eBooks and Videos
  • Early Access content, Progress Tracking, and Assessments
  • 1 Free eBook or Video to download and keep every month after trial
What do I get with an eBook?
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with Print & eBook?
  • Get a paperback copy of the book delivered to you
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with a Video?
  • Download this Video course in MP4 format
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
$0.00
$20.00
$49.99
$29.99 p/m after trial
RRP $39.99
RRP $49.99
Subscription
eBook
Print + eBook
Start 14 Day Trial

Frequently bought together


Learning .NET High-performance Programming Book Cover
Learning .NET High-performance Programming
$ 39.99
$ 20.00
Enterprise Application Architecture with .NET Core Book Cover
Enterprise Application Architecture with .NET Core
$ 39.99
$ 20.00
Buy 2 for $35.00
Save $44.98
Add to Cart

Book Details

ISBN 139781785288463
Paperback304 pages

Book Description

This book will help you understand what "programming for performance" means, and use effective coding patterns and techniques to optimize your .NET applications. You will begin by understanding what "high performance coding" means, and the different performance concerns. You will see how CLR works and get an understanding of concepts such as memory management, garbage collection, and thread life cycles. You will proceed to learn about the theoretical and practical concepts of PLINQ programming. You will also see what Big Data is, and how to architect a Big Data solution to manipulate large datasets. Finally, you will learn how to launch and analyze a profile session and execute tests against a code block or application for performance analysis.

By the end of this book, you will have a complete understanding of efficient programming using high-performance techniques, and will able to write highly optimized applications.

Table of Contents

Chapter 1: Performance Thoughts
Understanding performance
Performance as a requirement
Performance engineering
Performance aspects
Class of applications
Technical overview
Summary
Chapter 2: Architecting High-performance .NET Code
Software architecture
Performance concerns about architecture
Object-oriented design principles
Common designs and architectures
Architecture comparison
Common platform architectures
Performance considerations
Summary
Chapter 3: CLR Internals
Introduction to CLR
Memory management
Garbage collection
Working with AppDomains
Threading
Multithreading synchronization
Exception handling
Summary
Chapter 4: Asynchronous Programming
Understanding asynchronous programming
Asynchronous programming theory
Asynchronous Programming Model (APM)
Event-based Asynchronous Pattern (EAP)
Task-based Asynchronous Pattern (TAP)
Task UI synchronization
Async/await
Summary
Chapter 5: Programming for Parallelism
Parallel programming
Task parallelism with TPL
Data parallelism with TPL
Integrated querying with LINQ
Data parallelism with PLINQ
Summary
Chapter 6: Programming for Math and Engineering
Introduction
Evaluating the performance of data types
Real-time applications
Case study: Fourier transform
Sliding processing
Summary
Chapter 7: Database Querying
Introduction
Overview of ADO.NET
An overview of Entity Framework
Entity Framework querying optimization
Entity Framework persistence optimization
Performance comparison
ADO.NET bulk copy
Summary
Chapter 8: Programming for Big Data
What is big data?
Architecting big data solutions
Microsoft Azure for big data
Simplified grid computing
Lookup programming
Summary
Chapter 9: Analyzing Code Performance
Software profiling
Profiling with Visual Studio
Testing with Visual Studio 2013
Static program analysis
Summary

What You Will Learn

  • Understand the significance of high performance in applications
  • Identify different performance concerns for all the mainly used architectures and designs
  • Acquaint yourself with the commonly used MVC and MVVM patterns
  • Understand the fundamentals of CLR
  • Learn more about Task Parallel Library and concepts such as Thread Pool Tuning and parameter injection
  • Use PLINQ programming to achieve parallelism
  • Design Big Data solutions for handling datasets optimally
  • Choose high-performance querying strategies to retrieve and manipulate data
  • Execute tests on applications for performance analysis

Authors

Table of Contents

Chapter 1: Performance Thoughts
Understanding performance
Performance as a requirement
Performance engineering
Performance aspects
Class of applications
Technical overview
Summary
Chapter 2: Architecting High-performance .NET Code
Software architecture
Performance concerns about architecture
Object-oriented design principles
Common designs and architectures
Architecture comparison
Common platform architectures
Performance considerations
Summary
Chapter 3: CLR Internals
Introduction to CLR
Memory management
Garbage collection
Working with AppDomains
Threading
Multithreading synchronization
Exception handling
Summary
Chapter 4: Asynchronous Programming
Understanding asynchronous programming
Asynchronous programming theory
Asynchronous Programming Model (APM)
Event-based Asynchronous Pattern (EAP)
Task-based Asynchronous Pattern (TAP)
Task UI synchronization
Async/await
Summary
Chapter 5: Programming for Parallelism
Parallel programming
Task parallelism with TPL
Data parallelism with TPL
Integrated querying with LINQ
Data parallelism with PLINQ
Summary
Chapter 6: Programming for Math and Engineering
Introduction
Evaluating the performance of data types
Real-time applications
Case study: Fourier transform
Sliding processing
Summary
Chapter 7: Database Querying
Introduction
Overview of ADO.NET
An overview of Entity Framework
Entity Framework querying optimization
Entity Framework persistence optimization
Performance comparison
ADO.NET bulk copy
Summary
Chapter 8: Programming for Big Data
What is big data?
Architecting big data solutions
Microsoft Azure for big data
Simplified grid computing
Lookup programming
Summary
Chapter 9: Analyzing Code Performance
Software profiling
Profiling with Visual Studio
Testing with Visual Studio 2013
Static program analysis
Summary

Book Details

ISBN 139781785288463
Paperback304 pages
Read More
From 4 reviews

Read More Reviews

Recommended for You

Enterprise Application Architecture with .NET Core Book Cover
Enterprise Application Architecture with .NET Core
$ 39.99
$ 20.00
Multithreading with C# Cookbook - Second Edition Book Cover
Multithreading with C# Cookbook - Second Edition
$ 39.99
$ 20.00
Reactive Programming for .NET Developers Book Cover
Reactive Programming for .NET Developers
$ 35.99
$ 18.00
Mastering ASP.NET Web API Book Cover
Mastering ASP.NET Web API
$ 35.99
$ 18.00
.NET Design Patterns Book Cover
.NET Design Patterns
$ 31.99
$ 16.00
.NET 4.5 Parallel Extensions Cookbook Book Cover
.NET 4.5 Parallel Extensions Cookbook
$ 29.99
$ 15.00