How to Organize Your ASP.NET Program.cs File

  Рет қаралды 5,360

Gui Ferreira

Gui Ferreira

Күн бұрын

Пікірлер: 17
@antonmartyniuk
@antonmartyniuk Ай бұрын
I really like the visuals you make in your videos
@gui.ferreira
@gui.ferreira Ай бұрын
Thank you, Anton 🙏 I put a lot of work into them, I hope they help.
@Tamer_Ali
@Tamer_Ali Ай бұрын
Thanks Gui, you awesome 👍.Keep going
@gui.ferreira
@gui.ferreira Ай бұрын
Thanks, will do!
@cryptoeric24
@cryptoeric24 Ай бұрын
This is NOT a waste of time!!!!!!!!!!!!!!!!!!!!!!!!!!
@codeDotnet
@codeDotnet Ай бұрын
Thanks
@gui.ferreira
@gui.ferreira Ай бұрын
Thanks for watching!
@iliyan-kulishev
@iliyan-kulishev Ай бұрын
With regards to composing the features - are you a fan of defining some interface like IComposer { void Compose(IServiceCollection services)} which all the features implement and then finding the implementations via reflection in Program.cs ?
@gui.ferreira
@gui.ferreira Ай бұрын
I like it when I have many features built by different teams. By having the Interface I can dynamically discover features and avoid some conflicts. However, in my opinion, it often is an overkill.
@_iPilot
@_iPilot Ай бұрын
Back in days before .NET6 there was a Startup file which slightly helped, but for some reasons it was removed from application template.
@gui.ferreira
@gui.ferreira Ай бұрын
That’s true, but even on those days, it was a mess.
@icewolf1911
@icewolf1911 Ай бұрын
Good work
@gui.ferreira
@gui.ferreira Ай бұрын
Thank you so much 😀
@cosorxndrw
@cosorxndrw Ай бұрын
So you're coupling your Features/UseCases and the project they're in (Application which is below Infrastructure) to your DbContext which is in the Infrastructure project. Isn't that a big NoNo, in the sense that arrows should point inwards?
@gui.ferreira
@gui.ferreira Ай бұрын
No, that's not the case. Your composition root (something like a web project) will have that dependency.
@GrzegorzGaezowski
@GrzegorzGaezowski Ай бұрын
devs: I want to use DI container over manual composition because it's declarative and flat, no methods, conditions, nesting etc. also devs: this declarative code looks bloated, let's extract some methods for better readability also devs: now that I extracted the methods, adding the same registration twice is more risky, let's add some if(registered) conditions inside these methods. Better yet, let's make a special "try" method for that. Btw the one thing this approach lacks compared to manual composition is that there is no encapsulation of objects between the "features". I could move a registration from one "feature" to another and everything would still work, no real boundaries. I find it much more powerful to model "modules" or "features" as objects (mini-composition roots), compose each of them manually and only make these objects expose the dependencies that are meant to be consumed by other "features" or "modules".
@gui.ferreira
@gui.ferreira Ай бұрын
I agree with most of your points. I like Modules to create structure and clear boundaries. However, in my experience, it's easier to convince developers to implement small improvements, because we are used to the traditional way of doing it. Thanks for sharing your thoughts! It brings an important perspective.
You Should Know This Before Using Page Numbers on Your API
10:45
Gui Ferreira
Рет қаралды 2,6 М.
REST, gRPC, or GraphQL: Which Should You Use?
13:17
Gui Ferreira
Рет қаралды 3,1 М.
Real Man relocate to Remote Controlled Car 👨🏻➡️🚙🕹️ #builderc
00:24
Which team will win? Team Joy or Team Gumball?! 🤔
00:29
BigSchool
Рет қаралды 15 МЛН
The Logging Everyone Should Be Using in .NET
15:34
Nick Chapsas
Рет қаралды 81 М.
How to Set Up a GitHub Repo for an Amazing Developer Experience
21:21
Building better DTOs in C#
11:57
Gui Ferreira
Рет қаралды 6 М.
Testing in .NET is About to Change
12:54
Nick Chapsas
Рет қаралды 80 М.
Choosing the Best .NET UI Framework for YOUR Project
1:03:53
.NET Foundation
Рет қаралды 4,6 М.
LINQ's INSANE Improvements in .NET 9
11:26
Nick Chapsas
Рет қаралды 59 М.
5 Tips for Maintainable OpenTelemetry in .NET
4:48
Gui Ferreira
Рет қаралды 1,5 М.
How to Become a Highly Employable C# Developer in 2024
17:47
Gavin Lon
Рет қаралды 18 М.
Real Man relocate to Remote Controlled Car 👨🏻➡️🚙🕹️ #builderc
00:24