RIA開発におけるサービス開発のイロハ


               2011.10.29
   Flex 勉強会 第 156 回@熊本 + RIA セミナー
                ふなくら




         Footer Text
自己紹介


舩倉 純(ふなくら じゅん)
所属: ニークシステムテクノロジー 技術部
バックグラウンド:
 C /FORTRAN / Perl / Java / AS
 Adobe Certified Expert Flex3 with AIR
blog : http://www.noridon.net/weblogs/
twitter: @nod_japan_19xx
Flash : Smart Sketchからのつきあい。
好きなAMF gateway: S2Flex2
   Flash は年賀状(紙)を作るツールだと思ってる。
内容紹介に一言




 RIA開発に必須になるサービス開発について豊富な経験をもとにイロハ
を解説していただきます。また、新しく公開されたサービスを開発する
ためのプラットフォームであるAdobe Digital Enterprise Platformにつ
           いてもご紹介していただきます
お品書き


これまでのケーススタディ
サービス開発について
今、そしてこれから求められるもの
ツール群の紹介
まとめ
ケーススタディ
Flash MX + Flash Remoting (java)


 VBリプレース
 DataGridコンポーネントに苦労
 AS0やその頃に何でも動いてしまうFlash Playerに泣く
 アプリ現役!
 サービス層はjava
    Flash RemotingとASTranslatorで最初だけ苦労
Flex2   ベータ〜リリース〜Flex3リリース


 案件なしの不遇の時代
 S2Flex2や実験、夜中のコンサルもどき
 FxUGで案件やってないのに参加率⾼い、趣味でやっている⼈状態


 S2Flex2が熊本で誕生する。
サービス開発について
RIA開発の要素


 クライアントサイド
  機能性、ビジュアライズ、UX
 サーバサイド
  計算、解析、業務
 サービス
  クライアントとサーバをつなぐ窓口




  クライアントサイド   サービス   サービス   サーバサイド
クライアントのプラットフォーム

Web
HTML with JavaScript/CSS
Cross-compile
Adobe AIR (AS3, MXML)
PhoneGap (JS, HTML)
Titanium (JS, HTML)
Native (only choose one)
Objective-C (iOS)
Java (Android)
C#/Silverlight/XAML (Windows)



                                10
RIA




      クライアントサイド




      クライアントサイド




      クライアントサイド   サービス   サービス   サーバサイド




      クライアントサイド
サーバサイドのプラットフォーム

Java
PHP
Ruby(on Rails)
ColdFusion




                  12
サーバサイドの選択肢


言語の選択
 Java
 PHP
 Ruby
 Pyson
 ColdFusion
 :


通信、データフォーマットの選択
 AMF or text / XML
 HTTP/ WebService(SOAP) / Rest
RIA開発



                             サーバサイド
   クライアントサイド




                             サーバサイド
   クライアントサイド




   クライアントサイド   サービス   サービス   サーバサイド




   クライアントサイド                 サーバサイド
●ミ ヾ(‘A`ヾ) <-丸投げしたい..




 考えること、やることたくさんすぎ
Java


 Adobe LiveCycle Data Services
   ADEP Data Services


 BlazeDS


 GraniteDS


 S2Flex2


 WebORB for java


 T2Framework
LCDS3.xまでのアーキテクチャ




     Flex




     AIR
ADEP Data Services 4.6のアーキテクチャ



      Flex/AIR

       Java


    HTML5/JS


     Android



     Objective-C
PHP


 OpenAMF
 AMFPHP
 WebORB for PHP
 ZendFramework(ZendAMF)




                          http://www.silexlabs.org/amfphp/
Ruby


 Ruby AMF
   http://code.google.com/p/rubyamf/


 WebORB for Rails
   http://www.themidnightcoders.com
   /products/weborb-for-
   rails/overview.html
Zamf Browser




 http://www.zamfbrowser.org
 Zend FrameworkのAMFGatewayのサービスブラウザ
 サーバ接続してサービスの呼び出しテストおよびAS3コードの生成
ZamfBrowser


              http://www.zamfbrowser.org/
DcD Modeler




              Flash Builder 4.5を使ったモデリング&コード生成
Ruby on Rails extension for FlashBuilder4




     http://dcdror.riaforge.org/

     Ruby On Rails + WebORBでのサービス生成
     Flash Builder 4.5だと動作が..?
BlazeMonster




http://sujitreddyg.wordpress.com/blazemonster/
BlazeDSを使ったServiceBrowser,CodeGenerator
AMFPHP - ServiceBrowser




 http://www.silexlabs.org/amfphp/
 Service Browser + Code Generator
まとめ


RIA開発では3大要素がある
 - ひとつひとつが乗り越えることが多い
 - サービス開発くらいは既存の資産や技術を使って生産性をあげたい。


ツールを使って生産性を上げた分UXやサーバ処理に⼒をかける。
 - クライアント側のUX Design
 - マルチクライアント
Resource

 Flash Builder 4.5

 Adobe ADEP Data Services for Modler
   Flash Builder 4.5のHelp -> 新規ソフトウェアをインストール


 Ruby on Rails extension for FlashBuilder4 Blog Using the Ruby On Rails
 plugin from FlashBuilder4
   http://dcdror.riaforge.org/blog/index.cfm/2009/10/9/Using-the-plugin-from-
   FlashBuilder4


 WebORB関連(Java /PHP / Rails )
  http://www.themidnightcoders.com/products.html



 AMFPHP
   http://www.silexlabs.org/amfphp/
Resource


 GraniteDS
 http://www.graniteds.org/confluence/pages/viewpage.action?pag
 eId=229378

 ZAMF Browser
   http://www.zamfbrowser.org/


 BlazeMonster
   http://sujitreddyg.wordpress.com/blazemonster/


 Flex + LL連携(Ruby、Python、PHP) デベロッパーセンター
 http://www.adobe.com/jp/devnet/flex/articles/flex_plus_ll.html

『RIA開発におけるサービス開発のイロハ』