2010年12月21日火曜日

PHPからScalaに移行して感じた事

Scala使ってアプリ作り始めて2カ月ほど経ったので感想を書いてみる。
あんまり技術ないのでぬるいプログラマとしての見方になるけどご容赦ください

これまでの経歴

たぶんどういう経歴かでScalaの印象は変わってくると思うので説明。
  • 16歳くらいの時にC言語で初プログラミング
  • その後はC/C++(DirectX)->Java(Applet)->Perl
  • 学生時代はPerl+ActionScript+JavaScript+Java Servlet
  • 仕事初めてからはほぼPHP。あとはJavaScript(jQuery)くらい
  • C~Java系から入ってその後PHP、という所がポイントな気がします
  • マークアップ、デザイン、PMとかもやるのでピュアなプログラマではないです

Scalaのいいところ

  • 静的型付け。C~Javaから始めた人間としては動的形付けはどうにも気持ち悪くてしっくりこない。
  • flatMap、Case class、クロージャとか便利。最近はifとforeach(構文の方)が気持ち悪い
  • 非同期な処理を書きやすい。特にPHPは言語内ではどうしようもない。
  • Javaと比べるとコード量はかなり少なく書ける。記法がC・Java系と同じで読みやすかった
  • [Lift限定?]Ajaxの処理が書きやすい。WebサービスでUI作ってると実感する

Scalaの微妙なところ

  • Javaの資産が使えるとはいえ事例が少なくてよくわからないことも多い
  • なんだかんだでコンパイルに時間はとられるよね
  • 個人で使う分にはいいけど、人口少ないし仕事で使うにはどうかな・・・。
    サービス系はともかく受託のSIでは微妙?

他に検討した言語

  • Java→さすがにもういい
  • Ruby→ちょっと出遅れ感が
  • Python→同じく出遅れ感が
  • Perl→昔使ってたし新しい言語にしたいなあ
  • Erlang→どう使っていいかわかりません
  • Haskell→意味がわかりません
  • LISP→レベルが足りません

Scalaの楽しいところ

  • 程よく難しい。PHPっぽい書き方もできるけどちょっとずつ変えていける
  • Webサービス作るうえで実用性は高い
  • コミュニティが最近活発

まとめ

  • CとかJavaから入って今PHP使ってる人が個人でなんかやるならとても楽しいと思います。ソースは私。
  • JavaScript(jQueryとか)使える人はとっつきやすいかと

0 件のコメント:

コメントを投稿