ASP.NET Community Standup - ASP.NET Core Architecture with David Fowler

แชร์
ฝัง
  • เผยแพร่เมื่อ 1 ธ.ค. 2024

ความคิดเห็น • 27

  •  4 ปีที่แล้ว +23

    Great presentation, we need the 2nd part!

    • @leknyzma
      @leknyzma 3 ปีที่แล้ว

      we need a sequel

  • @Erril_Ferndal
    @Erril_Ferndal 2 ปีที่แล้ว

    Thank you very much guys!! It so amazing to hear how the Microsoft professionals talk about the architecture of the framework we daily use. Thanks! Looking forward to more.

  • @positronalpha
    @positronalpha 4 ปีที่แล้ว +11

    Damian is a great communicator.

  • @AT-oe6by
    @AT-oe6by 4 ปีที่แล้ว +5

    Thank you so much! We're looking forward to the link to used presentation. And perhaps any other resources describing ASP.NET Core architecture...

  • @_Miguel_Roman_
    @_Miguel_Roman_ 4 ปีที่แล้ว +1

    Excellent talk, thanks for sharing. Please schedule a second part :)

  • @shreyasjejurkar1233
    @shreyasjejurkar1233 4 ปีที่แล้ว +5

    Just look at David smile at 10:20 . There is lot to learn from him and aspnetcore team!

    • @sps014
      @sps014 4 ปีที่แล้ว +1

      Lol yeah he is genius...

  • @adrianstoica3744
    @adrianstoica3744 4 ปีที่แล้ว +2

    Great talk, would it be possible to link David's power point presentation? I feel there were more nuggets on those slides you guys did not get a chance to go thru

    • @joaofbantunes
      @joaofbantunes 4 ปีที่แล้ว

      I think it's this one: speakerdeck.com/davidfowl/asp-dot-net-core-architecture-overview

  • @riksvendsenrose5528
    @riksvendsenrose5528 4 ปีที่แล้ว +2

    There was talk about the PP presentations? Any chance of the demo project too?

  • @matsedv
    @matsedv 3 ปีที่แล้ว

    Great talk, super interesting 👏

  • @nessitro
    @nessitro 3 ปีที่แล้ว

    Awesome!

  • @Wfmike
    @Wfmike 2 ปีที่แล้ว

    Followed up from project Houdini to this vid.
    Now that .net 7 is in preview. I Hope the .net team would in .net8 introduces source generator to minimal api.

  • @adinwashere
    @adinwashere 3 ปีที่แล้ว +1

    Why is the team so small?

  • @Kirides
    @Kirides 4 ปีที่แล้ว

    Wow, that source generator looks like it could improve performance by a lot.
    A naked request takes about 2 ms for nothing on my machine,
    i'd imagine if there was less reflection the code could even run in sub 1 ms _with_ actionfilters and their comrades.
    unless they wait for db calls or other equivalent workloads.
    If that could be then combined with a source-generated Json serialization, the code would literally be blazing fast for simple CRUD REST workloads!

  • @Gioeufshi
    @Gioeufshi 4 ปีที่แล้ว +1

    3:33 i did not get it

  • @positronalpha
    @positronalpha 4 ปีที่แล้ว

    The Startup class with extension methods concept is horrible to work with for anything but throwaway websites. Zero testability, instant spaghetti.

    • @davidfowl
      @davidfowl 4 ปีที่แล้ว +1

      Can you explain that? Why isn't it testable and what exactly do you need to test?

    • @positronalpha
      @positronalpha 4 ปีที่แล้ว +1

      @@davidfowl I will do my best, but bear with me, it's late and I'm typing on my phone.
      A Startup class quickly becomes a mess of mixed concerns. Configuration, registration of services, routing specs, etc. Additional abstractions can help alleviate this, to some degree, but anything other than testing what has been registered with which lifetime is often very hard - how do you assert that AddMvc or some other deep extension method has been called?
      Integration tests have been suggested as the answer when this has been discussed, but integration tests without unit tests is not a good experience - I don't want to have to debug an application to figure out what's wrong.
      To be fair, I'm now reading about IStartupFilter and other bits I've missed that may help us build our way out of the mixed concerns we haven't managed to get away from yet. Original point still stands, though - for anything other than a simple website, a Startup class quickly becomes a maintenance nightmare.

    • @davidfowl
      @davidfowl 4 ปีที่แล้ว +4

      @@positronalpha I think there’s a tendency to over abstract things in object oriented languages like C#. Startup is where coupling is supposed to happen. It’s where you wire up specific implementations of interfaces for the current environment. It’s where you read configuration files and write the logic to make the rest of the application logic clean.
      Unit testing the startup class itself IMO is of little value, but you can if you want to. Some people like verifying that certain registrations were made but since we use extensions methods (anything else would require coupling ASP.NET Core tighter which is something we don’t see the value in).
      That said large enterprise customers love to modularize the startup in various ways that I’ve seen but it’s never perfect, just a different set of trade offs.

    • @ronaldmackee3401
      @ronaldmackee3401 4 ปีที่แล้ว +8

      The Startup class needs to be unit-tested? It's all infrastructure boilerplate code. If something's wrong there, you won't need a unit test to find out.

    • @positronalpha
      @positronalpha 4 ปีที่แล้ว

      ​@@ronaldmackee3401 An example of apparently recommended (since it's a sample from the ASP.NET Core repo) Startup class usage: github.com/dotnet/aspnetcore/blob/master/src/Security/Authentication/samples/SocialSample/Startup.cs
      I see quite a lot of things that can be made to go wrong in interesting ways, which I would not want to figure out using a debugger.