【Rails関西】軽量の人は繊細な人を兼ねる~JavaからRubyへ
今日のRails関西に行ってきた。
artonさんという大物有名人の講演も聞けて、ワクワクする勉強会だった。
その感想を書いてみる。
【1】Javaはクールな言語だった
artonさんは「Javaも好きです」と言っていた。
Javaは元々こんな特徴があって、10年前はクールな言語と言われていた。
つまり、Javaはインターネットを意識した初めてのプログラミング言語だった。
・仮想マシン(JVM)の上で動く
・バイトコードで読める
・ガベージコレクションがある
・移動コード(セキュリティ機構)を持つ
つまり、リモートホストからローカルホストへ転送され実行される機構を持つ
【2】Javaは現代のCobol~業務アプリは繊細な作り
でも、実際の現場では、Javaで業務アプリを作っても、やっぱり業務アプリは壊れやすい。
そして、広範囲に膨大に使われて、Javaが全てを解決したとはとても言えない現状がある。
最近は、軽量の言語の方がいいのでは、という傾向もある。
・業務アプリケーションに最も使われている
・型があるから安全でしょう(本当?)
・コンパイルするからバグが見つかる(本当?)
・Eclipseという統合開発環境があるから初心者でも簡単
・オブジェクト指向言語だが、今時そうでないプログラミング言語を見つけるのが難しい
・private、interfaceなどの言語仕様があるけれど、今はどの言語でも持っている
【3】それでもJavaには利点がある
にもかかわらず、Javaにはうまい仕掛けがある。
これらをうまく使えば、何かできないか?
・Reflection
・Annotation
・Bytecode Modification
・Java Native Interface
【4】軽量の人は繊細な人を兼ねる~軽量なRubyが繊細な業務アプリへ進出してきた
「軽量の人は繊細な人を兼ねる」という言葉をartonさんから初めて聞き、心揺り動かされた。
つまり、「軽量なRubyが繊細な業務アプリへ進出してきた」ということ。
実際、一部のSIerが、WebアプリをJavaからRubyへシフトしつつある。
このあたりの事情は、倉貫さん(XPユーザーグループ代表)のBlog『JavaからRubyへ―マネージャのための実践移行ガイド』でも取り上げられている。
この傾向の意味は、RubyがITビジネスとして使えるという安心感を示している。
【5】だからRjb(Ruby Java Bridge)
そこで、RubyからJavaライブラリを再利用するするために、Rjb(Ruby Java Bridge)を作ったとの事。
Javaのライブラリはそこら中に転がっているのだから、そのライブラリを再利用すればいいじゃないか、と。
この発想は、PerlのPluggerをRubyからコールして再利用しようという以前の講演のモチベーションと全く同じ。
その仕掛けの詳細はサンプルデモなどを読んでもらえればいいが、講演では、スレッドやスタック回りの開発部分の話がすごく面白かったけれど、時間切れで、もう少し聞きたかった。
artonさんは、何もRailsじゃなくてもASP.NETだって同じようにすぐに出来るよ、とサンプルデモを講演してくれた。
色んな言語での比較は面白い。
僕の少ない業界経験では、MS系のツール(Visual Studio)をフルに使いこなす技術者の生産性はJavaよりも高い。
にも関わらず、やっぱりJavaは面白い。
理由は、.NET系は自動生成したソースコードを解析するのはブラックボックスを触るような感覚で非常に難しいが、Javaなら自分で最初から組まないと動かないので、機構がすごく良く分かる。
同じように、RubyOnRailsも、ソースを最初から最後まで追いかけられるので、機構がすごく良く分かる。
元々、オブジェクト指向という発想はネットワークと相性がいい。
サーバーはオブジェクトに似ている。
だからインターネットを意識した言語、あるいはインターネットのキラーアプリが時代を変えるのだろうと思う。
そんな講演を聞きながら、そして一部のSIerがRubyで実際にシステム構築していく事例を見聞きすると、今と言う時代の技術が変化しつつあるのを感じる。
| 固定リンク
「プログラミング」カテゴリの記事
- Javaのモジュールシステムの考え方をまとめてみた(2022.10.21)
- Javaのモジュールシステムは複雑性をより増している(2022.09.10)
- Javaはなぜ関数型言語になろうとしているのか(2022.09.02)
- Javaのラムダ式の考え方(2022.08.10)
- Javaはオブジェクト指向言語ではなく関数型言語だった~「[増補改訂]関数プログラミング実践入門」はお勧めの本だ(2022.08.06)
「ビジネス・歴史・経営・法律」カテゴリの記事
- ビジネス書の名著はどれ?(2023.09.18)
- 営業は顧客の”購買代理人”である(2023.08.16)
- 第85回IT勉強宴会の感想~概念データモデルからビジネスモデルを構築すべきという考え方(2023.05.13)
- 令和4年度春期試験のITストラテジスト試験第4問をastahでモデル化してみた(2023.04.15)
- ChatGPTで起きている事象の意味は何なのか(2023.04.02)
「コミュニティ」カテゴリの記事
- 第26回redmine.tokyo勉強会の感想~多様性はコミュニティが成功する重要な要因の一つ #redmineT(2024.06.15)
- 『世界一流エンジニアの思考法』が学べる環境を手に入れてかつ継続する方法の感想 #devboost(2023.12.10)
- 第25回東京Redmine勉強会の感想 #redminet(2023.11.05)
- パターンカタログよりもモンスターカタログの方が面白いね #jasstkansai(2023.06.24)
- デブサミ2023の感想(2023.02.11)
コメント