Programming Diary.

ソフトウェアエンジニアの技術blog

JJUGナイトセミナー「GS Collections 道場」に参加しました

昨日、JJUGナイトセミナー「GS Collections 道場」のGS Collectionsハンズオンに参加しました。

内容

ゴールドマン・サックスの講師の方による説明と資料に基づき、GS Collections KataのExercise1〜5を進めていきました。*1

各Exerciseで学んだ点を簡単にまとめておきます。

  • Exercise1

    • collect, selectの使用
  • Exercise2

    • Predicateを引数に取る各種メソッドの使用(anySatisfy, allSatisfy, count, reject, partition, detect)
    • PredicatesのstaticメソッドからPredicateの生成
  • Exercise3

    • flatCollectの使用
    • targetを指定するcollectの使用(collectの結果を指定したtargetに格納)
  • Exercise4・5

    • ArrayIterateを用いて配列からGS Collectionsの各種メソッドの使用
    • ListIterateを用いてJDKのListからGS Collectionsの各種メソッドの使用
    • ArrayAdapterを用いて配列をMutableListでラップして、GS Collectionsの各種メソッドの使用
    • ListAdapterを用いてJDKのListをMutableListでラップして、GS Collectionsの各種メソッドの使用
感想

2時間にしては内容的にはたくさん詰め込まれているようで、わりと早いスピードで説明されていたので付いていくのがけっこう大変でした。ただ、各Exerciseで演習の時間も10分程度取られたのでその間に頭の中を整理したり、質問したりもできるのでよかったです。

個人的には、Exercise5の演習中に全然関係ないjdk.nashorn.internal.runtimeパッケージのListAdapterを使用していたことになかなか気付かず、うまくいかなくて少し焦りました。

全体的に、説明+演習+解説のセットで進められるので理解しやすく、知識の定着にもつながると思いました。今回のセミナーで、以前の記事(Javaコレクションフレームワークの比較 (JDK8/GS Collections/Guava) - Programming Diary.)で簡単に使用してみたときよりも理解が深まったのでよかったです。

*1:資料中のExercise2は現在のGS Collections Kataではなくなっているので、以降は番号がずれています