-
So does Java! Also, kotlinx.collections is still not stable and I don't think they are intending to make it so any time soon.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
I have been using https://github.com/sbt-jib/sbt-jib for some time now, it makes building images very easy.
-
So does Java! Also, kotlinx.collections is still not stable and I don't think they are intending to make it so any time soon.
-
once you outgrow scala-cli, you should know sbt has a lot of plugins ( some might say it's ecosystem is the only thing keeping it relevant....) like sbt-native-packager which again does the heavy lifting for you
-
scala has 2 healthy and pretty complete lib ecosystems : check out typelevel and ZIO. Both are FP oriented, which might not be your cup of tea at first glance but I would encourage you to try em out ! Softest introduction would be to start with the typelevel cats library and build up from there. The excellent Scala with Cats will ease you softly into an FP mindset. It's a bit dated and for scala 2 only but translating to Scala 3 is a very good exercise if you feel so inclined !
-
now you might ask : what plugin use to do X ? Where do I find them ? Well, maybe you don't ! Sbt can use g8 ( giter8 ) templates to boostrap projects. The official ones can be a bit bare, but anyone can make their own. Try this one from DevInsideYou for example. He also has a YouTube channel which I would highly recommend. If you look around a bit, you'll find a lot of those setup with libs, boilerplate and sometimes even Github Actions CI/CD pipelines
-
last, resources :) if you are still missing something, try looking on the Scaladex or Scala list of awesome which also links to lot of learning material
-
scala-cli
Scala CLI is a command-line tool to interact with the Scala language. It lets you compile, run, test, and package your Scala code (and more!)
sbt can indeed be a bit harsh for beginners. If your aim is not to build a big project, you might want to use scala-cli instead : no complex build script, only command line goodness to run, test, compile and package your code. Yes it supports dockerization. No need for a dockerfile.
-
last, resources :) if you are still missing something, try looking on the Scaladex or Scala list of awesome which also links to lot of learning material