<p>This book does not just teach you how the CLR works---it teaches you exactly what you need to do now to obtain the best performance today. It will expertly guide you through the nuts and bolts of extreme performance optimization in .NET, complete with in-depth examinations of CLR functionality, free tool recommendations and tutorials, useful anecdotes, and step-by-step guides to measure and improve performance.
</p><p>This second edition incorporates the advances and improvements in .NET over the last few years, as well as greatly expanded coverage of tools, more topics, more tutorials, more tips, and improvements throughout the entire book.
</p><p><b>New in the 2nd Edition:</b>
<li> 50% increase in content!
</li><li> New examples, code samples, and diagrams throughout entire book
</li><li> More ways to analyze the heap and find memory problems
</li><li> More tool coverage, including expanded usage of Visual Studio
</li><li> More benchmarking
</li><li> New GC configuration options
</li><li> Code warmup techniques
</li><li> New .NET features such as ref-returns, value tuples, SIMD, and more
</li><li> More detailed analysis of LINQ
</li><li> Tips for high-level feature areas such as ASP.NET, ADO.NET, and WPF
<p>Also find expanded coverage and discover new tips and tricks for:
<li> Profiling with multiple tools to quickly find problem areas
</li><li> Detailed description of the garbage collector, how to optimize your code for it, and how to diagnose difficult memory-related issues
</li><li> How to analyze JIT and diagnose warmup problems
</li><li> Effective use of the Task Parallel Library to maximize throughput
</li><li> Which .NET features and APIs to use and which to avoid
</li><li> Instrument your program with performance counters and ETW events
</li><li> Use the latest and greatest .NET features
</li><li> Build a performance-minded team
</li><li>...and so much more
Ben Watson has been a software engineer at Microsoft since 2008. On the Bing platform team, he has built one of the world's leading .NET-based, high-performance server applications, handling high-volume, low-latency requests across thousands of machines for millions of customers. In his spare time, he enjoys books, music, the outdoors, and spending time with his wife Leticia and children Emma and Matthew. They live near Seattle, Washington, USA.
Benefit immediately, even before finishing it, from the knowledge, workable advice, and experience found in Pro .NET Best Practices.What you’ll learn How to set up a continuous integration server that executes builds every time code changes How to create automated tests that are easier to write, easier to maintain, and focused on making sure the code-under-test works the way it’s intended to work How to write a common automated deployment script that deploys to all target environments How to perform meaningful code analysis that gives the kind of information you can take action upon Why some best practices, which were once fresh, are now stale; avoid this trap by following best practices grounded in correct principles that endure How to gain support for following best practices from all project stakeholders by recognizing and overcoming biases, highlighting gaps, and demonstrating value Who this book is for
Pro .NET Best Practices is for the .NET developer who is ready to learn realistic, practicable, and truly helpful best practices. It's for the .NET developer who wants to take the initiative and get started following best practices today, quickly producing results. It's for .NET developers who want to stay away from practices that only have theoretical benefits and move toward ones with real value, especially within a skeptical project environment. It's for the technical lead who has seen best practices get started only to fall out of practice, and wants to understand what goes wrong and how to implement suitable best practices likely to be followed by project teams.Table of Contents Ruthlessly Helpful .NET Practice Areas Achieving Desired Results Quantifying Value Strategy .NET Rules and Regulations Powerful C# Constructs Automated Testing Build Automation Continuous Integration Code Analysis Test Frameworks Aversions and Biases
Appendix A: Resources
Appendix B: Scorecard
This book is for .NET developers who work with relational databases on a daily basis and understand the basics of Entity Framework, but now want to use it in a more efficient manner. You are expected to have some prior knowledge of Entity Framework.What You Will LearnMaster the technique of using sequence key generatorsValidate groups of entities that are to be saved / updatedImprove MVC applications that cover applications developed using ASP.NET MVC Core 1Retrieve database information (table, column names, and so on) for entitiesDiscover optimistic concurrency control and pessimistic concurrency control.Implement Multilatency on the data side of things.Enhance the performance and/or scalability of Entity Framework CoreExplore and overcome the pitfalls of Entity Framework CoreIn Detail
Entity Framework is a highly recommended Object Relation Mapping tool used to build complex systems. In order to survive in this growing market, the knowledge of a framework that helps provide easy access to databases, that is, Entity Framework has become a necessity. This book will provide .NET developers with this knowledge and guide them through working efficiently with data using Entity Framework Core.
You will start off by learning how to efficiently use Entity Framework in practical situations. You will gain a deep understanding of mapping properties and find out how to handle validation in Entity Framework. The book will then explain how to work with transactions and stored procedures along with improving Entity Framework using query libraries. Moving on, you will learn to improve complex query scenarios and implement transaction and concurrency control. You will then be taught to improve and develop Entity Framework in complex business scenarios. With the concluding chapter on performance and scalability, this book will get you ready to use Entity Framework proficiently.Style and approach
Filled with rich code-based examples, this book takes a recipe-based approach that will teach .NET developers to improve their understanding of Entity Framework and help them effortlessly apply this knowledge in everyday situations.
Windows Presentation Foundation (WPF) is a next-generation graphics platform that enables you to build advanced user interfaces incorporating documents, media, 2D and 3D graphics, and animations. It is an ideal development tool that allows you to not only generate data, but also easily represent data graphically.
Practical WPF Charts and Graphics provides all the tools you will need to develop professional chart and graphics applications in WPF and C#. This book will be useful for WPF and C# programmers of all skill levels, providing a complete and comprehensive explanation of WPF’s graphics capability and the creation of various charts, and paying special attention to the details of code implementation.What you’ll learn Understand the types of charts that can be developed in WPF and how WPF can be used to maximum effect in their development Develop a wide range of charts that consist of not only simple 2D and 3D graphs, but also the multimedia elements, embedded documents, and animations now commonly found in cutting-edge applications Adapt the wide selection of fully working demonstration charts that are provided with the book and integrate them into your own web site for instant results Who this book is for
Practical Charts and Graphics is more than just a book—it's a powerful 2D and 3D charts and graphics package. You will find that many of the examples in the book can be immediately used in your real-world applications, and that many others will inspire you to create advanced graphical and sophisticated chart capabilities of your own.
This book is targeted at professional developers and those who are studying to become professionals. Its coverage is equally valuable to both groups, providing a strong reference for one audience and an excellent introduction to the other.Table of Contents Overview of WPF Programming 2D Transformations WPF Graphics Basics in 2D Colors and Brushes 2D Line charts Specialized 2D Charts Stock Charts Interactive 2D Charts 2D Chart Controls Data Interpolations Curve Fitting 3D Transformations WPF Graphics Basics in 3D 3D Charts with the WPF 3D Engine 3D Charts Without the WPF 3D Engine Specialized 3D Charts
As business problems become more complex, the need for a workflow-based solution has never been more evident. WF provides a simple and consistent way to model and implement complex problems. As a developer, you focus on developing the business logic for individual workflow tasks. The runtime handles the execution of those tasks after they have been composed into a workflow.
Beginning WF demonstrates, in an eminently readable and accessible style, how Microsoft's Workflow Foundation (WF) technology can be used in a wide variety of applications.Loaded with lots of simple yet demonstrative sample projects Very hands-on with practical "how-to" information Indexed by feature so specific questions are easily answered What you’ll learn
Beginning WF will take you step by step through many of the useful applications of workflow technology. Along the way, you will:Create designer-based and code-based workflows Communicate between applications using workflow activities Implement SQL persistence with custom participants Create workflow extensions and custom activities Build applications that support long-running workflows Host workflows in WCF services Who this book is for
This book is perfectly suited to anyone using or considering Microsoft's Windows Workflow Foundation. It describes what WF can do for you and how to quickly learn the basic concepts needed to be proficient. If you're actively implementing a workflow project, this book has lots of sample projects that demonstrate the most useful design patterns.Table of Contents Building a Simple Workflow Coded Workflows Flowchart Workflow Passing Arguments Replicated Activities Exception Handling Extending the Built-In Activities Send and Receive Communicating with the Host Application Web Services SQL Persistence Custom Extensions Tracking Transactions Transactions with Persistence WorkflowServiceHost Compensation, Confirmation, and Cancellation Collections Interoperability with Workflow 3.5 Policy
The book is aimed at existing .NET developers who will be trying to come to grips with .NET 4.5 and Windows 8, which will be changing the way they need to think about creating applications.Table of Contents Introduction to .NET 4.5 Visual Studio 2012 IDE CLR and BCL MEF C# 4.5 ASP.NET 4.5 ASP.NET MVC 4 WCF and Web API Data Azure Workflow WPF Silverlight 5 Windows 8 apps
Appendix A: NuGet Introduction
Need fast, robust, efficient code solutions for Microsoft C# 4.0? This book delivers exactly what you’re looking for. You’ll find more than 200 solutions, best-practice techniques, and tested code samples for everything from classes to exceptions, networking to XML, LINQ to Silverlight. Completely up-to-date, this book fully reflects major language enhancements introduced with the new C# 4.0 and .NET 4.0. When time is of the essence, turn here first: Get answers you can trust and code you can use, right now!
Beginning with the language essentials and moving on to solving common problems using the .NET Framework, C# 4.0 How-To addresses a wide range of general programming problems and algorithms. Along the way is clear, concise coverage of a broad spectrum of C# techniques that will help developers of all levels become more proficient with C# and the most popular .NET tools.
Fast, Reliable, and Easy to Use!Write more elegant, efficient, and reusable code Take advantage of real-world tips and best-practices advice Create more effective classes, interfaces, and types Master powerful data handling techniques using collections, serialization, databases, and XML Implement more effective user interfaces with both WPF and WinForms Construct Web-based and media-rich applications with ASP.NET and Silverlight Make the most of delegates, events, and anonymous methods Leverage advanced C# features ranging from reflection to asynchronous programming Harness the power of regular expressions Interact effectively with Windows and underlying hardware Master the best reusable patterns for designing complex programs
All programs and code snippets in this book are available as interactive samples in LINQPad. You can edit these samples and instantly see the results without needing to set up projects in Visual Studio. Written by the authors of C# 7.0 in a Nutshell, this pocket reference covers C# 7.0 without skimping on detail, including:All of C#’s fundamentalsFeatures new to C# 7.0, including tuples, pattern matching, and deconstructorsAdvanced topics: operator overloading, type constraints, iterators, nullable types, operator lifting, lambda expressions, and closuresLINQ: sequences, lazy execution, standard query operators, and query expressionsUnsafe code and pointers, custom attributes, preprocessor directives, and XML documentation