「どうしてLLなのか」その前に

グダグダになりそうなので, せめて軸がブレないように今のスタンスを書いておこう.


私は LL(Ruby, Python and more) は「Beyond Java」ではなく, エンタープライズ開発のためのアプローチの一つだと思っている.


最近, メディア等で「Beyond Java」という文脈で LL が紹介される事が多くなった. その中には「行数が少ないので生産量が云々」といった視点で語られる記事も少なからず見かける.
これに関しては, 私も納得はできない. タイプ量や簡潔な表記が有効な場面は存在するとは考えているが, それが単純に生産量に結びつくとは思えない.


しかし, エンタープライズの世界での開発は, 過去と比較した場合, より複雑な要求や困難な問題に直面しているように思う. また, 今後, さらにそれは加速していくようにも感じられる.
そういった場合に, はたして Java という単一のアプローチだけで全て解決できるのだろうか?? っという疑問が以前からあった.


Java は, その複雑な問題を解決するために, ここ数年, 非常にハイエンドな方向に力を入れるというアプローチを取ってきた.
これ自体は正しいが, 反面, 様々な副作用*1も伴ってしまったと思う.


Java で開発を行なう場合に, その恩恵を最大限に享受できる場合には何の問題もないが, ある局面においては, メリットよりも副作用の方が大きい場合がある.
その場合, 副作用によるダメージはお客様か開発者, また, その両方にとって Happy でない結果を招きがちだ.


私はそういった場合には無理をして Java で開発をするのではなく, 別のアプローチがあっても良いのではと考えている.
その一つの手段として, 現時点では LL での開発は悪くないと思っている.


なので, これから「こういった場合には無理せず LL でもいいんじゃないかいな」って感じで書いていく予定.

*1:副作用という表現はどうかと思うが, 自分の中では Java で開発する場合にはある種の制約のようなものが暗黙的に存在しているように感じており, それを仲間内では「副作用」と呼んでいる. なので, 以降では「副作用」と表現していこうと思う.