F-ab(ダウンロードは専用サイトからお願いします)
2006.02.16
 
 
F-abの目的

F-abは、Flashだけが動作するシンプルなブラウザです。既存のWebブラウザと同様、Flashを動作させるための環境を提供します。

Flashは、今やアニメーションのためだけのソフトウェアではありません。企業情報システムのクライアントをも開発できる言語(ActionScript)とコンポーネント(ListやDataGrid等)を備えており、今後、リッチクライアントを開発するためのソフトウェアとして有望です。

弊社がF-abを開発した目的は、Flashを動作させるソフトウェアのための技術的基盤を確立することにありました。一定の技術を確立した現在、これを各種業務アプリケーションやカスタムアプリケーションの開発に応用していきたいと考えています。


F-abの構造

F-abでは、Netscapeプラグイン型のFlash Playerを利用して、Flashを表示しています。Netscapeプラグイン型のFlash Playerは、Macromedia社により開発されたもので、WebブラウザFirefoxSafariで使用されているものと同じです。Mac版では、LibフォルダにあるFlash Player.plugin、Windows版では、同フォルダのNPSWF32.dllが、Flash Playerの実体です。

F-abは、複数のプログラム言語(Java、Transcript、C)で開発されたハイブリッドアプリケーションです。F-abの中核の処理(Model)であるインタネット接続と内部データベースへのアクセスは、Javaが担当しています。LibフォルダにあるBlendCoffee.jarがその実体です。一方、F-abのウィンドウ、ボタン等の画面まわり(View)は、Revolutionというソフトウェアで開発されており、Transcriptという言語で制御されています。Mac版では、LibフォルダにあるBlendCoffeeMac.rev、Windows版では、同フォルダのBlendCoffeeWin.revがその実体です。ModelとViewが明確に分離されていることにより、F-abは、容易に変更とカスタマイズを行うことができます。

ModelとViewをつなぐ部分は、C言語で記述されています。Mac版では、LibフォルダにあるBlendCoffee.bundle、Windows版では、同フォルダのBlendCoffee.dllがその実体です。ここでは、プラットフォーム間の違いを吸収するとともに、F-abの中にFlash Playerを結合させる役割も担っています。

F-abでは、内部データベースとして、Apache Software FoundationのDerbyを使用しており、Flashムービーのキャッシュとして利用しています。つまり、一度表示されたFlashムービーは、このデータベースに保存され、次に同じFlashムービーのリクエストがあれば、ネット経由ではなく、データベースからFlashムービーを取り出します。Flashムービーが、ファイルとしてローカルに残ることはありません。

F-abでチャンネルを指定すると、その情報はサーバに送られ、サーバ側のデータベースが検索され、チャンネルに対応するURLが、F-abに送り返されます。F-abでは、そのURLのFlashムービーが、すでに内部データベースに保存されていれば、データベースから取り出し、そうでなければ、ネット経由でそのFlashムービーを取得します。サーバ側には、ApachePHPMySQLphpMyAdminが配備されています。これらを総称して、チャンネルサーバと呼んでいます。

ホスティングサービスを利用すれば、チャンネルサーバの運用は簡単です。チャンネルサーバが必要とするApache、PHP、MySQL、phpMyAdminは、ホスティングサービス会社のほとんどが提供してるサービスです。月額10米ドル以下でも、このようなサービスを利用できます。現在運用しているチャンネルサーバは、まさにこのようなホスティングサービスを利用しています。

現在のF-abでは、Flashムービを指定するために、0000チャンネルから9999チャンネルまでの10000チャンネルが使用されています。このため、チャンネルサーバのデータベースにチャンネルデータとして、10000レコードが登録されています。現在よりも100倍のチャンネル数が必要ならば、登録レコード数を100倍に増やせばいいのです。しかし、他にも方法があります。F-abが接続するチャンネルサーバを100個にすれば、チャンネル数は100倍になります。また、1つのチャンネルサーバに100個のデータベースを設けても、チャンネル数は100倍になります。チャンネル数は、いろいろな方法で拡張または縮小できます。

F-abの画面の中では、メインとサブの2つのエリアで、同時にFlashムービーが表示されています。メインエリアのFlashムービーは、ユーザがチャンネルを変えれば、内容が変わります。しかし、ユーザがサブエリアの内容を変更することはできません。現在のF-abでは、チャンネルサーバの管理者だけが、サブエリアの内容を変更する仕様になっています。チャンネルサーバの管理者であれば、データベースの登録内容の変更で、メインエリアのFlashムービーに呼応するような内容のFlashムービーを、サブエリアに表示することが可能です。

F-abで動作しているFlashムービーは、TranscriptのHandlerを呼び出すことができます。Transcriptは、F-abのウィンドウ、ボタン等の画面まわりの開発に使用されているRevolutionというソフトウェアのプログラム言語です。Handlerとは、他のプログラム言語のサブルーチン、関数、メソッドに相当します。サブエリアのFlashムービーをクリックすると、メインエリアのFlashムービーが変わるのは、サブエリアのFlashムービーから、あるHandlerが呼び出され、そのHandlerの中でメインエリアのチャンネルを変更する処理を行っているからです。この機能は強力ですが、F-ab専用です。F-ab以外では機能しません。


F-abの応用

既存のWebブラウザを使用した場合、有益なページが1あるとしたら、有害なページが10あると言っても言いすぎではないでしょう。完全に悪意に満ちたページから、悪意ではないが不正確な情報のページまで、有益とは言えないページや公序良俗に反するページで溢れています。F-abでは、管理者がチャンネルサーバにコンテンツの登録をするときに、コンテンツの取捨選択を行うことができます。利用者は、チャンネルサーバに登録されているコンテンツにしかアクセスできません。内容がふさわしくないと思えば、管理者はコンテンツのURLを差し替えるだけです。

このようなF-abの特性は、有害なものから利用者を守る観点、または利用者の集中力を持続させる観点から、多方面の分野で潜在的に、あるいは今すぐにでも有用となるでしょう。中でも教育分野での活用が期待されます。この分野は、すでにFlashがもっとも利用されている分野の一つでもあります。上記の文を「管理者」を「先生」に、「利用者」を「生徒」に置き換えて読み返してみてください。

F-abは、複数のプログラム言語の特徴を生かしたことにより、コンパクトでカスタマイズしやすい構造になっています。F-abの機能の一部を切り出すことも容易です。弊社では、F-abの中で利用されている技術を、各種業務アプリケーションやカスタムアプリケーションに応用していきたいと考えています。ご興味のある方は、ぜひご連絡ください。

連絡先:support@ronri-kobo.com

F-abの潜在能力をご理解していただければ幸いです。



 
Copyright (c) Ronri Kobo, Inc. All rights reserved.
support@ronri-kobo.com