Design Patterns in .NET
Implement design patterns in .NET using the latest versions of the C# and F# languages. This book provides a comprehensive overview of the field of design patterns as they are used in today's developer toolbox.
Using the C# programming language, Design Patterns in .NET explores the classic design pattern implementation and discusses the applicability and relevance of specific language features for the purpose of implementing patterns. You will learn by example, reviewing scenarios where patterns are applicable. MVP and patterns expert Dmitri Nesteruk demonstrates possible implementations of patterns, discusses alternatives and pattern inter-relationships, and illustrates the way that a dedicated refactoring tool (ReSharper) can be used to implement design patterns with ease.
Know the latest pattern implementations available in C# and F#; Refer to researched and proven variations of patterns; Study complete, self-contained examples including many that cover advanced ...
Exploring the .NET Core 3.0 Runtime
Explore advanced .NET APIs and create a basic .NET core library with dynamic code generation and metadata inspection to be used by other libraries or client applications. This book starts with the benefits of .NET including its fundamental tasks and tools where you will learn .NET SDK tools and the ILDasm tool. This is followed by a detailed discussion on code generation in .NET API programming.
Along the way, you will learn how to build a programming model through a code-generator tool and metadata inspector tool using .NET version information for .NET assembly and binary code. Exploring the .NET Core 3.0 Runtime covers the features of Microsoft Visual Studio 2019 using a tutorial and shows you how to create a .NET Core 3.0 application. Here you will configure and deploy your .NET projects along with meta packages and see some do's and don'ts. Finally, you will compare the features of .NET Core 3.0 with t ...
Pro .NET Framework with the Base Class Library
Learn about the fundamentals and inner workings of the Common Type System (CTS) and the Virtual Execution System (VES) of the Common Language Runtime (CLR) and how they relate to the Base Class Library (BCL) from the perspective of the execution environment.
The author first gives an introduction to the .NET Framework and describes the architectural and engineering resources required when implementing the .NET Framework on any platform. Next, you will learn about the BCL and understand how to work with system structures including the fundamental built-in types system.array and system.string. You will then learn about the VES along with its methods and functionality. Further, you will go through the Common Intermediate Language (CIL), Assembly Manifest, and versioning. You will also learn how to design and implement libraries in detail by creating a .NET class library.
After reading this book, you will understand .NET Framework features, as well as deta ...
Applied Cryptography in .NET and Azure Key Vault
Benefit from Microsoft's robust suite of security and cryptography primitives to create a complete, hybrid encryption scheme that will protect your data against breaches. This highly practical book teaches you how to use the .NET encryption APIs and Azure Key Vault, and how they can work together to produce a robust security solution.
Applied Cryptography in .NET and Azure Key Vault begins with an introduction to the dangers of data breaches and the basics of cryptography. It then takes you through important cryptographic techniques and practices, from hashing and symmetric/asymmetric encryption, to key storage mechanisms. By the end of the book, you'll know how to combine these cryptographic primitives into a hybrid encryption scheme that you can use in your applications.
Author Stephen Haunts brings 25 years of software development and security experience to the table to give you the concrete skills, knowledge, and code you need to implement the latest encryption s ...
Blazor Revealed will allow you to create a rich web site experience in no time. You will learn how to build user interfaces, and present data to a user for display and modification, capturing the user's changes via data binding. The book shows you how to access a rich library of .NET functionality such as a component model for buildin ...
Reactive Applications with Akka.NET
Reactive Applications with Akka.NET is a hands-on book that builds on fundamental concepts to teach you how to create reliable and resilient applications in the reactive style.
Enterprise-scale software needs to be unfailingly reliable, consistently performant under unpredictable loads, and easy to scale and maintain. Reactive applications guarantee these qualities through clear isolation of system components and message-based communication. Akka.NET ports the battle-tested Akka Actors toolkit from the JVM, radically simplifying the concurrency and asynchronous message handling at the heart of a reactive system.
Reactive Applications with Akka.NET teaches you to write high-performance, concurrent systems without explicitly managing threads and locking. You'll experience the power of Akka.NET and the Actors concurrency model by exploring a real-world case study in each chapter. As you go further, you'll start to grok the power of asynchronous communicat ...
Understanding Game Application Development
Learn to build a simple data-driven mobile game application using the power of Xamarin.Forms, ASP.NET the Web API, and SignalR with this short book. In it you will build a cross-platform mobile application that targets both iOS and Android, connect your app with your database using Entity Framework, and implement real-time syncing functionality using SignalR.
Understanding Game Application Development starts by giving you an overview of the development tools, an installation guide, and a list of prerequisites. You will learn how to manage application flow, create your workspace, and set up your database. Next, you will see how to access data for handling CRUD operations and define the necessary API endpoints. Further, you will build a mobile application with Xamarin.Forms, both in iOS and in Android.
You will also understand the deployment and testing process as well as how to build a real-time leader board using ASP.NET MVC and SignalR. Finally, you will understand ...
C# 7 and .NET: Designing Modern Cross-platform Applications
C# is a widely used programming language, thanks to its easy learning curve, versatility, and support for modern paradigms. The language is used to create desktop apps, background services, web apps, and mobile apps. .NET Core is open source and compatible with Mac OS and Linux. There is no limit to what you can achieve with C# and .NET Core.
This Learning Path begins with the basics of C# and object-oriented programming (OOP) and explores features of C#, such as tuples, pattern matching, and out variables. You will understand.NET Standard 2.0 class libraries and ASP.NET Core 2.0, and create professional websites, services, and applications. You will become familiar with mobile app development using Xamarin.Forms and learn to develop high-performing applications by writing optimized code with various profiling techniques.
By the end of C# 7 and .NET: Designing Modern Cross-platform Applications, you will have all the knowledge required to build modern, ...
Why just get by in F# when you can program in style! This book goes beyond syntax and into design. It provides F# developers with best practices, guidance, and advice to write beautiful, maintainable, and correct code.
Stylish F# covers every design decision that a developer makes in constructing F# programs, helping you make the most educated and valuable design choices at every stage of code development. You will learn about the design of types and function signatures, the benefits of immutability, and the uses of partial function application. You will understand best practices for writing APIs to be used by F#, C#, and other languages. Each carefully vetted design choice is supported with compelling examples, illustrations, and rationales.
Know why, when, and how to code in immutable style; Use collection functions, piping, and function composition to build working software quickly; Be aware of the techniques available to bring error handling into the mainstream of program log ...
Pro .NET Memory Management
Understand .NET memory management internal workings, pitfalls, and techniques in order to effectively avoid a wide range of performance and scalability problems in your software. Despite automatic memory management in .NET there are many advantages to be found in understanding how .NET memory works and how you can best write software that interacts with it efficiently and effectively. Pro .NET Memory Management is your comprehensive guide to writing better software by understanding and working with memory management in .NET.
Thoroughly vetted by the .NET Team at Microsoft, this book contains 25 valuable troubleshooting scenarios designed to help diagnose challenging memory problems. Readers will also benefit from a multitude of .NET memory management "rules" to live by that introduce methods for writing memory-aware code and the means for avoiding common, destructive pitfalls.
Understand the theoretical underpinnings of automatic memory m ...
Hands-On Full-Stack Web Development with ASP.NET Core
Today, full-stack development is the name of the game. Developers who can build complete solutions, including both backend and frontend products, are in great demand in the industry, hence being able to do so a desirable skill. However, embarking on the path to becoming a modern full-stack developer can be overwhelmingly difficult, so the key purpose of this book is to simplify and ease the process.
This comprehensive guide will take you through the journey of becoming a full-stack developer in the realm of the web and .NET. It begins by implementing data-oriented RESTful APIs, leveraging ASP.NET Core and Entity Framework. Afterward, it describes the web development field, including its history and future horizons. Then, you'll build webbased Single-Page Applications (SPAs) by learning about numerous popular technologies, namely TypeScript, Angular, React, and Vue. After that, you'll learn about additional related concerns involving deployment, hosting, and monitoring by leve ...