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
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? 😇
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...
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?
@@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.
@@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.
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 ....
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.
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.
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.
Many many thanks for the helpful content.
Hi LinkedIn is saying that there is no page by the link you have indicated in your profile
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
Thank you. In 24:30 why not put directly case BLUE -> "XXX"? I think it works too.
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? 😇
Nope but it makes one's life so much easier.
@@Greenmarty how much easier? File, export, finish sounds easy enough
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...
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?
Well if you are using a bat file to run classes then it is required.
@@RoadrunnerCoyote? BAT file on each compile, run cycle? Why?
@@withgrowinginsanity198 Sorry I misunderstood your question.
Continuous integration usually doesn't run in an IDE.
Using an IDE is a personal choice. It’s also an extra layer that introduces complexity and bugs.
Good video, java is a good lenguage, but its tooling has to be modernized
Lol what it literally has the best tooling and ides of any modern oo language. You are clueless.
@@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.
omg, somebody bring mvn behind the chemical sheds. Everybody is using it, and it is SUCH a pain
@@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.
@@PanicAtProductionwhat do you suggest?
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 ....
? why would it? "static" tells me -> I dont need an instance. Public tells me -> It can be called from everywhere.
@@withgrowinginsanity198 I get it. But utility methods are mostly static. It's a convention. So can we have some language improvements to simplify it.
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.
Not gonna fly, backward compatibility is why people use Java in the first place.
Thanks
0:14 what's the point of showing string templates if it's already being ditched?
I personally really want null-safety
Used for Minecraft
🔝☕‼
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.
1234
in 20 years it catches up to c#
you mean microsoft flavored java?
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.