2004年6月3日号

復刻第20弾!

━━━━━━━━━━━━━━━━━━━━━ 2004.06.03 Vol.971 ━━━━━
 ■□■□■
 ■□■□■ 日刊「WEBのツボ!」
 □■□■□              http://www.soho-union.com/
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
                             配信部数 3266部

「続 システムはオブジェクト指向 Ruby & Flash」(#010)
                                                        福井修@Fsys.NET

【○】本日のお題 「 簡潔で奥深いオブジェクト指向スクリプト 」 ━━━━

はや6月に入ってしまいました。蒸し暑い梅雨の季節がやってきますね。
こんにちは、Fsys福井システムリサーチの福井です。

前回「XMLの生成と受け渡し」注1)にてサーバサイドDB連携では、Rubyの特長を
生かして、リッチクライアントにはFlashの特長を生かして、そして受け渡しには
XMLを使うという組み合わせが、いかに簡潔にできるかという例を説明しました。

前回「XMLの生成と受け渡し」について駆け足で進めた分の解説は、次のシリーズ
があればそちらでじっくりやることにして、今回は、本シリーズの最終なので、
まとめ的な話をします。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ 『 簡潔で、奥深い 』
────────────────────────────────────
『 簡潔で、奥深い 』 というのはまさに『 よくできている 』ということでし
ょう。
    
VBという言語が、単体で動作するWindowsプログラムを『簡単に』作ることがで
きたので、市場に受け入れられました。ただインターネットなどネットワーク連
携には、力不足で、マイクロソフト自身に『切られて』しまいました。

Javaは、複雑なC++を 簡単に使いやすくという立場でスタートしました。しかし
その後 重装備になりすぎて
   「“誰もが書けるEJB”を実現する「EJB 3.0」」注2) と迷走しています。
だって「 誰も書けないEJB 」と自覚しているのでしょうから:-p

まあ予算規模1億以上の世界では、優秀な方々もやっておられるので、重装備で
よいのでしょう。しかしながら、予算300万のシステムで、EJBが普及すると
は私には思えません。ほんとうにその土俵では、どうすればよいのでしょう。

システム構築は、建物を建てるのに似ていると思います。

プレハブの物置は、60万でできますが、2階建ては、1千万はいるでしょうし
高層ビルは、何十億、何百億でしょう。

規模に応じて、やり方はかわります。ただし本質的なところは、共通です。

システム開発は、人件費がコストですから、『 簡潔にできる 』という点が一番
コストセーブになります。

単純計算で、簡潔さによる合理化で、1千万かかるところを5百万でできるとし
たら、1億かかるところは5千万で済むことになります。

このあたり PHP推進の動機にもなっています。PHPもPHP5でやっとオブジェクト
指向が強化されます。
まあ現在、手続き的に作られているスクリプトは、リファクタリングの好機が得
られます:-)

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■  プログラム開発とソフト開発とシステム開発
────────────────────────────────────
 さて開発の話題なので少し「プログラム開発」「ソフト開発」「システム開発」
 という表記についてです。

 「プログラム開発」と「ソフト開発」と「システム開発」では、ニュアンスが
 少し違います。ではどうちゃうねん?という疑問にひとつ解釈を。

プログラム開発は『閉じた』部品 という感じですし、システム開発は『開いた』
しかけという感じでしょうか。ソフト開発はその中間ですね。関連要素の規模が
異なってきます。

・「プログラム開発」は、1本単位での作成のイメージです。

   「ちょっとこのFlashActionScript作って」
     -> 「 ほいほい 出来ました 10万円 です。」
     てな感じで、作るだけ。設置や面倒は、注文者が見るという感じ。

・「ソフト開発」は、ある機能を実現するために、ある程度の規模で、設計や実
    装・設置、テスト、確認を行うイメージで、まあ画面に向かっていて収束
    する狭い感じ。
    それでも何十万〜何百万程度。

・「システム開発」は、ハードや、外部環境(経営レベルでの意識、現場操作者
    の指導)の方向付け・調整も含めて、最終顧客も含め関係する人たち(ステ
    ークホルダー)の「開いた」世界で、ある成果を達成する感じ。
    何百万〜何千万、何億。

  例でいうと たとえば 家具を買うのが、プログラム開発で、車を買って使うの
がソフト開発で、家を建てるのは、システム開発という規模の違いな感じです。
家を建てるには配管工事など外とのやりとりもありますし、風呂場、トイレや台
所..いろいろあります。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ それなりに、それなりに
────────────────────────────────────
業務の基幹となるシステム(たとえば不動産業の検索システム)は、どの範疇に
なるでしょうか?

ホームページにCGIを拡張してできることには、それなりに予算規模に比例しま
す。

10万円では、家は建ちません。 まあ家具なら買えるでしょう。
また1ケ月借りるだけなら可能ですね。


Web-DB連携システムは、通常関係要素が多くなりますので『開いた』しかけとし
て予算や期間を確保して取り組まないと無理がでます。

Web-DB連携システムをWebの拡張で何千万も予算が確保できるのは、まれでしょ
うから、少ない予算で何とかしたいケースが多いでしょう。

『簡単さ』では、かつての ASP (ActiveServerPages) は、長じていました。
が、『奥深さ』に欠けていたので、VBScriptごとマイクロソフト自身に『切られ
て』しまいました。

『 簡単だが、浅い 』や『 重装備で、やればできる 』は、まあありありでしょ
う。

 『 簡潔で、奥深い 』ことというのは、なかなかありませんが、Rubyは、それを
既に実現しています。Flash ActionScriptは、まだ発展途上ですね。注3)

5千万のシステムを Rubyで2千5百万で構築することができても、10万円では
できませんが。
  

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■ まとめ
────────────────────────────────────
 『 簡潔で、奥深い 』ことというのは、なかなか困難なテーマです。
 何度も磨きぬいた結果でやっと到達できる境地だからです。

このシリーズの連載も最後なので、なぜ
  「 システムはオブジェクト指向 Ruby & Flash 」 なのか
の答えとして
  『 簡潔で、奥深い 』こと
そしてそれは、少ない予算で何とかしたいニーズに応えられること
を再確認しておきます。

補足)ただし ActionScript開発は、まだまだ大変^^;;


次回のシリーズがあれば(あるつもりです^^)、またお会いしましょう。

  
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
※ 注釈、資料、参考情報
────────────────────────────────────
注1) 続 システムはオブジェクト指向 Ruby & Flash (#008)
    「クラスの生成と部品の利用」
http://www.melma.com/mag/02/m00020302/a00000749.html

注2)“誰もが書けるEJB”を実現する「EJB 3.0http://www.atmarkit.co.jp/fjava/kaisetsu/j2eewatch02/j2eewatch02.html

注3) 「Ellipsis」マクロメディアFlash作成ツールの新バージョンをテストへ
http://japan.cnet.com/svc/nlt2?id=20068912


【プロフィール&近況】
福井 修 ( FUKUI Osamu ) o-fukui@po.iijnet.or.jp
福井システムリサーチ http://fsys.net/  主幹。システム構築歴27年。
システム構築エキスパート
日本Linux協会、神戸商工会議所情報処理学会、関西IT共同体 会員
関西ソーホ・デジタルコンテンツ事業協同組合