ScalaからKotlinを、KotilnからScalaをみてどういう印象を持ちますか
最近、ScalaとKotlinの両方のプログラミング言語に触れる機会が増えてきました。ScalaのユーザーとしてKotlinを見ると、またはKotlinのユーザーとしてScalaを見ると、どのような印象や感想を持ちますか?特に、言語の特性や機能、文法の違いに基づく評価や比較を知りたいです。両言語のユーザーからの意見や経験を共有していただけると幸いです。 (編集済み)
1年前
view数 72
- 2
- 2
回答を投稿して企業にアピールしましょう!
Q&Aで投稿された回答は、
企業側に表示されるプロフィールにも投稿履歴として表示されます。
Offersにログイン・新規登録して、気になるテーマやトピックを話してみよう!
\回答があります!/
Offers(オファーズ) 公式
エンジニア
1年前
※本投稿は、2023年6月29日に開催されたイベント「KotlinとScala 活用者が語る技術選定のヒント(https://offers.connpass.com/event/287192/)」における、Chatwork株式会社 テックリード 加藤 潤一氏の回答内容を元にしています。
Scalaだと高度な関数型プログラミングは本当にできます。
Haskellでやっているような設計をJVM上に持ち込んできて、抽象度が高いプログラミングをやるというのができるのですが、そういったことに慣れていけば他の最近の言語は関数型を取り込んでいる言語が、例えばRustとかもそうですが、Scalaに慣れているとScalaと同じ開発体験をRustでもできるような、要するに型システムがわりと近いです。
近いっていうと怒られるのですが、Scalaの型システムからオブジェクト指向の型システム機能を全部取り除くとRustの型システムに近くなるところがあって、他の言語にわりと関数、Goもそうですが、継承とか例外に頼らない言語機能とかが実装されている言語に馴染みやすいところがあります。
そういった関数型をわりと押してるところがあるので、逆にそこのハードル、そこがあんまり魅力に感じない人にとってみれば、やっぱり抵抗感があると思います。
そういう人にはKotlinをJavaに近いオブジェクト指向のさらにモダン、Javaも進化してきているので大変だと思いますが、KotlinはKotlinのそういったモダンな言語使用を取り入れられているので、オブジェクト指向でプログラミングをしたい人にはわりとKotlinは刺さるんじゃないかなと思います。
僕の周りで技術顧問でアドバイスしてるところでも、Kotlinでやりたいっていうところも結構多いので、今は需要的にもわりとサーバーサイドにも刺さるんじゃないかなっていうような印象はあります。view数 12Offers(オファーズ) 公式
エンジニア
1年前
※本投稿は、2023年6月29日に開催されたイベント「KotlinとScala 活用者が語る技術選定のヒント(https://offers.connpass.com/event/287192/)」における、フリーランスエンジニア 竹端 尚人氏の回答内容を元にしています。
Scalaは本当に10年前とかに少し触ったことがあります。
ScalaはJavaと共存もできるのですが、JavaとJVMの仕様を持って、Javaよりさらに強力な言語というところを目指してるようなイメージです。
関数型は10数年前だと、結構尖った印象の機能ものでもあったので、そこも含めてJavaを使えてオブジェクト指向をではあるけど、関数型言語みたいなイメージがやっぱり強かったというのがScalaのイメージでした。
Javaでも今機能がどんどん増えてきたり、関数型の概念は他の言語にもどんどん取り入れられて、今はそこまで怖い印象を持たせるようなものではなくなってきました。view数 10