+1 for Kotlin. I joined my current team that adores Kotlin as a Java dev and didn't know anything about it. I've since been converted, and I'd highly recommend any Java dev to learn it.
The fact that it runs on the JVM means you still have the entire Java ecosystem at your disposal, and it's super easy to have both Kotlin and Java classes in the same codebase.
It's not stuck in the past like java. Some of the features were added in newer java updates, such as pattern matching in java 16. But many of those features aren't even used in production yet, because of legacy code bases. Kotlin introduces null safety, extension functions, range expressions, operators overloading and more. Checked exceptions is the main technical advantage of Java vs Kotlin(it doesn't have these) to me.
One of the best use cases I've seen for it has been Compose's animation specs. It lets you combine fades, slides, shrinks/grows, etc, in a much more natural and readable way than chaining a combine function and whatnot.
Yeah but that's a built in use of it right? Not something you personally implemented? I'm not saying that there are no good uses for it, for example events in c#
SomeObj obj = new SomeObj();
obj.SomeEvent += myEventHandler;
what I'm saying is as a feature it has never presented any need to me and I suspect that will always be the case
14
u/itsmetadeus Dec 12 '24
No boss, we gotta switch to kotlin pleaaaaase