Creează un cont pentru a te abona la acest blog și a-i urmări articolele pe pagina Lectură.
-
Learn how to create a custom AI Agent in Microsoft Agent Framework for .NET with a name and custom instructions.
-
IChatClient is the core of Microsoft Agent Framework.
-
Learn how to use required members in C# to enforce complete object initialization at compile time and avoid half-configured models.
-
Microsoft Agent Framework is Microsoft’s production-oriented framework for building AI agents and multi-agent workflows in .NET and Python.
-
Snapshot Tests are an uncommon type of test that focuses on checking that no regressions were introduced after a code refactoring.
-
A quick comparison of data types, classes, objects, records, and interfaces in C# and Python, designed for .NET developers learning Python.
-
As you may know, you can send Slack notifications using Azure Logic Apps.
-
Handling dates is never trivial.
-
Are you a .NET developer looking to learn Python?
-
The words ReadOnly, Immutable, Frozen seem similar but have distinct meanings in .NET.
-
Should every asynchronous method name end with Async?
-
In C#, Attributes are a handy mechanism to attach metadata to your classes, methods, properties, etc.
-
Davide's Code and Architecture Notes - Metrics, Logs, and Traces: the three pillars of Observability
Learn the differences between metrics, logs, and traces - the three pillars of Observability in distributed systems - and how to use them effectively.
-
It’s easy to say ‘Public Speaking’.
-
The Testing Pyramid focuses on Unit Tests; the Testing Diamond focuses on Integration Tests; and what about the Testing Vial?
-
Dates used to be difficult to test.
-
Why buy a whole tool when you can build your own?
-
Software Architecture and Software Design are terms that look similar but refer to two totally different aspects of software.
-
Task.WhenAll and Task.WaitAll are common methods in C# that allow you to execute multiple Tasks.
-
The quality of a project can be measured by having a look at how the code is written.
-
Operations may fail for transient reasons.
-
Let’s dive deep into the CallerMemberName attribute and explore its usage from multiple angles.
-
Application Insights is a great tool for handling high volumes of logs.
-
D2 is an open-source tool to design architectural layouts using a declarative syntax.
-
Applying custom attributes to C# classes and interfaces can be useful for several reasons.
-
Aren’t you tired of adding manual logs to your HTTP APIs to log HTTP requests and responses?
-
Non-functional requirements matter, but we often forget to validate them.
-
Bogus is a library that generates realistic values for your data.
-
Seq is one of the best Log Sinks out there : it’s easy to install and configure, and can be added to an ASP.NET application with just a line of code.
-
When designing a software system, we naturally focus more on the happy flow.
-
When working with Lists in C#, you are working on a data structure that implements both ICollection and IEnumerable.
-
WireMock.NET is a popular library used to simulate network communication through HTTP.
-
The C4 Model is one of the most famous ways to describe software architectures.
-
With HashSet, you can get a list of different items in a performant way.
-
In Postman, you can define scripts to be executed before the beginning of a request.
-
When describing a web service, people often use the wrong terms.
-
The sealed keyword is often ignored, yet it can be important to define a proper class design.
-
You don’t need a physical database to experiment with ORMs.
-
How is your project structured?
-
When composing the path to a folder or file location, the Path class can come in handy.
-
Can your system withstand heavy loads?
-
Non-functional requirements.
-
Average teams aim at 100% Code Coverage just to reach the number.
-
Same object, different string representations.
-
You have a collection of items.
-
Caching helps your applications be more performant.
-
A simple way to improve efficiency is knowing your IDE shortcuts.
-
ObservableCollection<T> is a data type that allows you to react when an item is added or removed from the collection.
-
Now you can’t run your application because another process already uses the port.