Best of C Programming — November 2023
- 1
- 2
The Art of Simplicity·3y
.NET 8–Http Logging
ASP.NET Core in .NET 8 introduces new capabilities in the HTTP logging middleware, eliminating the need for Serilog to achieve similar results. These capabilities include measuring the duration of request/response processing and consolidating all enabled logs into one.
- 3
- 4
.NET Blog·3y
Announcing C# 12
C# 12 is now available and brings better developer productivity with simplified syntax and faster execution. The new features include collection expressions, primary constructors for all classes and structs, aliasing any type, and default parameters for lambda expressions. These features simplify code and improve performance. The article also mentions experimental features like the experimental attribute and interceptors.
- 5
Code Maze·3y
Event-Driven Architecture in C#
Event-driven architecture is a powerful pattern for building scalable, responsive, and loosely coupled systems. It revolves around the concept of events, which define the flow of the system. Event producers generate events, event routers decide where to send them, and event consumers react to the events. Event-driven architecture differs from request-response and pub-sub patterns. Producers in an event-driven architecture generate and send events to a messaging service like RabbitMQ or Apache Kafka.
- 6
DevBlogs·3y
Entity Framework Core 8 (EF8) is available today
Entity Framework Core 8 (EF8) is now available on NuGet. EF8 introduces major enhancements including support for value objects using Complex Types and improvements in JSON column mapping. It aligns with .NET 8 as a long-term support (LTS) release.
- 7
- 8
Discover .NET·3y
Every New Feature Added in C# 12
C# 12 introduces several new features, including primary constructors, collection expressions, and ref readonly parameters. Primary constructors allow for simplified constructor syntax at the class level, collection expressions simplify array initialization, and ref readonly parameters allow for passing references to value types. Other features mentioned include default lambda parameters, alias any type, inline arrays, the experimental attribute, and interceptors.
- 9
Lobsters·3yWhy did Linux choose Rust but not C++?
Linux chose Rust over C++ as the second language for the project due to C++'s complexity and unstable standard library. Rust offers advantages for kernel programming and the popularity of Rust may have influenced the decision. The BSDs also stick with one language for kernel programming for various reasons.
- 10
Discover .NET·2y
Primary constructors has caused concerns for C# developers
Concerns have been raised by C# developers regarding the use of primary constructors for dependency injection. While primary constructors reduce code bloat, the mutability of parameters can lead to instances being changed in other parts of the class, increasing the risk of runtime exceptions. There are discussions about adding read-only parameters to primary constructors in the future.
- 11
- 12
Code Maze·3y
Pipes and Filters Architectural Pattern in C#
The Pipes and Filters architectural pattern is used to break down a complex task into smaller tasks and execute them sequentially. It promotes modularity, flexibility, and reusability. It also allows for efficient data processing and scalability. However, it introduces complexities in managing data flow and can cause latency in real-time processing.