fc2ブログ

Entries

中村修太『Guide to Scala』

Guide to ScalaーScalaプログラミング入門Guide to ScalaーScalaプログラミング入門
(2013/03/02)
中村修太

商品詳細を見る

耳にすることも多くなったプログラミング言語Scalaについての入門書。もともとWeb媒体での連載だったものをKDPで出版している。Scalaの一通りの文法と、その特徴について読むことができる。記述はやさしいが、Scala自体がJavaを引き継ぐ形で発展しているものなので、Javaの知識が必要とされる。

Scalaの特徴としては、Javaのように変数の型宣言が特に必要なく型推論をしてくれること。関数をファーストオブジェクトとして取ることができ、カリー化や部分適用、遅延評価もあり関数型プログラミングの特徴を一部備えていること。Javaのインターフェイスを強化して実装そのものも持たせられるトレイトという仕組みを持っている(そこまでやるなら、クラスの多重継承を実現しないのはなぜだろう。インスタンスとそれが所属するクラスという集合論的描像を堅持する必要はなかろう。Javaに基づいていることの限界か。)。型のパラメータ化により、継承やトレイトの設定にかなり細かい条件を設けられること。暗黙の型変換により、かなり柔軟なコーディングができること。

総じて、Javaでコーディングするときにいつもお決まりのように書かなければならない自明事項を、書かなくて済むようにしたように思える(型宣言の不要やトレイト、暗黙の型変換など)。それは逆に、可読性を犠牲にしているように見える。最後に出てくる並列処理で、メッセージのやりとりによる並列処理の仕組みを標準ライブラリで持っているのは面白そうだ。

この本では、なぜScalaで書きたくなるのか、利点はどこにあるのかはあまり分からない。Scalaはスケーラブルな言語だとも言われるが、その点については何も解説はなかった。全体をざっと概観する本。
スポンサーサイト



この記事にトラックバックする(FC2ブログユーザー)
https://exphenomenologist.blog.fc2.com/tb.php/596-4ca81d00

トラックバック

コメント

コメントの投稿

コメントの投稿
管理者にだけ表示を許可する

Appendix

プロフィール

坂間 毅 (Sakama Tsuyoshi)

Author:坂間 毅 (Sakama Tsuyoshi)
コンサルティングファームに所属。数学の哲学を専攻して研究者を目指し、20代のほとんどを大学院で長々と過ごす。しかし博士号は取らず進路変更。以降IT業界に住んでいる。

別館:note

検索フォーム

QRコード

QRコード