Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Upcoming SlideShare
[English version] JavaFX and Web Integration
Next
Download to read offline and view in fullscreen.

0

Share

Download to read offline

G* Workshop in Fukuoka - Introduction

Download to read offline

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

Related Books

Free with a 30 day trial from Scribd

See all
  • Be the first to like this

G* Workshop in Fukuoka - Introduction

  1. 1. G* Workshop in Fukuoka 2012/09/01Photo by pacyopi
  2. 2. Who am I?  関⾕谷  和愛  (@kazuchika)  ‣「Groovyイン・アクション」共訳‣「プログラミングGROOVY」共著‣元サン、現⽇日本オラクル勤務‣JGGUG運営委員⻑⾧長
  3. 3. 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 ☞懇親会へ
  4. 4. Special Thanks きしだ  (@kis)  さん ⽇日本オラクル九州⽀支社
  5. 5. JGGUGって? 「じぇいがぐ」と読みます
  6. 6. ⽇日本Grails/Groovyユーザーグループ‣2009年年にGrailsコードリーディングを⺟母体に設⽴立立‣現在メンバ数およそ300名 ‣運営委員9名+サポートスタッフ5名‣Web:  http://www.jggug.org/‣Twitter:  @jggug  (ハッシュタグは#jggug)
  7. 7. JGGUGの活動‣G*ワークショップの定期開催(ほぼ⽉月例例) ‣東京、名古屋、⼤大阪、仙台、福岡!‣デブサミ、JavaOne、JJUG  CCC等への参加‣合宿(年年1回)‣G*Magazine発⾏行行(おおむね季刊)
  8. 8. G*  Magazinehttp://grails.jp/g_mag_jp/ PDF  /  EPUB
  9. 9. Groovyとは? JVM⾔言語っていっぱいあるけど…
  10. 10. スクリプティング オプショナル クロージャ タイピング コレクション演算⼦子オーバーロード リテラル Java  VM上で動作する メタプログラミング 軽量量・動的な⾔言語 XML/JSONサポート GDK  (Groovy  JDK) ビルダー
  11. 11. Groovyのユニークさ 他のJVM⾔言語との違い “Groovyは、Javaを置き換えるのではなく、 あくまでJavaエコシステムの⼀一員として、 より洗練され、進化した次世代Javaプラット フォームの実現を⽬目指しています。” (「プログラミングGROOVY」より)
  12. 12. ビジネス上の おつきあい 家族的・共⽣生 ※あくまで個⼈人的なイメージです
  13. 13. 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
  14. 14. 簡潔さ Groovyの特徴 Java柔軟性 親和性
  15. 15. 簡潔さ•Javaの1/3〜~1/10の記述量量※あくまで個⼈人の感想です•処理理の本質が⾒見見えやすい
  16. 16. // Hello.javapublic class Hello { public static void main(String[] args) { System.out.println("Hello, World!"); }}
  17. 17. // Hello.groovypublic class Hello { public static void main(String[] args) { System.out.println("Hello, World!"); }} Java互換バージョン
  18. 18. // Hello.groovyprintln "Hello, World!" ミニマムバージョン
  19. 19. 簡潔さを実現する要素•定型コードの⾃自動⽣生成•コレクションリテラル記法•演算⼦子オーバーロード•カッコやセミコロンの省省略略•クロージャなど
  20. 20. 柔軟性•動的型付け✓ダックタイピング•メタプログラミング✓MOP  (Meta  Object  Protocol)✓AST変換
  21. 21. ダックタイピングclass Dog { void cry() { println "Bowwow!" }}class Cat { void cry() { println "Meow!" }}void kick(obj) { obj.cry() }kick(new Dog())kick(new Cat())
  22. 22. MOP:メソッドの動的追加String.metaClass.shout = { println delegate.toUpperCase() + "!" }"Groovy rocks".shout() "GROOVY  ROCKS!"が表⽰示さ れる
  23. 23. Java親和性•バイナリレベル互換•ソースレベル互換•実⾏行行環境が共通•ツールの共有・内蔵•⽂文化の共有
  24. 24. 例例: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:".")
  25. 25. 例例:GrapeでTwitter4J バージョン2.2以降降の Twitter4Jを⽤用意せよ、 の意味@Grab(org.twitter4j:twitter4j-core:[2.2,))import twitter4j.*twitter = new TwitterFactory().instancetwitter.updateStatus "デモ実演中 #jggug"
  26. 26. Javaプロジェクトへの7つの導⼊入パターン(改) by  Dierk  Koenig
  27. 27. 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)
  28. 28. Groovyエコシステム ⾔言語だけじゃない!
  29. 29. Spock、Geb、Caelyf、GroovyFXほか多数
  30. 30. と めまGroovyはJavaを補完・強化する最強の相棒。 Javaを愛するあなたも Javaに疲れたあなたも ぜひ本⽇日からお試しください!
  31. 31. プレゼント!

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

Views

Total views

1,914

On Slideshare

0

From embeds

0

Number of embeds

6

Actions

Downloads

3

Shares

0

Comments

0

Likes

0

×