• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
G* Workshop in Fukuoka - Introduction
 

G* Workshop in Fukuoka - Introduction

on

  • 962 views

「G*ワークショップ in 福岡」のイントロダクションで使用したスライド

「G*ワークショップ in 福岡」のイントロダクションで使用したスライド
http://kokucheese.com/event/index/45561/

Statistics

Views

Total Views
962
Views on SlideShare
960
Embed Views
2

Actions

Likes
0
Downloads
1
Comments
0

2 Embeds 2

https://si0.twimg.com 1
http://www.linkedin.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    G* Workshop in Fukuoka - Introduction G* Workshop in Fukuoka - Introduction Presentation Transcript

    • G* Workshop in Fukuoka 2012/09/01Photo by pacyopi
    • Who am I?  関⾕谷  和愛  (@kazuchika)  ‣「Groovyイン・アクション」共訳‣「プログラミングGROOVY」共著‣元サン、現⽇日本オラクル勤務‣JGGUG運営委員⻑⾧長
    • PROGRAM14:30-‐‑‒15:00 イントロダクション @kazuchika Groovy  2.0の新機能15:00-‐‑‒15:30 @uehaj 〜~静かなること静的コンパイルのごとし〜~15:40-‐‑‒16:40 Grails  2.xで始めよう! @tyama16:50-‐‑‒17:30 Gradle  1.xを使ってみよう! @tkz Javaのテストコードを1/4にする17:30-‐‑‒18:00 @bikisuke グルービーなテストを導⼊入しよう! @kis,  @hirosk,  18:00-‐‑‒18:30 ⾃自由LT⼤大会! @toby55kij,  @kiy0taka,   @touchez_̲du_̲bois ☞懇親会へ
    • Special Thanks きしだ  (@kis)  さん ⽇日本オラクル九州⽀支社
    • JGGUGって? 「じぇいがぐ」と読みます
    • ⽇日本Grails/Groovyユーザーグループ‣2009年年にGrailsコードリーディングを⺟母体に設⽴立立‣現在メンバ数およそ300名 ‣運営委員9名+サポートスタッフ5名‣Web:  http://www.jggug.org/‣Twitter:  @jggug  (ハッシュタグは#jggug)
    • JGGUGの活動‣G*ワークショップの定期開催(ほぼ⽉月例例) ‣東京、名古屋、⼤大阪、仙台、福岡!‣デブサミ、JavaOne、JJUG  CCC等への参加‣合宿(年年1回)‣G*Magazine発⾏行行(おおむね季刊)
    • G*  Magazinehttp://grails.jp/g_mag_jp/ PDF  /  EPUB
    • Groovyとは? JVM⾔言語っていっぱいあるけど…
    • スクリプティング オプショナル クロージャ タイピング コレクション演算⼦子オーバーロード リテラル Java  VM上で動作する メタプログラミング 軽量量・動的な⾔言語 XML/JSONサポート GDK  (Groovy  JDK) ビルダー
    • Groovyのユニークさ 他のJVM⾔言語との違い “Groovyは、Javaを置き換えるのではなく、 あくまでJavaエコシステムの⼀一員として、 より洗練され、進化した次世代Javaプラット フォームの実現を⽬目指しています。” (「プログラミングGROOVY」より)
    • ビジネス上の おつきあい 家族的・共⽣生 ※あくまで個⼈人的なイメージです
    • Groovy⼩小史 Groovy  2.0(イマココ) VMwareによる SpringSource買収 SpringSourceに 2012 よるG2One買収 2011 G2One設⽴立立 2010 Guillaume  Laforge⽒氏 2009 が開発リーダーに 2008 Groovy  1.8 2007James  Strachan⽒氏ら Groovy  1.7 によって開発 2006 Groovy  1.6 2005 Groovy  1.5 2004 Groovy  1.0 2003 ⼀一貫したコミュニティ主導のオープンソース開発 JSR-‐‑‒241
    • 簡潔さ Groovyの特徴 Java柔軟性 親和性
    • 簡潔さ•Javaの1/3〜~1/10の記述量量※あくまで個⼈人の感想です•処理理の本質が⾒見見えやすい
    • // Hello.javapublic class Hello { public static void main(String[] args) { System.out.println("Hello, World!"); }}
    • // Hello.groovypublic class Hello { public static void main(String[] args) { System.out.println("Hello, World!"); }} Java互換バージョン
    • // Hello.groovyprintln "Hello, World!" ミニマムバージョン
    • 簡潔さを実現する要素•定型コードの⾃自動⽣生成•コレクションリテラル記法•演算⼦子オーバーロード•カッコやセミコロンの省省略略•クロージャなど
    • 柔軟性•動的型付け✓ダックタイピング•メタプログラミング✓MOP  (Meta  Object  Protocol)✓AST変換
    • ダックタイピングclass Dog { void cry() { println "Bowwow!" }}class Cat { void cry() { println "Meow!" }}void kick(obj) { obj.cry() }kick(new Dog())kick(new Cat())
    • MOP:メソッドの動的追加String.metaClass.shout = { println delegate.toUpperCase() + "!" }"Groovy rocks".shout() "GROOVY  ROCKS!"が表⽰示さ れる
    • Java親和性•バイナリレベル互換•ソースレベル互換•実⾏行行環境が共通•ツールの共有・内蔵•⽂文化の共有
    • 例例:AntBuilderurl = "http://dist.groovy.codehaus.org/distributions/groovy-binary-1.8.0.zip"tmpfile = File.createTempFile("ant", ".zip")ant = new AntBuilder()ant.get(src:url, dest:tmpfile)ant.unzip(src:tmpfile, dest:".")
    • 例例:GrapeでTwitter4J バージョン2.2以降降の Twitter4Jを⽤用意せよ、 の意味@Grab(org.twitter4j:twitter4j-core:[2.2,))import twitter4j.*twitter = new TwitterFactory().instancetwitter.updateStatus "デモ実演中 #jggug"
    • Javaプロジェクトへの7つの導⼊入パターン(改) by  Dierk  Koenig
    • 1.  万能接着剤 Javaのコンポーネントやフレームワークを (Super  Glue) Groovyで糊付け 2.  やわらかな⼼心臓部 Javaアプリの中核にあるビジネスロジックを (Liquid  Heart) Groovy(DSL)でスクリプティング 3.  お化粧 Javaライブラリをラップして使いやすく (Lipstick) 4.  内視鏡⼿手術 Groovyスクリプトを接続する⼩小さな⼝口を設け (Keyhole  Surgery) 保守や診断に活⽤用 5.  無制限の解放 全部Groovyで構築しちゃおう!(Unlimited  Openness) 6.  ゴーストライター Groovyが⽔水⾯面下でコード⽣生成 (Ghost  Writer)7.  ⼩小⼈人さんスクリプト 各種ユーティリティツールをGroovyで作る (House-‐‑‒elf  Scripts)
    • Groovyエコシステム ⾔言語だけじゃない!
    • Spock、Geb、Caelyf、GroovyFXほか多数
    • と めまGroovyはJavaを補完・強化する最強の相棒。 Javaを愛するあなたも Javaに疲れたあなたも ぜひ本⽇日からお試しください!
    • プレゼント!