Facilitating the spread of knowledge and innovation in professional software development



Choose your language

InfoQ Homepage .NET Content on InfoQ

  • Getting Started with gRPC and .NET

    In this article, the author introduces the core concepts behind gRPC and how it can be used with API development. The basic pros and cons of using gRPC instead of REST are also explained with a scenario analysis. The text is illustrated with a step-by-step tutorial on how to use gRPC to develop streaming services in .NET.

  • Microservices — the Letter and the Spirit

    Microservices to be a pattern of ‘decoupled services’ managed to get the best out of it (the underlying understanding of the pattern (‘small’ vs ‘decoupled’) forces developers to take certain design decisions that are consistent with these objectives. In this article discuss we will discuss well and poor implementations: ‘small-services’ vs ‘decoupled-services’ or ‘Letter’ vs the ‘Spirit’.

  • Overriding Sealed Methods in C#

    In this article, the author demonstrates how we can change the behavior of sealed methods in C#. This can be done by understanding Operating System mechanisms and how the .NET platform generates and compiles code. The author illustrates these techniques using real-world scenarios, including the modification of the WinPAI wrapper.

  • Anomaly Detection Using ML.NET

    In this article, the author introduces the concepts of Anomaly Detection using the Randomized PCA method. The theory behind the concepts is explained and exemplified. The method is demonstrated with a real-world scenario implemented using C# and ML.NET.

  • Records in C# 9

    In this article, Tugce Özdeger talks about Records, a new reference type introduced in C# 9 that provides built-in functionality for encapsulating data. The article shows the potential benefits and advantages of using records and how developers can use them in their applications, with code examples and comparisons with classes and structs.

  • Present and Future of Xamarin Community Toolkit: Q&A with Gerald Versluis

    Xamarin.Forms is evolving into .NET MAUI; the Xamarin Community Toolkit is also preparing for the transition. In this Q&A, InfoQ decided to interview Gerald Versluis. He is a software engineer at Microsoft from the Netherlands. In this interview, we will talk about Xamarin Community Toolkit, MAUI transition, and their future roadmap.

  • The Fundamentals of Testing with Persistence Layers

    Mocking out dependencies such as databases and other persistence layers leads to ineffective tests. Unfortunately, our industry is also focused on function-level testing to the exclusion of all else, so few are trained on how to write any other type of test. This article seeks to correct the issue by reintroducing the concept of testing with databases.

  • The Excel Formula Language Is Now Turing-Complete

    The Excel team announced LAMBDA, a new feature that lets users define and name formula functions. LAMBDA functions admit parameters, can call other LAMBDA functions and recursively call themselves. With LAMBDA, the Excel formula language is Turing-complete: user-defined functions can thus compute anything without resorting to imperative languages (e.g., VBA, JavaScript).

  • Microsoft's Low-Code Strategy Paints a Target on UIPath and the Other RPA Companies

    Microsoft is investing big in the low code space and has put together a collection of products that is hard for other companies to match, capped recently by the announcement of PowerFX. The target in their sights is the Robotic Process Automation (RPA) companies such as UIPath, Automation Anywhere and Blue Prism who are closing big deals with big enterprises.

  • Evolution of Azure Synapse: Apache Spark 3.0, GPU Acceleration, Delta Lake, Dataverse Support

    At Microsoft Build 2021, Azure Synapse has announced significant improvements for its Apache Spark pool, its performance, and data querying and integration capabilities. This article outlines the improvements and provides the context.

  • Building a Source Generator for C#

    In this article we’ll be writing a Source Generator for C#. Along the way we’ll explain some of the key technologies you’re going to need to learn in order to build your own and some of the pitfalls you might encounter on the way.

  • Case Study: a Decade of Microservices at a Financial Firm

    Microservices are the hot new architectural pattern, but the problem with “hot” and “new” is that it can take years for the real costs of an architectural pattern to be revealed. Fortunately, the pattern isn’t new, just the name is. So, we can learn from companies that have been doing this for a decade or more.