connpass
http://connpass.com/event/11265/
主催の@grimroseさんが今回から「プログラミングGroovy」の読書会をやるということで、今回から初参加です。
![]() | プログラミングGROOVY (2011/07/06) 関谷 和愛、上原 潤二 他 商品詳細を見る |
場所は横浜のタネマキさんです。JUnitの読書会でお世話になった場所です。
参加者は7名かな。
Groovyは私、初経験なのです。
つーかこの日まで、PCにGroovyさえインストールしてないし・・・
書籍「達人プログラマー」の有名な格言「毎年少なくとも一つの言語を学習する」は、私の毎年の目標なのです。
そんなわけで、この読書会はちょうど良い機会だと思い、参加することに。
あと、私が最も使用する言語であるJavaと親和性が高いこと、制御スクリプトとしてもかなり使えそうであることも、学習を後押しした一因です。
この日は書籍の1章から3.6節「クロージャ」まで、黙読とディスカッションと写経を織り交ぜて進めました。
環境ですが、私はWindows7にGroovyをインストールし、書籍巻末にあるEclipseのPluginを入れました。
コード補完が微妙な部分もありますが、概ねスムーズにコーディング&実行できます。

勉強会にノートPC持っていってコーディングしたのは久々。
私のノートPC、デカくて熱がけっこう凄いので、空冷ファンを持っていかないといけないのです・・・
しかもキーボード上部の数字キーの効きが悪いので、この日はUSBテンキーまで持参した・・・
技術書の「写経」の方法。 1.ローカルで使える SCM を用意 2.「ほんたった」などで対象の本を固定 3.ひたすらサンプルコードを写して実行 4.実行するたびにコミット(コミットログにページ番号を含める) 5.疑問点があったらコミットログや本に書き込む 6.章ごとにタグを打つ
— Takuto Wada (@t_wada) 2010, 2月 12
というわけで @t_wada 氏の教え通り、3.6節までのコードをほぼ全て写経して、実行もしてみました。
写経したコードはGitHubへ一応up。
https://github.com/makopi23/ProgrammingGroovy
ちょとハマった点を1つ挙げておく。
P.78のリスト3.46。
実行結果はこんなカンジ。

(3)で、assertに指定している (1..10).grep{ it % 2 == 0 } をprintlnに渡したのが(1)なんですが、(1)の実行結果は
[2, 4, 6, 8, 10]
になると思いきや、以外なことに
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
になってしまうのです・・・
[2, 4, 6, 8, 10]
と表示させるには、(2)のように全体を丸括弧で囲まないといけません・・・
★感想:
Groovyを触ったの今日がほぼ初なんですが、いろいろ便利な機能がありますねー
クロージャもそうだし、あとスラッシュでリテラル囲むとバックスラッシュがエスケープされる機能とか、地味に便利。
GStringのプレースホルダーも良いですね~
この本が終わったらGradleとかもやってくらしいので、そちらも楽しみです。
惜しむらくは、タネマキに常備してあるジョジョを読む時間がほとんど取れなかったこと・・・ orz
参加の皆様、ありがとーございました。