Modern Java in Action • Nicolai Parlog • GOTO 2024

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

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

  • @dmitrypalamarchuk3501
    @dmitrypalamarchuk3501 2 วันที่ผ่านมา +1

    The best practical example of usage for sealed classes, I really like presentation and live coding format, thank you Nicolai

  • @korbendallasmultipass1524
    @korbendallasmultipass1524 หลายเดือนก่อน +2

    Nice to see that the Scala features now find the way into Java. 10 years later :).

  • @2k5325i
    @2k5325i 2 หลายเดือนก่อน +4

    Excellent presentation. I’m dying to see all the potential implementations of StructuredTaskScope to make our applications beautifully simple and rich!

  • @TechTalksWeekly
    @TechTalksWeekly 3 หลายเดือนก่อน +2

    This talks is excellent and Nicolai is a brilliant speaker, that's why it has been featured in the last issue of Tech Talks Weekly newsletter 🎉
    Congrats!

  • @arkadiushauke6258
    @arkadiushauke6258 3 หลายเดือนก่อน +4

    great speak!

  • @hansmuster5291
    @hansmuster5291 3 หลายเดือนก่อน +2

    the "launch multi-file programs" feature is huge.

  • @asterixcode
    @asterixcode 3 หลายเดือนก่อน +1

    how to solve concurrency issues on a distributed system where two requests are handled at the same time by 2 instances of my app, and they both need to access and write to the same entity in a MongoDB database, so no pessimistic locking available?

    • @Patrickdaawsome
      @Patrickdaawsome 15 วันที่ผ่านมา

      @@asterixcode don’t use Mongo?

    • @asterixcode
      @asterixcode 15 วันที่ผ่านมา

      @@Patrickdaawsome exactly! Should I go with SQL database and implement pessimistic locking then, right?

    • @2k5325i
      @2k5325i 2 วันที่ผ่านมา

      @@asterixcode you’ve got the right idea with introducing distributed state, but I would suggest something easier, faster, and cheaper than a relational DB.
      I’d suggest Valkey, formerly known as redis. Or even the DynamoDBLockClient

  • @CasimirPohjanraito
    @CasimirPohjanraito 2 หลายเดือนก่อน

    Modern implies "before 1980's" as modernism was an era before post-modernism, and modernism typically is thought to have happened between1950's and 1970's, and post-modernism somewhere in 1980's and 1990's, depending on locale and culture. 🙃 Thank you for the presentation, learned some contemporary Java things!

    • @Traversed-g8h
      @Traversed-g8h 23 วันที่ผ่านมา +2

      Modern Java is just using the latest features.

    • @Patrickdaawsome
      @Patrickdaawsome 15 วันที่ผ่านมา +1

      That implication is primarily in the context of industrial design, not in the context of writing software.

    • @justinwmusic
      @justinwmusic 9 ชั่วโมงที่ผ่านมา

      It's funny to see an obviously non-native English speaker incorrectly policing the language. Modern means current, present-day. No native English speaker would interpret it as you did. Contemporary is barely used in common speech. Modern is the right word.

  • @tarunsingh7608
    @tarunsingh7608 3 หลายเดือนก่อน +6

    @GOTO, One of the Finest Conference channels which is Highly underrated>>
    Any current or Future Backend Java Engineers must Follow to Learn New Features n System Design concepts

    • @haroldpepete
      @haroldpepete 3 หลายเดือนก่อน +3

      underrated with 1 million of subscribers really close! reallyyy

  • @nepalxplorer
    @nepalxplorer 3 หลายเดือนก่อน +8

    Please make for C# too!

    • @sfincione2000
      @sfincione2000 2 หลายเดือนก่อน +2

      I think you've missed the point. He talks at the start about showcasing java features... the application isn't the point so my guess is he won't ever be doing the "same" in C#. Why would he? He's a Java advocate.

  • @kostian8354
    @kostian8354 3 หลายเดือนก่อน

    8:32
    Set.copyOf() doesn't solve an issue of somebody calling clear on a collection that is part of your record. For that 3rd guy nothing is changed.
    9:30 default values for arguments solve that issue in Scala, with way less code...
    ADTs spread among different files... OMG

    • @kostian8354
      @kostian8354 3 หลายเดือนก่อน

      @@dario-viva so when you copy mutable Set you get immutable Set ?))

    • @PterAntlo
      @PterAntlo 2 หลายเดือนก่อน

      @@kostian8354 Yes. What copyOf does is is it gives you a new Set that is a copy of (i.e. contains the same values) as the original Collection. And (same as Set.of) Sets returned by Set.copyOf are immutable.

    • @Traversed-g8h
      @Traversed-g8h 23 วันที่ผ่านมา

      Did you even look at the docs?

  • @gustavbw
    @gustavbw 3 หลายเดือนก่อน +2

    I've been using Java for a couple of years now - professionally too. The best (Spring & Spring boot) and the worst (JavaFX, jpms, deprecated java 7 libs... etc) parts - IMO.
    At this point, having explored different technologies in the meantime (GoLang, Express, C#, React, Solid, Svelte, Zig, Docker ... some others I've probably forgotten), Java feels like the embodiment of a sunken cost fallicy. Even when used well, and made look easy, like you do, its just... mid. Not bad. Not good. Just mid.
    There is nothing, that Java does, be it native language feature or part of the standard lib, that is not outdone by multiple other related technologies - besides reflections. That is one thing that I miss at times (and even that Zig does it infinetly better too).
    I don't regret the many hundred hours I've spend in Java so far, for if I hadn't, I wouldn't be able to appreciate just how far the rest of the field has come in the meantime.

  • @CernyMatej
    @CernyMatej 3 หลายเดือนก่อน

    Great presentation, but man, it just proves my point: Java is still way behind Scala, even the latest versions. Not to mention Scala 3!

  • @Tony-dp1rl
    @Tony-dp1rl 3 หลายเดือนก่อน +1

    Wow, Java's thread and task libraries are archaic compared to C#. Doesn't even have basic dynamic hardware thread use.

    • @JoeMwangi
      @JoeMwangi 3 หลายเดือนก่อน +6

      How are virtual threads and structured concurrency archaic?

    • @eddymoreno5624
      @eddymoreno5624 3 หลายเดือนก่อน +9

      Async await is worse than virtual threads