2015年10月29日木曜日

GX25 インターナショナルミーティングレポート - GeneXus in the short and medium term

このセッションはCTOであるGaston Milano(ガストン・ミラノ)によるGeneXus in the short and medium teamというタイトルで、GeneXusのちょっと先の話になります。








 今回のイベントでは「What's next」といテーマですが、このセッションでのWhat's nextとは「Salto」つまり次期バージョンのGeneXusのお話しです。
 GeneXusではナレッジ・ドリブン・デベロップメント(ナレッジ駆動開発)になっています。ナレッジベースを開発する事により、各ジェネレーターがそれぞれのプラットフォームのアプリケーションを生成します。
 Webジェネレーターでは.NETやJavaでアプリケーションをジェネレートし、Webの標準であるHTML5、CSS3、JavaScript、RWD(レスポンシブWebデザイン)をサポートしています。
スマートデバイスに関しては、AppleはSwiftという新しい言語を出してきました。GoogleはAndroid/Javaを継続、MicrosoftはWindows10でPC、タブレット、携帯電話、Xboxなどクロスプラットフォーム化を狙っています。
Saltoではいずれもサポート予定。
 そして、新しいデバイス用であるウェアラブルジェネレーター。
GeneXusでは一つのナレッジからそれぞれのジェネレターが各プラットフォームのアプリケーションをサポートしていきます。








話は変わってGeneXus上でのモデリング(開発)の話。開発パワー、シンプル化、そして生産性について。




 開発パワーとしてはトランザクションの進化。GeneXusでは「ユーザービュー」という考え方・手法でモデリングを行っていく。(以前、ゴンダ会長のスピーチでありましたが、例えば絵画では遠近法という手法の発明で誰もが立体感のある絵を描くことが出来るようになりました。ソフトウェア開発でも同じように誰もが簡単に開発できるような手法が出来ないものか?というのがGeneXusを作るきっかけになったそうで、ユーザービュー:人から見たシステム、つまりUIを(トランザクションとして)定義していくと、その内部(データ構造)をGeneXusが自動的に設計する(正規化する)という手法を編み出しました。)


トランザクションオブジェクトの進化形としてダイナミックトランザクションというものを追加します。
GeneXusにおいてはトランザクションを定義するという事は項目属性の指定だけでデータにアクセス可能(for eachコマンドやGridコントロール)になりますが、それを拡張して、テーブルだけではない他のリソース(View、サービス、NoSQL、etc)もGeneXus開発者にとっては透過的にアクセスできるようになる。というコンセプトです。
(ダイナミックトランザクションに関しては別途セッションがありましたので、こちらも別エントリーで纏めます。)




続いて、スマートデバイスのモデリングのシンプル化。
SDコンポーネント。WebジェネレターではWebコンポーネントというオブジェクトで画面の部品化を実現した。同じようにスマートデバイス用パネルもコンポーネント化し再利用を可能にします。
もう一つはモバイルアプリケーション用のUX(ユーザーエクスペリエンス)パターン。
これはインターナショナルミーティング用のスマートデバイスアプリですが、スピーカー紹介画面で画面をスワイプすると、それにつられてホダール社長の顔写真が動きます。
こういったユーザーエクスペリエンス(ここでは画面上のエフェクト)。 他にもリスト表示でスクロールアップした時に画面上部のタイトルエリアがスクロールアウトし一覧表示するエリアを広くする。など。それぞれのアプリケーションで同じ様なユーザーエクスペリエンスを実現できます。



他にもノーティフィケーション(通知)、ウェアラブルデバイス、ビーコンなどなど。

続いてWebアプリケーションのモデリング。
Webモデリング(開発)はアブストラクト・レイアウト・エディター→UXの実現→Webスタンダードの品質(アクセシビリティなど)。こういったものの実現もシンプル化します。
マルチデバイス環境ではWebファーストの開発(Web→SD)、SDファーストの開発(SD→Web)、どちらも可能です。


シンプル化の最後はクラウド。PAASとして色々なプロバイダーが提供をしています。それぞれに対してデプロイを素早く、シンプルに出来る事が重要になってきます。


続いて生産性。
ユーザーインターフェイスの開発において実は問題があります。モデルを抽象化して開発できるようになりましたが、今度はインターフェイスデザインの実装が難しくなってしまった。そこでソリューションとして考えられたのが、昨年のイベントで紹介した新しい機能「Live Editing(ライブ・エディッティング)」です。
GeneXus上でユーザーインターフェイスのデザイン(レイアウト)をする時、コントロールの右寄せ・左寄せ、フォント、カラーなど、ビジュアルデザインの設定・調整を行うと、接続したスマートデバイス上で即座に結果が反映されます。つまりライブデザインが行えるようになります。
そして、スマートデバイスで表示している画面(構成情報)をGeneXus上でも表示できるようなりました。これにより画面を構成しているレイヤーごとのプロパティー設定を直感的に簡単に指定できます。
(LiveEditiongに関しては11月のGeneXus Day 2015にてGastonが講演をしますので、その時に実際のデモが見られるでしょう)



モデリングの効率化。開発を進めていくとナレッジベースが巨大化してくる。沢山のオブジェクトを開発するための効率化が必要になってくる。APIジェネレーターやSDTジェネレーターなど、Hidden(見えない)ジェネレター。
そして巨大化したナレッジベースは管理が複雑になります。Evolution3からモジュールオブジェクトが追加されています。モジュールも進化します。ナレッジベースのライブラリー化・共有化が可能になります。












[注意]当レポートはウルグアイでのイベントの模様を報告するものです。情報としてはベータ版や将来予測も含まれており、リリース時と異なる事もあります。あらかじめご了承ください。

0 件のコメント:

コメントを投稿