fc2ブログ

makopi23のブログ

makopi23が日々の生活で感じたことを気ままに綴るブログです。

「JJUG CCC 2019 Fall」に参加しました

2019/11/23(土) 「JJUG CCC 2019 Fall」に参加してきました。

公式サイト
https://ccc2019fall.java-users.jp/

毎年2回、春と秋に開催する日本最大のJavaコミュニティイベントです。
確か初参加が2013年で、ほぼ毎年参加してます。

個人的には週末4連休だったので、ホントは自転車旅に出る予定だったのですが、生憎、毎日雨予報・・・
その代わり、JJUG CCCに参加することにしたのでした。

雨の中、久々に自転車でなく電車で会場に向かいました。
以下、自分用の個人メモ。

Spring Cloud AWSをクラウドエンジニアがいじってみた


セッション紹介: https://jjug-cfp.cfapps.io/submissions/5906d187-f746-4a82-9283-e5cd3c30f306

最近、お仕事でAWS触ってるので参加。特にLambdaやAPI Gateway周りに興味あります。
<<資料が公開されたらココに貼る>>

Lambda
Spring Lambda
RDSと相性が悪い
コネクションプールの実装がむずかしい 
自動スケールアウトされるので最大同時接続数が制御できない
→ DynamoDB
Springのサブプロジェクトでアクセッサーを提供してる

API Gatewayで流量制御すればRDSいけないこともない

仮装ネットワークにLambdaを作らないといけない
Lambdaの負荷が増えると、動作が遅くなる
NICを早く立ち上げる機能が対応してきた
リージョンごとに順次対応中

個人的にSpring Cloud + Lambdaは待ったほうがいい

【ランチセッション】Java によるクラウドネイティブの実現に向けて


セッション紹介: https://jjug-cfp.cfapps.io/submissions/d7ea35d2-a4a2-4516-b516-832f289f8adc

Java によるクラウドネイティブ の実現に向けて from Shigeru Tatsuta


ランチセッションです。無料でそぼろ御飯のお弁当いただきました。感謝!
20191123_010 - コピー

ソフトバンクさんのJava関連の技術導入の歴史が纏められてて、とてもよく調べられているなぁと思いました。
ちょと懐かしい技術もちらほら。
ランチセッションとしては技術的な話も多く、The Twelve-Factor Appとかも登場してて、久々に読み直したりと勉強になりました。

Mavenの真実とウソ


セッション紹介: https://jjug-cfp.cfapps.io/submissions/655c0759-cd88-4f9c-9c05-c3f0e9fb9989

Mavenの真実とウソ from Yoshitaka Kawashima


お仕事でMaven使ってるけど、知識があやふやで行き当たりバッタリで使ってるので参加。
ちなみにMavenの使い方を説明してる日本語のいいサイトってあるんかな?
いつもググって、行き当たりばったりで解決しちゃってるけど、体系的に学べる日本語のいいサイトあれば知りたい。
以下、聴講メモ。
---

・Mavenはやりたいことをセットで提供してくれる。Antに加えて、依存関係の管理の解決をしてくれる。
・Antに依存管理をプラスしたApache Ivyというのが2004年頃に登場した。依存関係だけの解決に特化してる。
・今どきのMavenは、使うJDKのバージョンだけ書いておけばOKになっている。
polyglot-mavenを使えば、XMLでなくYAMLで書ける。
・異なるMavenプラグインを組み合わせるのではなく、自分でプラグインを書いたほうがいい。
・Mavenのライフサイクルで、独立したプラグインをフェーズに割り当てる。
・他の言語だとGroupIdが無かったりして、先に名前取ったもん勝ちだったりする。
・他の言語だとSNAPSHOTがないやつもあるので、配ったりするのも難しいやつある。
・これまで、開発中はSNAPSHOTを使いなさい、と言われてた。
 → 自チームのコントロール下にあるモジュールを開発中でテストしたいときのみにSNAPSHOT使うようにする。
・Mavenの優れた仕組みの1つが、リポジトリがユーザーごとにローカルであること。
・MavenのアーキテクチャはJavaの歴史をなぞったようなものになってる。
・GroupiIdを取ればCentralリポジトリにアップできるので、良いもの作ったら上げるのが良い。

まだまだ間に合うJUnit(再)入門


セッション紹介: https://jjug-cfp.cfapps.io/submissions/2c30c05e-ca85-4435-a673-973c6f02276c



JUnitの基礎がとてもよく纏まってました。

・Javaのテストフレームワーク TestNG は、テスティングと読む。
・TDDはテストを先に書くが、コンパイルだけ通るように、最低限の実装はしてから開始する。

FizzBuzzのライブコーディングがありましたが、1つ前の川島さんのMavenのセッションも踏まえ、MavenとJUnitの簡単な写経してみました。
https://github.com/makopi23/JUnit_Fizzbuzz

ちなみにpom.xmlの設定ですが、Eclipseだと↓の設定だけだとJUnit実行時にエラーになります。



エラーメッセージ: java.lang.NoClassDefFoundError: org/junit/platform/engine/EngineExecutionListener

これを解決するにはpox.xmlにjunit-jupiter-apiだけでなく、junit-jupiter-engineも足す必要がありますね。
あと、Eclipseでテストを実行するときは不要ですが、mavenでtestを実行するときはsurefireプラグインが無いと、テストを実行してくれないようでした。
写経したpom.xmlはこんな感じ。
https://github.com/makopi23/JUnit_Fizzbuzz/blob/master/pom.xml

おそらく紙面の都合上、スライドには書いてなかっただけだと思いますが、念のため。

AngularとSpring Bootで作るSPA + RESTful Web Serviceアプリケーション
- 開発ツールやプロジェクト構成も含めて45分で丸わかり -


セッション紹介: https://jjug-cfp.cfapps.io/submissions/8b6ca4da-a6a0-4526-a874-7bb4e6ad91ee

AngularとSpring Bootで作るSPA + RESTful Web Serviceアプリケーション from ssuser070fa9

https://github.com/Masato1986/angular-spring-parent

お仕事でAngularとSpring MVCの組み合わせ使ってるので、とても参考になりました。

・AngularとSpring MVCのプロジェクトを親プロジェクトにぶらさげる。
・Angularの検証用サーバをポート 4200で起動させる。
・proxy.conf.jsonに4200から8080への転送設定を書く。このファイルをangular.jsonでservr.optionで指定する。
・Spring MVCで@CrossOriginアノテーションでCORS対応する。
・Angularをjarの中に含める。

セッション内で紹介されてたサンプルの簡易版だそうな。

ちょと↑の動かしてみました。こんな感じで起動する簡易アプリですね。
プロジェクト構成とか参考になります。
20191123_030.jpg

Serverless時代のJavaについて


セッション紹介: https://jjug-cfp.cfapps.io/submissions/f82463fd-e9b5-4f79-af0b-8807a4fd77d4

Serverless時代のJavaについて from Amazon Web Services Japan


AWSのセッション聴講2つ目。
Lambdaをちょと触ってて、Javaだとどーやるのがいいんだろ、と思ってたので、とても参考になりました。

・SPAで非同期にしてる場合、コールドスタートが問題にならないことある。
・Lambdaはロジックだけ入れる。他のfat.jarに入れているものはAWSサービスに逃がす。

DIコンテナ入門


セッション紹介: https://jjug-cfp.cfapps.io/submissions/a5ba98a8-bad4-4122-bd61-85f89716c81e



(キーボードの矢印キーでページめくれます)
スライド: https://backpaper0.github.io/ghosts/dicontainer/#1

Springの講師でDIを教えることがあるので、とても参考になりました。
ステップアップセッションで、スライドも手取り足取り親切な構成になっています。
ルックアップじゃなくてインジェクションにする話とか、スコープの話とか、最後の考察も参考になります。

懇親会


前回のJJUG CCCのアンケートに回答して、今回の懇親会のクーポン戴いてたので、今回は懇親会も参加しました。
懇親会も凄い人数ですな~
20191123_020 - コピー

JJUG CCC恒例の回るお寿司w


ビールもお寿司もお惣菜も美味しかった~
お腹いっぱいいただきました。
お知り合いの方と会話したり、LT大会を楽しんだり。

感想


今回は自分の仕事に関わるセッションを中心に聴講しましたが、とても有意義でした。
AWS/サーバレス系が2本、JUnit、DI、Maven、Spring Boot + Angular、などなど。
やっぱ、身近に使ってる技術に関するセッションだと、モチベーションも上がるし、気づきも多いね。

あと、タイムテーブルでステップアップセッションに初心者マーク付いてるけど、中級者以上にも学びは多いと思いました。
自分の知識を補完して整理することができます。

久々に懇親会にも参加したけど、ビールもお寿司も美味しいし、凄い人数でとっても活気がありました。
今回のアンケートに回答すると次回の懇親会無料クーポン貰えるので、次回もぜひ参加したいと思うのです。

あと、スムーズな運営に貢献くださったJJUGスタッフさんやボランティアさんにも感謝。
非常に洗練されたコミュニティ運営とチームワークだったと思います。

冷たい雨が降りしきる中でしたが、参加して良かったです。
また次回も、都合が合えばぜひ参加したいと思うのでした。


関連記事

コメント

承認待ちコメント

このコメントは管理者の承認待ちです

  • 2020/06/19(金) 09:09:24 |
  • |
  • #
  • [ 編集 ]

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://makopi23.blog.fc2.com/tb.php/337-dda15395
この記事にトラックバックする(FC2ブログユーザー)

-->