Java 21 - Language Features and Beyond

แชร์
ฝัง
  • เผยแพร่เมื่อ 5 ก.ย. 2024
  • Language Features and Beyond: A Roadmap of Innovations
    Embark on an exploration of Java 21's groundbreaking language features.
    From a simplified beginning with unnamed classes and instance main methods to using string templates, record patterns, and pattern matching, this session empowers you to create efficient, future-proof code.
    Join this talk to gain a practical understanding of the latest Java language advancements so that you can apply them to your applications.
    Tags: #Java #JDK #OpenJDK #ProjectAmber

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

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

    Many many thanks for the helpful content.

  • @markandrievsky6317
    @markandrievsky6317 4 หลายเดือนก่อน +1

    I don't understand why String Template was shown in the video, when it won't be in Java 23 release 😅
    It seams, that there won't be string template in next LTS

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

    Hi LinkedIn is saying that there is no page by the link you have indicated in your profile

  • @kanaillaurent526
    @kanaillaurent526 4 หลายเดือนก่อน

    Thank you. In 24:30 why not put directly case BLUE -> "XXX"? I think it works too.

  • @eddymoreno5624
    @eddymoreno5624 4 หลายเดือนก่อน +8

    Good video, java is a good lenguage, but its tooling has to be modernized

    • @stcattc
      @stcattc 4 หลายเดือนก่อน +12

      Lol what it literally has the best tooling and ides of any modern oo language. You are clueless.

    • @PanicAtProduction
      @PanicAtProduction 4 หลายเดือนก่อน

      @@stcattc time shows us the fact. Java is dying. Kotlin maybe. Today, mine included, all Fortune 500 companies write their microservices with other languages. We don’t need oo in a micro service. OO was a correct solution for monolith apps which is dead today’s scalable world.

    • @okerror1451
      @okerror1451 4 หลายเดือนก่อน +1

      omg, somebody bring mvn behind the chemical sheds. Everybody is using it, and it is SUCH a pain

    • @greatso9018
      @greatso9018 4 หลายเดือนก่อน

      ​@@stcattc Well, no really good LSP, no really good build tool and no really good package manager. Where is the good tooling ?
      Look at Rust that has an included test library, a linter and a package manager.
      Gradle is very generic so I find it hard to configure Java projects, and Maven is slow and not overall a good experience.

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

      ​@@PanicAtProductionwhat do you suggest?

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

    one more :-) 7:39... "no more javac, java etc..." using an IDE, I have not seen the java compiler nor the java execution programs since years... source is compiled after I save a file, and executed with a mouse click... is anyone still using command line javac? any if yes... why?

    • @RoadrunnerCoyote
      @RoadrunnerCoyote 4 หลายเดือนก่อน

      Well if you are using a bat file to run classes then it is required.

    • @withgrowinginsanity198
      @withgrowinginsanity198 4 หลายเดือนก่อน

      @@RoadrunnerCoyote? BAT file on each compile, run cycle? Why?

    • @RoadrunnerCoyote
      @RoadrunnerCoyote 4 หลายเดือนก่อน

      @@withgrowinginsanity198 Sorry I misunderstood your question.

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

      Continuous integration usually doesn't run in an IDE.

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

      Using an IDE is a personal choice. It’s also an extra layer that introduces complexity and bugs.

  • @withgrowinginsanity198
    @withgrowinginsanity198 4 หลายเดือนก่อน

    6:15 is a extra build tool really needed? e.g. working in Eclipse, export project as e.g. WAR file. Do I miss out ons some awesome building features? 😇

    • @Greenmarty
      @Greenmarty 4 หลายเดือนก่อน +1

      Nope but it makes one's life so much easier.

    • @withgrowinginsanity198
      @withgrowinginsanity198 4 หลายเดือนก่อน

      @@Greenmarty how much easier? File, export, finish sounds easy enough

    • @chandan-shinde
      @chandan-shinde 2 หลายเดือนก่อน

      Dependency management!! You don't have to deal with all external dependencies and classpaths manually... And in real-world big projects, there are a LOT of this to be handled...

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

    Can we simplify the creation of utility classes? Like classes with only static methods.... If we can avoid static, public, etc. that would be great ....

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

      ? why would it? "static" tells me -> I dont need an instance. Public tells me -> It can be called from everywhere.

    • @terribleprogrammer
      @terribleprogrammer 4 หลายเดือนก่อน

      @@withgrowinginsanity198 I get it. But utility methods are mostly static. It's a convention. So can we have some language improvements to simplify it.

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

    Thanks

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

    What about making a completely breaking release, refactoring and cleaning everything? Getting rid of the old stuff like Date and File classes, simplifying some APIs like BigDecimal, maybe separating ByteArrayInputStream from Stream interface (because it's not an actual stream), possibly adding overrideable operators like in C++, adding support for "var"/"val", creating some nice APIs for number conversions (e.g. no implicit conversions, only manual ones with static analysis for clarity), getting rid of "NaN", possibly making Stream API global, adding support for extension functions, maybe adding native implementations for some of the stuff Lombok does (@AllArgsConstructor, @Getter,...), adding support for calling a method based on an actual runtime type of an argument,...Call it Java 2 or something, release it as a standalone to the current java, so older applications can still work with the old code.

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

      Not gonna fly, backward compatibility is why people use Java in the first place.

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

    Used for Minecraft

  • @12crenshaw
    @12crenshaw 4 หลายเดือนก่อน

    0:14 what's the point of showing string templates if it's already being ditched?

  • @gleitonfranco1260
    @gleitonfranco1260 4 หลายเดือนก่อน

    🔝☕‼

  • @mixfaa
    @mixfaa 4 หลายเดือนก่อน

    I personally really want null-safety

  • @yongsun-zy4ho
    @yongsun-zy4ho 4 หลายเดือนก่อน

    1234

  • @withgrowinginsanity198
    @withgrowinginsanity198 4 หลายเดือนก่อน

    one more... 21:55 performing calculations AND building a JSON object is scaring me. I would like my building methods to be as "stupid" as possible, aka just using some getters for cost, packaged etc.

  • @botondvasvari5758
    @botondvasvari5758 4 หลายเดือนก่อน

    in 20 years it catches up to c#

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

      you mean microsoft flavored java?

    • @rustandmagic
      @rustandmagic 28 วันที่ผ่านมา

      We will get wonderful things as partial classes, classes in files that does not match the class name, no backward compatibility, "oh you are using .NET 7.x.y, you need to use 7.x.z otherwise it will not work", and things like Console.WriteLine((a ?? 3)); or (numbers ??= new List()).Add(123); because it is sooooo easy to understand, or why not: Math.round(0.5) will return 0.