2015年3月18日水曜日

データ駆動型で変わること

昨年日本の経済産業省が「データ駆動型(ドリブン)イノベーション創出戦略協議会」を立ち上げた、大変良いことだと感じた。
ようやく日本のソフトウェア業界が、「オブジェクト指向」や「アジャイル開発」の呪文から解放され、次の流れが始まる期待がします。

データ駆動型で変わることはなにか、一番は基盤又はエンジンを作成している層とデータを作成している層の責任分界点が明確に分割できることだと私は考えています。
今まで、オブジェクト指向でも確かに基盤やフレームワークの層とこれを利用するアプリケーションの層に二分されていましたが、どちらも仕様の変更が頻繁になる時期がありようやく落ち着いてくると、次のデバイスやインフラの流れで再利用が殆ど行われないできました。システムサイドの仕事がなくならなくて良いのでしょうが、ユーザは何やらテクノロジーが変化しているのでしょうがない事態にしか思えません。
データ駆動型は別の意味でデータ中心的な開発方法であり、データ宣言やデータ定義が開発の中心になり、開発が安定し再利用率も向上することが予想されます。

方法論についてはこれぐらいにして。

ここで紹介したかったのは、JavaScriptでのデータ駆動型の成功例です。
D3JSは有名なフレームワークで既に誰でも知っていることと思いますが、SceneJSは検索でヒットする件数が非常に少なく、あまり知られていないです。

SceneJSとは「ブラウザの3Dを扱うエンジン」で、非常に容易にWebGLを利用した3Dを扱うことができます。他にもThreeJS,BabylonJS,Away3D,JSC3Dがありますが、データ駆動型ではありません。

SceneJSの特徴は次のような感じです。
1.JSONのNodeデータを階層型に設定するだけで3Dの画面を完成できる
2.階層的に定義した情報を、再利用して複雑な構造の物体を作成できる
3.データの判断、繰り返し等の手順も定義できる
4.非常に整理されたスクリプトで構築でき、人のソースの可読性が高い

ただし、欠点もありリアル感が大事な影の表現ができません。自分が扱っているPCでは時々動作が重くなります。
多分、あまり注目されていない理由は、スマホには現在のところ向いていないことだと思います。

今後注目されるデータ駆動型開発の例として一度体験されると面白いフレームだと感じています。
又単なる3Dツールとして、BlenderやMeshLabで作成する別の手段としてSceneJSが使えるとも考えています。





0 件のコメント:

コメントを投稿