Unleashing Clean Architecture in .NET 8 - Jason Taylor - Copenhagen DevFest 2023

Ғылым және технология

Unleashing Clean Architecture in .NET 8: Exploring the Clean Architecture Solution Template
Join us on a captivating exploration of Clean Architecture in the dynamic world of .NET 8. In this session, we deep dive into the Clean Architecture Solution Template, an open-source .NET template that propels solution development to new heights.
Discover the seamless integration of Angular or React with ASP.NET Core Minimal API, as we guide you through the creation of a new solution. Delve into the template's impressive range of features, including built-in support for validation, mapping, Open API, authentication, testing, CI/CD, and even IaC. With this comprehensive toolkit at your fingertips, you'll gain the ability to build scalable, maintainable, and future-ready applications.
Whether you're a seasoned .NET developer seeking to elevate your skills or an aspiring architect looking to embrace modern software development principles, this talk provides practical insights and hands-on demonstrations. Join us to unlock the true potential of Clean Architecture in .NET 8, revolutionize your workflow, and create remarkable applications that stand the test of time.

Пікірлер: 46

  • @TheEamonKeane
    @TheEamonKeane2 ай бұрын

    Tremendous amount of value delivered here through this template

  • @EldonElledge
    @EldonElledge9 ай бұрын

    This is really AWESOME work. This is how projects should be done. Simply AWESOME. I would like to work on this with Vertical Slice architecture.

  • @vivekkaushik9508
    @vivekkaushik95089 ай бұрын

    Wonderful. Much appreciated.

  • @predigr
    @predigr6 ай бұрын

    Great effort for building that "template". Thanks for sharing your effort to the community. Though it seems pretty advanced.

  • @ucretsiztakipci6612
    @ucretsiztakipci66128 ай бұрын

    Good presentation and tool. Well done! The upgrade part is the heart of this template, without that feature too risky.

  • @billias28
    @billias282 ай бұрын

    exceptional work....

  • @filipgrilec5293
    @filipgrilec52935 ай бұрын

    Wow. Just wow. Great Work

  • @MuhammadImran-hl5ct
    @MuhammadImran-hl5ct5 ай бұрын

    This is awesome work. Thanks

  • @PGWalkthrough
    @PGWalkthrough9 ай бұрын

    Is there a way to implement your clean architecture as server side application. Is MVC still relevant?

  • @user-ls1ge5jd9g
    @user-ls1ge5jd9g18 күн бұрын

    excellent, you injected dbContext to application layer in run time without adding reference to infrastructure layer. so no need to repositories.

  • @manuelraso5446
    @manuelraso54464 ай бұрын

    What do you think about splitting the Infrastracture in two class libraries: - Persistence - Infrastracture Persistence is dedicated only to the Database, and Infrastracture is dedicated to the storage. By the way, great work, would be awesome tho to have a shorter and easier version of that Clean Architecture, like without events, behavrios, and many other things which are not present in most projects, but I guess you introduce what you is useful to you, so it's kinda ok to start from that and maybe each one personalize how he prefers

  • @shchehliuk124
    @shchehliuk1247 ай бұрын

    where to het such terminal?

  • @MrMmajeed
    @MrMmajeed9 ай бұрын

    any plans to add Blazor UI support?

  • @allannielsen4752

    @allannielsen4752

    9 ай бұрын

    jump to the questions at the end for the answer. hint see RapidBlazor repro

  • @ianokay
    @ianokay9 ай бұрын

    Should the random setup and teardown CLI scripts not be in something more standard like Terraform?

  • @JasonTaylorDev

    @JasonTaylorDev

    9 ай бұрын

    Yes, I would like to add support for Terraform in addition to Bicep.

  • @sergey5846

    @sergey5846

    9 ай бұрын

    Bicep is one of the standards when it comes to Azure.

  • @GirlAteDeath
    @GirlAteDeath9 ай бұрын

    So you created class and methods that corresponds to each endpoint. Isn't that just a controller? Why would you overcomplicate that with mappers to minimal API if you can just create controllers?

  • @pilotboba

    @pilotboba

    9 ай бұрын

    Controllers have overhead than minimal api endpoints don't have.

  • @JasonTaylorDev

    @JasonTaylorDev

    9 ай бұрын

    I obsessed over how best to organise the endpoints and discussed this during the talk. In short I'm using Minimal API for speed and simplicity and I'm grouping related endpoints into a group file since this seemed to be simple given that each endpoint is very small.

  • @sambothach6064
    @sambothach60645 ай бұрын

    What terminal color theme is this? It makes reading the file structure so much easier? Also what git terminal plugin is he using if anyone knows?

  • @abro7672

    @abro7672

    3 ай бұрын

    Most likely he is using ohmyposh (a prompt theme engine), but i dont know what exact theme.

  • @deathlife2414
    @deathlife24149 ай бұрын

    What I want to know is how fast is .net 8 compilation speed and building process is compared to .net 7?

  • @oleggavrilov7083

    @oleggavrilov7083

    9 ай бұрын

    Why?

  • @deathlife2414

    @deathlife2414

    9 ай бұрын

    @@oleggavrilov7083 b/c for simple application I find the speed slow. I have looked into it compared to other frame works and languages it slower than go c/c++ and other languages. There are other languages which net and c# is faster. The best part of .net and c# it comes with all the tools and abstract away for you and don't have to make server from scratch like go and c++ where they don't come with a pre built server in them.

  • @SanjayDwivedi04
    @SanjayDwivedi043 ай бұрын

    How EF migration works, could you please little bit explain

  • @fieryscorpion
    @fieryscorpion9 ай бұрын

    It's time to retire Clean Architecture. Way too much boilerplate to do something. Let's make software simpler again by embracing Vertical Slice Architecture.

  • @JulianSildenLanglo

    @JulianSildenLanglo

    9 ай бұрын

    Maybe I'm wrong, but Boilerplate seems to be the antithesis of Clean Architecture.

  • @EldonElledge

    @EldonElledge

    9 ай бұрын

    Agreed. I have recently start using Vertical Slice Architecture. And it really nice to get back to simpler code with much better cohesion while keeping a check on decupling.

  • @fieryscorpion

    @fieryscorpion

    9 ай бұрын

    @@JulianSildenLanglo Clean architecture gives me anxiety just looking at those gazillions of abstractions through layers. Takes fun out of development. And NO, Boilerplate code IS NOT the antithesis of clean architecture.

  • @Timelog88

    @Timelog88

    9 ай бұрын

    Well, you can apply Clean Architecture to Vertical Slice architecture as well. But I too find it way to overcomplicated for most projects. While the idea of decoupling is nice, in general this can be simplified by just making sure infrastructure and logic are separated. Personally, I like the idea of A-Frame architecture, where the idea is that Logic and Infra live as peers under the Application layer, making managing dependencies easier. Bonus effect of this is that Logic can be written without side effects (So take out your functional programming hat!).

  • @leakyabstraction

    @leakyabstraction

    9 ай бұрын

    In any good architecture you have to combine verticalization (which is an extremely important concept that arguably goes hand in hand with concepts like Screaming Architecture and feature folders) with some degree of higher level design. Vertical slice architecture is a simple concept that helps to navigate the design and development process of everyday features, and clean architecture is a somewhat more detailed concept that helps to build higher level architectural pieces, in which you can then place your verticalized implementations. Also, in a lot of vertical slice implementations (particularly when using MediatR) there is plenty of boilerplate as well :) One big, recurring problem in software development is that for some hard to explain reason people always want to use a single tool for everything, they do it until their nose bleeds, and then they start proclaiming that the given tool is a complete abomination, switching to another tool and starting the same process all over again. This was done with OOP, with Clean Code, with microservices, with clean architecture, with DDD, with serverless, etc.

  • @fr3ddyfr3sh
    @fr3ddyfr3sh9 ай бұрын

    I really thought this talk is about software architecture 😒

  • @Downicon3

    @Downicon3

    9 ай бұрын

    yeah, more like look at my template

  • @JasonTaylorDev

    @JasonTaylorDev

    9 ай бұрын

    Sorry for the confusion; this talk is about exploring the Clean Architecture solution template.

  • @dzendras

    @dzendras

    8 ай бұрын

    The name is a pure click-bait. Not nice.

  • @kortiszallios4524

    @kortiszallios4524

    3 ай бұрын

    Well, I think this demo by the template author is much more helpful than the boring discussion of Clean Architecture per se.

  • @markmd9
    @markmd92 ай бұрын

    half of the presentation is advertising for azure

  • @eyoo369

    @eyoo369

    Ай бұрын

    I mean .NET and Azure go hand in hand. You're building in Microsoft their framework, why not use their hosting service. I think 95% of the .NET devs out there host their shit on Azure and it's for good reasons

  • @wagd
    @wagd9 ай бұрын

    I'm goning to die on this hill someday... NDC, please distribute your videos in 21:9 format. It doesn't matter for people with 16:9, they either get the branding on top and bottom (with the current distribution) or they get black bars (with 21:9 distribution). But for those of us with 21:9 screens, we get a larger presentation window with 21:9 videos instead of black bars on each side with 16:9.

  • @tappy8741
    @tappy87419 ай бұрын

    Can we implement really clean architecture by throwing .NET into the bin really really hard? Then kick the bin into mount doom for good measure

  • @fieryscorpion

    @fieryscorpion

    6 ай бұрын

    WTF are you talking about? Explain.

  • @dvanrooyen1434

    @dvanrooyen1434

    2 ай бұрын

    Likely a Java dev who loves writing getters and setters in 2024…

  • @tappy8741

    @tappy8741

    2 ай бұрын

    @@dvanrooyen1434 Last time I touched java was java 6 and the last time I touched .CRAP was 3.5. Never again

  • @eyoo369

    @eyoo369

    2 ай бұрын

    @@dvanrooyen1434 Most probably yea. The only people I know that hate on .NET come from the old days or are Java devs. Anyone that has used .NET core knows how amazing it is

  • @Andreas-gh6is
    @Andreas-gh6is9 ай бұрын

    So the dotnet bros always said that C# projects taking at least five times as long and ten times as much code as other languages/frameworks is OK because you get better architecture (that you still want to rewrite every few years, if you can afford it) and now you say finally with C# you can finally achieve "clean architecture"?

Келесі