SlideShare ist ein Scribd-Unternehmen logo
1 von 63
Downloaden Sie, um offline zu lesen
もしトラ
       2011/05/28
at レッツゴーデベロッパー2011
       2011/06/17
    at G*ワークショップ
と、ツイートがあり
 ましたので、
今回は、仙台のイベント
「レッツゴーデベロッパー2011」
で、時間の都合で
出来なかったLTを再構築して
   お送りします。
お断り
LT中、実在の
人物・団体が登場し
  ますが、
LTの内容とは
無関係なので、
ご了承下さい
  m(_ _)m
前振り
仙台での
LTにあたり、
と募集したところ、
とか、
とか、
ムチャなツイート
失礼、噛みまみた
心温まるツイート
をいただきました
  ので、
LTの何処かに少し入
れていこうかと。
ということで、
時間もないので、
出落ち部分だけ
 やります。
What's
“もしトラ”
だいたい皆様の
ご想像通りですが、
『もしドラ』の
パロディーです。
もしトラ
 もし     
      トラ
        
        
        
     
「もし幼馴染みの
女の子がバートラ
ンド・メイヤーの
『契約プログラミ
 ング』を読んだ
    ら」
← こんな体で
お前、誰よ
名前:めんま (本間芽衣子)
出身:『あの日見た花の名前を僕達はまだ知らない。』
放送:フジテレビ、関西テレビ、東海テレビ、ほか。
説明:幼少時に亡くなったが、高校生になった
   幼馴染みの「じんたん」の前に現れ、
   「願いを叶えて欲しい」と頼む。
杉浦 孝博
ここから
『もしドラ』風に
 お送りします。
第一章
めんまは『契約プログラミ
  ング』を手に入れた
← こんな体で
  契約
プログラミング
LTの途中ですが、
LTの途中ですが、
オリジナルのLTは、契約プログラ
オリジナルのLTは、契約プログラ
ミングの話と、GContractsの話
ミングの話と、GContractsの話
が続くのですが、
が続くのですが、
出落ちネタはここまでですので、
出落ちネタはここまでですので、
急遽、番組内容を変更して、
急遽、番組内容を変更して、
JavaFX 2.0
   とGroovy

    2011/06/17
 at G*ワークショップ
をお送りします。
をお送りします。
契約プログラミングと
契約プログラミングと
GContractsは、機会があれば
GContractsは、機会があれば
いずれかのG*ワークショップで。
いずれかのG*ワークショップで。
JavaFX 2.0
   とGroovy

    2011/06/17
 at G*ワークショップ
JavaFXとは

JavaFXは、JavaVM上で動作する
リッチクライアント向けのプラット
フォームです。
JavaFX 1.x

 JavaFX 1.xでは、JavaFX Scriptと
 いう言語で開発します。
JavaFX 2.0

 JavaFX 2.0になり、JavaFX自体、
 リッチクライアント向けのライブラ
 リとして生まれ変わろうとしていま
 す。
JavaFX Scriptは...
その代わり...

JavaFXのライブラリ化に伴い、
Javaをはじめ、Groovy, Scala,
JRuby, JythonといったJavaVM上
で動作する言語からJavaFXアプリ
の開発ができるようになりました。
GroovyでJavaFXと言えば

FxBuilderというJavaFX Script
APIをラップするビルダーがありま
す。

http://griffon.codehaus.org/FxBuilder
FxBuilder

 Griffon用のプラグインとして提供さ
 れていますが、スタンドアロンでも
 使用できます。
FxBuilder

 ですが、最新版でもJavaFX 1.2.1
 までしか対応していません。
そんなあなたに

最近、codehausからGroovyFXが
発表されました。
http://groovy.codehaus.org/GroovyFX
GroovyFX

JavaFX 2.0に対応し、Groovyで
JavaFX 2.0アプリの開発を容易に
するビルダーやDSLを提供します。


現在のバージョンは、Alpha 1.0で
す。
コード例 : Java
import   javafx.application.Application;
import   javafx.scene.Group;
import   javafx.scene.Scene;
import   javafx.scene.control.Label;
import   javafx.stage.Stage;

public class Hello extends Application {
    @Override
    public void start(Stage stage) {
        // コンテナ
        Group container = new Group();

         // シーングラフのルート要素を生成し、コンテナを貼る
         Scene scene = new Scene(container, 100, 20);
         stage.setScene(scene);

         // ラベルを生成しコンテナに貼る
         Label label = new Label("Hello, World!");
         container.getChildren().add(label);

         // 表示
         stage.setVisible(true);
    }

    public static void main(String[] args) {
        Application.launch(Hello.class, null);
    }
}
コード例 : Groovy
package demo

import   javafx.application.Application
import   javafx.scene.Group
import   javafx.scene.Scene
import   javafx.scene.control.Label
Import   javafx.scene.text.Font
import   javafx.stage.Stage

class Hello extends Application {
    void start(Stage stage) {
        // シーングラフのルート要素を生成し、コンテナを貼る
        def scene = new Scene(
            new Group(
                new Label(text: 'Hello, World!', font: new Font(20)),
            ),
            100, 30
        )
        stage.scene = scene

         // 表示
         stage.visible = true
    }
}

Application.launch(Hello, null)
コード例 : Groovy+GroovyFX
package demo

import groovyx.javafx.GroovyFX
import groovyx.javafx.SceneGraphBuilder
import javafx.scene.text.Font

GroovyFX.start { primaryStage ->
    new SceneGraphBuilder(primaryStage).stage(
        title: 'Demo',
        width: 100,
        height: 60,
        visible: true
    ) {
        scene (width: 100, height: 30) {
            group {
                label(text: 'Hello, World!',
                       font: new Font(20))
            }
        }
    }
}
デモ

JavaFX 2.0では、WebKitをベース
としたUIコンポーネントをサポート
していますので、WebKitを使った
デモを行います。
デモの環境

Windows 7
Java 6
Groovy 1.8
JavaFX 2.0 Beta SDK (build 30)
※32ビット版
Griffonでも使えるっぽい

Griffon 0.9.3 beta-1で試しました
が、GriffonからもJavaFXと
GroovyFXが使えるっぽいです。
イケテナイところ

エラーメッセージが
わからんとです...(´・ω・`)


プロパティ名を間違えた場合、↓の
2行だけ。

Exception in Application start method
Caught: java.lang.RuntimeException: Exception in Application start method
イケテナイところ
( ゚д゚) ・・・


(つд⊂)ゴシゴシ


(;゚д゚) ・・・


(つд⊂)ゴシゴシゴシ
  _, ._
(;゚ Д゚) …!?
まとめ

JavaFX 2.0はまだベータ段階です
が、リッチクライアントを開発する
際、GroovyFXともども、選択肢の
一つとして検討してみてはいかがで
しょうか。
まとめ

GroovyFXのデモが早く動けば、昨
日(6/16)のJavaFX勉強会でLTとか
何かできたかもしれませんが、動い
たのが今日(6/17)の午前中だったの
で...orz
ということで、
ご清聴ありがとうご
ざいましたm(_ _)m

Weitere ähnliche Inhalte

Was ist angesagt?

Perlのテストがわからない
PerlのテストがわからないPerlのテストがわからない
Perlのテストがわからない
Yusuke Hosokoshi
 
メディア・アートII 第2回 openFrameworks基礎 配列、くりかえし、乱数 ベクトルを使用したアニメーション
メディア・アートII  第2回 openFrameworks基礎 配列、くりかえし、乱数 ベクトルを使用したアニメーションメディア・アートII  第2回 openFrameworks基礎 配列、くりかえし、乱数 ベクトルを使用したアニメーション
メディア・アートII 第2回 openFrameworks基礎 配列、くりかえし、乱数 ベクトルを使用したアニメーション
Atsushi Tadokoro
 
How to manage Cakephp @CakePHP_Fukuoka_2
How to manage Cakephp @CakePHP_Fukuoka_2 How to manage Cakephp @CakePHP_Fukuoka_2
How to manage Cakephp @CakePHP_Fukuoka_2
ichikaway
 
BNN CAMP vol.3  インタラクションデザインの現在―プログラミング初心者のためのopenFrameworks入門 2
BNN CAMP vol.3  インタラクションデザインの現在―プログラミング初心者のためのopenFrameworks入門 2BNN CAMP vol.3  インタラクションデザインの現在―プログラミング初心者のためのopenFrameworks入門 2
BNN CAMP vol.3  インタラクションデザインの現在―プログラミング初心者のためのopenFrameworks入門 2
Atsushi Tadokoro
 
MessagePack RPC によるドキドキ非同期通信 @関ジャバ 2012年度8月
MessagePack RPC によるドキドキ非同期通信 @関ジャバ 2012年度8月MessagePack RPC によるドキドキ非同期通信 @関ジャバ 2012年度8月
MessagePack RPC によるドキドキ非同期通信 @関ジャバ 2012年度8月
Takashi Someda
 
Perlワンライナーで全てのモジュールにuse v5.8.0つける!
Perlワンライナーで全てのモジュールにuse v5.8.0つける!Perlワンライナーで全てのモジュールにuse v5.8.0つける!
Perlワンライナーで全てのモジュールにuse v5.8.0つける!
debug-ito
 
メディア・アート II 第1回: ガイダンス openFrameworks入門
メディア・アート II 第1回: ガイダンス openFrameworks入門メディア・アート II 第1回: ガイダンス openFrameworks入門
メディア・アート II 第1回: ガイダンス openFrameworks入門
Atsushi Tadokoro
 
coma Creators session vol.2
coma Creators session vol.2coma Creators session vol.2
coma Creators session vol.2
Atsushi Tadokoro
 

Was ist angesagt? (20)

Groovy Shell Scripting 2015
Groovy Shell Scripting 2015Groovy Shell Scripting 2015
Groovy Shell Scripting 2015
 
FlexUnit4とMockitoFlex
FlexUnit4とMockitoFlexFlexUnit4とMockitoFlex
FlexUnit4とMockitoFlex
 
Perlのテストがわからない
PerlのテストがわからないPerlのテストがわからない
Perlのテストがわからない
 
TypeScript 言語処理系ことはじめ
TypeScript 言語処理系ことはじめTypeScript 言語処理系ことはじめ
TypeScript 言語処理系ことはじめ
 
Groovy joint
Groovy jointGroovy joint
Groovy joint
 
Opencv by-yancya
Opencv by-yancyaOpencv by-yancya
Opencv by-yancya
 
メディア・アートII 第2回 openFrameworks基礎 配列、くりかえし、乱数 ベクトルを使用したアニメーション
メディア・アートII  第2回 openFrameworks基礎 配列、くりかえし、乱数 ベクトルを使用したアニメーションメディア・アートII  第2回 openFrameworks基礎 配列、くりかえし、乱数 ベクトルを使用したアニメーション
メディア・アートII 第2回 openFrameworks基礎 配列、くりかえし、乱数 ベクトルを使用したアニメーション
 
How to manage Cakephp @CakePHP_Fukuoka_2
How to manage Cakephp @CakePHP_Fukuoka_2 How to manage Cakephp @CakePHP_Fukuoka_2
How to manage Cakephp @CakePHP_Fukuoka_2
 
BNN CAMP vol.3  インタラクションデザインの現在―プログラミング初心者のためのopenFrameworks入門 2
BNN CAMP vol.3  インタラクションデザインの現在―プログラミング初心者のためのopenFrameworks入門 2BNN CAMP vol.3  インタラクションデザインの現在―プログラミング初心者のためのopenFrameworks入門 2
BNN CAMP vol.3  インタラクションデザインの現在―プログラミング初心者のためのopenFrameworks入門 2
 
New features of Groovy 2.0 and 2.1
New features of Groovy 2.0 and 2.1New features of Groovy 2.0 and 2.1
New features of Groovy 2.0 and 2.1
 
MessagePack RPC によるドキドキ非同期通信 @関ジャバ 2012年度8月
MessagePack RPC によるドキドキ非同期通信 @関ジャバ 2012年度8月MessagePack RPC によるドキドキ非同期通信 @関ジャバ 2012年度8月
MessagePack RPC によるドキドキ非同期通信 @関ジャバ 2012年度8月
 
Perlワンライナーで全てのモジュールにuse v5.8.0つける!
Perlワンライナーで全てのモジュールにuse v5.8.0つける!Perlワンライナーで全てのモジュールにuse v5.8.0つける!
Perlワンライナーで全てのモジュールにuse v5.8.0つける!
 
C#でOpenCL with OpenTK + Cloo
C#でOpenCL with OpenTK + ClooC#でOpenCL with OpenTK + Cloo
C#でOpenCL with OpenTK + Cloo
 
ZynqMPのQEMU
ZynqMPのQEMUZynqMPのQEMU
ZynqMPのQEMU
 
秋のVim祭り Rubyを添えて
秋のVim祭り Rubyを添えて秋のVim祭り Rubyを添えて
秋のVim祭り Rubyを添えて
 
Programming camp 2010 debug hacks
Programming camp 2010 debug hacksProgramming camp 2010 debug hacks
Programming camp 2010 debug hacks
 
メディア・アート II 第1回: ガイダンス openFrameworks入門
メディア・アート II 第1回: ガイダンス openFrameworks入門メディア・アート II 第1回: ガイダンス openFrameworks入門
メディア・アート II 第1回: ガイダンス openFrameworks入門
 
enterprise grails challenge, 2013 Summer
enterprise grails challenge, 2013 Summerenterprise grails challenge, 2013 Summer
enterprise grails challenge, 2013 Summer
 
Synverll
SynverllSynverll
Synverll
 
coma Creators session vol.2
coma Creators session vol.2coma Creators session vol.2
coma Creators session vol.2
 

Ähnlich wie もしトラ

Glassfish勉強会(JavaEE6について)
Glassfish勉強会(JavaEE6について)Glassfish勉強会(JavaEE6について)
Glassfish勉強会(JavaEE6について)
Ryo Asai
 
JavaFX 2.0 - リッチクライアントのためのUI基盤
JavaFX 2.0 - リッチクライアントのためのUI基盤JavaFX 2.0 - リッチクライアントのためのUI基盤
JavaFX 2.0 - リッチクライアントのためのUI基盤
Yuichi Sakuraba
 
Python東海GAEやってみた
Python東海GAEやってみたPython東海GAEやってみた
Python東海GAEやってみた
Mori Shingo
 
LT at JavaOne2012 JVM language BoF #jt12_b101
LT at JavaOne2012  JVM language BoF #jt12_b101LT at JavaOne2012  JVM language BoF #jt12_b101
LT at JavaOne2012 JVM language BoF #jt12_b101
Takeshi AKIMA
 
JavaFX & GlassFish 勉強会 Oh! JavaFX 2.0!
JavaFX & GlassFish 勉強会 Oh! JavaFX 2.0!JavaFX & GlassFish 勉強会 Oh! JavaFX 2.0!
JavaFX & GlassFish 勉強会 Oh! JavaFX 2.0!
Yuichi Sakuraba
 
第三回ありえる社内勉強会 「いわががのLombok」
第三回ありえる社内勉強会 「いわががのLombok」第三回ありえる社内勉強会 「いわががのLombok」
第三回ありえる社内勉強会 「いわががのLombok」
yoshiaki iwanaga
 

Ähnlich wie もしトラ (20)

Java FXグラフィックスとアニメーション入門(JJUG CCC 2015 Spring G-7)
Java FXグラフィックスとアニメーション入門(JJUG CCC 2015 Spring G-7)Java FXグラフィックスとアニメーション入門(JJUG CCC 2015 Spring G-7)
Java FXグラフィックスとアニメーション入門(JJUG CCC 2015 Spring G-7)
 
GroovyなAndroidテスト #atest_hack
GroovyなAndroidテスト #atest_hackGroovyなAndroidテスト #atest_hack
GroovyなAndroidテスト #atest_hack
 
Glassfish勉強会(JavaEE6について)
Glassfish勉強会(JavaEE6について)Glassfish勉強会(JavaEE6について)
Glassfish勉強会(JavaEE6について)
 
JavaFX 2.0 - リッチクライアントのためのUI基盤
JavaFX 2.0 - リッチクライアントのためのUI基盤JavaFX 2.0 - リッチクライアントのためのUI基盤
JavaFX 2.0 - リッチクライアントのためのUI基盤
 
From Swing to JavaFX - SwingからJavaFXへのマイグレーションガイド
From Swing to JavaFX  - SwingからJavaFXへのマイグレーションガイドFrom Swing to JavaFX  - SwingからJavaFXへのマイグレーションガイド
From Swing to JavaFX - SwingからJavaFXへのマイグレーションガイド
 
Python東海GAEやってみた
Python東海GAEやってみたPython東海GAEやってみた
Python東海GAEやってみた
 
LT at JavaOne2012 JVM language BoF #jt12_b101
LT at JavaOne2012  JVM language BoF #jt12_b101LT at JavaOne2012  JVM language BoF #jt12_b101
LT at JavaOne2012 JVM language BoF #jt12_b101
 
Visual C++で使えるC++11
Visual C++で使えるC++11Visual C++で使えるC++11
Visual C++で使えるC++11
 
JavaFX & GlassFish 勉強会 Oh! JavaFX 2.0!
JavaFX & GlassFish 勉強会 Oh! JavaFX 2.0!JavaFX & GlassFish 勉強会 Oh! JavaFX 2.0!
JavaFX & GlassFish 勉強会 Oh! JavaFX 2.0!
 
Xtend30分クッキング やきに駆動
Xtend30分クッキング   やきに駆動Xtend30分クッキング   やきに駆動
Xtend30分クッキング やきに駆動
 
EmacsとGlossでお絵描きしてみるよ
EmacsとGlossでお絵描きしてみるよEmacsとGlossでお絵描きしてみるよ
EmacsとGlossでお絵描きしてみるよ
 
これからはじめる SwiftPlayground入門
これからはじめる SwiftPlayground入門これからはじめる SwiftPlayground入門
これからはじめる SwiftPlayground入門
 
Java x Groovy: improve your java development life
Java x Groovy: improve your java development lifeJava x Groovy: improve your java development life
Java x Groovy: improve your java development life
 
何が変わった JavaFX 2.0
何が変わった JavaFX 2.0何が変わった JavaFX 2.0
何が変わった JavaFX 2.0
 
Angular ユーザーなら押さえておきたい! TypeScript と Visual Studio Code の基礎と活用
Angular ユーザーなら押さえておきたい! TypeScript と Visual Studio Code の基礎と活用Angular ユーザーなら押さえておきたい! TypeScript と Visual Studio Code の基礎と活用
Angular ユーザーなら押さえておきたい! TypeScript と Visual Studio Code の基礎と活用
 
第三回ありえる社内勉強会 「いわががのLombok」
第三回ありえる社内勉強会 「いわががのLombok」第三回ありえる社内勉強会 「いわががのLombok」
第三回ありえる社内勉強会 「いわががのLombok」
 
Inside frogc in Dart
Inside frogc in DartInside frogc in Dart
Inside frogc in Dart
 
Pronama 0707 wf4
Pronama 0707 wf4Pronama 0707 wf4
Pronama 0707 wf4
 
Dev love関西 forslideshare
Dev love関西 forslideshareDev love関西 forslideshare
Dev love関西 forslideshare
 
OpenCVとARCoreで作るスタンプAR in 宮崎
OpenCVとARCoreで作るスタンプAR in 宮崎 OpenCVとARCoreで作るスタンプAR in 宮崎
OpenCVとARCoreで作るスタンプAR in 宮崎
 

Mehr von Takahiro Sugiura

Mehr von Takahiro Sugiura (10)

Closures and methodMissing are real
Closures and methodMissing are realClosures and methodMissing are real
Closures and methodMissing are real
 
Introduction to Spock
Introduction to SpockIntroduction to Spock
Introduction to Spock
 
Groovyしたり RPしなかったり あとは時々布教活動したり
Groovyしたり RPしなかったり あとは時々布教活動したりGroovyしたり RPしなかったり あとは時々布教活動したり
Groovyしたり RPしなかったり あとは時々布教活動したり
 
GContractsの基礎
GContractsの基礎GContractsの基礎
GContractsの基礎
 
GroovyからAnime
GroovyからAnimeGroovyからAnime
GroovyからAnime
 
Vert.x.tari.tari
Vert.x.tari.tariVert.x.tari.tari
Vert.x.tari.tari
 
Okiraku!
Okiraku!Okiraku!
Okiraku!
 
ジャパネットQB GPars
ジャパネットQB GParsジャパネットQB GPars
ジャパネットQB GPars
 
Groovy++、来襲
Groovy++、来襲Groovy++、来襲
Groovy++、来襲
 
Tokyo Sky Tree
Tokyo Sky TreeTokyo Sky Tree
Tokyo Sky Tree
 

Kürzlich hochgeladen

Kürzlich hochgeladen (11)

Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 

もしトラ