2011年5月4日水曜日

っつか、そもそもScalaってなんぞ?

ちょっとしたきっかけでScalaの勉強会にのりこみ、
参加者様から本を強奪してぱちぱちと開発環境をととのえてブログにかいたりしているのですが、
読んでいる人から見ればそもそもScalaってなんぞ?ってなりますよね、はい。

まぁ、それは私も思っているので、
とりあえず公式のページをみてみました。

The Scala Programming Language

って、英語かよ!!(怒)
嘆いてもしょうがないのでもうちょっと調べてみる。

(30分経過)


調べてみた結果、こんな感じでした。
なお、以下の記述は@mogakanaが独自で調査したもので
若干まちがっているかもしれないのと
口調が乱暴なので注意されたし。つまり鵜呑みにしないでくださいってことですよ。


Scala (スカラ、スカーラー、スケイラなどと発音するが、スカラっていう発音が一般的っぽい?)


オブジェクト指向言語と関数型言語の特徴をぶんどったプログラミング言語。

Javaプラットフォーム上で動作する。というわけでJavaのインストールは必須なのですよ、と。
(過去はもうちょっとたくさんのプラットフォームに対応してたけど
諸般の事情で中断)


小規模なスクリプトから大規模システムまでカバーする・・・らしい。本当か?


Javaとの互換性がある。(まぁ、Javaプラットフォームだし)
実行速度はJavaと同等なのだが、コード量はScalaのほうが少ない。
高水準である。(複雑なコードをかかなくてもいいということ)
静的な型つけである(Rubyとかは動的らしい。このへんがRubyとは違うところ)

とりあえずオブジェクト指向がわかっていれば
書くことはできるが、
エレガントにかくためには関数型言語の感覚を理解しないといけない。

おそらくですが、
両方を勉強しているプログラマにとっては
このコードを組むのがたのしくてたまらないってことですね・・・。
(まぁ、両方完璧に理解してるっていうプログラマってあんまりいないですからね)

勉強にはもってこいでもあり、
大規模なシステムにも使えるので業務にももってこいということでしょうか。


第1回 なぜScalaなのか?  (It pro)

とりあえずここを参照して自分なりに噛み砕いてかいてみました。
実際のコードと比較して載せるとそれはそれでわかりやすく解説できると思うんだけど、
まぁ、まだコード組んだこと無いので

それはまたの機会に。

0 件のコメント:

コメントを投稿