Grails Code Reading 第15回
前回に引き続き、今回も行ってきました。これで3回目。
今回は前回に比べて人が少なかった。。。
なお、前回の第13.8回は第14回とカウントすることになったそうです。
概要
- 2008/11/28(金)CIJ@横浜 19:30 - 21:30
- 実践Groovyスクリプティング
- 関谷さん
- groovylab.org
- JavaWorld 2004年11月号 with 上原氏
- Groovy イン アクション
- 高い
- 難しい
- 入門本が欲しい
本日のお題
- 自作アプリ
- Groat(HTTPサーバ)
- WeatherBot(Twitterボット)
Groat(古い銀貨)
- 動機
- 練習として
- Groovy in ActionにはSimpleWebserver.groovyもある
- groovletも動かしたい
- 普通はServletエンジン上で動かす
- 機能
- 内部構成
- 550行ぐらい
- メインクラス+14クラス
- 550行ぐらい
- ポイント
- CliBuilder
- コマンドライン処理を実装できる
- Commonsのラッパー
- CliBuilder
-
- 機能テスト
- Canoo WebTest
- テストケースもGroovyで書く(XMLでも書けるが)
- 機能テスト
WeatherBot
- 動機
- Rubyで書いたTwitterBotをGroovyで書き直してみた
- 方針
- 既存のJava資産を生かす
- tokyoweather, yokohamaweather
-
- ConfigSlurper
- プロパティファイルをgroovyで書ける
- 複数の設定をマージできる
- Javaに渡す場合にはPropertyConfiguratorでプロパティ化する
- ConfigSlurper
-
-
- 抜けたい場合は例外を使って無理やり抜ける??
- 要素を絞ってからループすべき??
-
-
-
- クロージャの中ではbreakは書けない
- returnで戻る?
- クロージャの中ではbreakは書けない
-
- groovlet
- groovlet内で「println 'Hello'」とあったら標準出力(System.out)ではなく、画面上に表示する(という仕様らしい)
- その仕様がいかがなものかというのは置いといて・・・
- どうやって切り替えるか?
- 今のところカテゴリで無理やり差し替えている
- GroovletEnvironmentクラス
- groovlet内で「println 'Hello'」とあったら標準出力(System.out)ではなく、画面上に表示する(という仕様らしい)