Javaな人が今すぐ使えるG*

23
Javaな人が 今すぐ使える G*プロダクト 合同勉強会in大都会岡山 -2012 Winter- hoge駆動 @irof

description

#gbdaitokai のスライドです。

Transcript of Javaな人が今すぐ使えるG*

Page 1: Javaな人が今すぐ使えるG*

Javaな人が今すぐ使えるG*プロダクト

合同勉強会in大都会岡山 -2012 Winter-hoge駆動

@irof

Page 2: Javaな人が今すぐ使えるG*

ところで

Groovyの普及度がわからない

この場には……

Java知ってる人は多いはず

Groovy知らない人は多いはず

でも名前くらいは?

Page 3: Javaな人が今すぐ使えるG*

ところで

Groovyの普及度がわからない

この場には……

Java知ってる人は多いはず

Groovy知らない人は多いはず

でも名前くらいは?

違っても手遅れだから確認しないけど。

Page 4: Javaな人が今すぐ使えるG*

Groovy?

Javaが書ける人なら誰でも書ける

動的なのか静的なのかスクリプト言語なのかどうかも

よくわからない言語

Page 5: Javaな人が今すぐ使えるG*

Groovyがナニモノか?なんてどーでもいいんだ

Page 6: Javaな人が今すぐ使えるG*

すぐに使えるものを二つ紹介

GradleAntやMavenとか使ってますよね?

Spockテストコード書いてますよね?

Page 7: Javaな人が今すぐ使えるG*

ぐれーどる

Page 8: Javaな人が今すぐ使えるG*

Gradle

ビルドシステム

Ant / Maven のイイトコ取り

Groovyは似たモノのイイトコをパクるものと思って間違いない。

Page 9: Javaな人が今すぐ使えるG*

Gradle ビルドスクリプト

Gradle DSLを使う(Groovyの拡張)

ビルドも出来てGroovyにも触れられる!やったあ!

apply plugin: 'java'repositories.mavenCentral()dependencies.testCompile 'junit:junit:4.11'

build.gradle

Page 10: Javaな人が今すぐ使えるG*

Gradleのいいとこ

シンプルなMavenプロジェクトなら即乗り換え可

Antタスク使える(てーか build.xml そのまま読める)

その気になれば何でも出来る

やり過ぎ注意

GradleWrapperは反則だと思う

Page 11: Javaな人が今すぐ使えるG*

Gradleのわるいとこ

しらん

Page 12: Javaな人が今すぐ使えるG*

すぽっく

※写真の人は関係ありません。たぶん。

Page 13: Javaな人が今すぐ使えるG*

Spock

テスティングフレームワーク

一応 BDD に属する。一応。

特徴的なパラメタライズドテストをサポートする。

JUnitの拡張だから、JUnit動くとこなら動く。IDEでも自然に。

Page 14: Javaな人が今すぐ使えるG*

Spock テストコード

@Unrolldef "fizzBuzz(#num) return #res"() { expect: fizzBuzz(num) == res where: num | res 1 | "1" 3 | "Fizz" 5 | "Buzz" 15 | "FizzBuzz"}

Page 15: Javaな人が今すぐ使えるG*

Spock テストコード

@Unrolldef "fizzBuzz(#num) return #res"() { expect: fizzBuzz(num) == res where: num | res 1 | "1" 3 | "Fizz" 5 | "Buzz" 15 | "FizzBuzz"}

Page 16: Javaな人が今すぐ使えるG*

こんな感じ。

Page 17: Javaな人が今すぐ使えるG*

Spock + Gradle

Page 18: Javaな人が今すぐ使えるG*

Spock + Gradle

fizzBuzz(#num) return #res

Page 19: Javaな人が今すぐ使えるG*

Spock + Gradle

fizzBuzz(#num) return #res

Power Assert

Page 20: Javaな人が今すぐ使えるG*

セットアップ関連

Groovy

IntelliJ IDEA: 標準おk

NetBeans: 標準でおk

Eclipse: プラグイン

Page 21: Javaな人が今すぐ使えるG*

セットアップ関連

Groovy

IntelliJ IDEA: 標準おk

NetBeans: 標準でおk

Eclipse: プラグイン

Eclipseやめよう!

Page 22: Javaな人が今すぐ使えるG*

セットアップ関連

Gradle

brew以外しらん。

Spock

GradleでもMavenでも。

ただのライブラリだし。

Page 23: Javaな人が今すぐ使えるG*

しめ

Javaが書けるなら「動くGroovyコード」は絶対書ける。

周りから入るのもいいよ

Gradle, Spockあたりは最適