新入社員(新卒)がSpring Fest 2018 に参加してみました

# はじめに
 - 10/31(水) Spiring Fest 2018に参加したので、その感想を書きます。
   - 新人勉強会でSpringを使って学習して行きアプリ開発をするので、どんなことができるか考えるためと、自分の勉強のモチベーションアップになればいいなと思い参加しました。


## Spring Fest概要
公式サイト ：http://springfest2018.springframework.jp/
![chrome_2018-11-02_09-48-08.png](https://qiita-image-store.s3.amazonaws.com/0/302804/9222589b-cf50-6556-a9f4-f3f9e8963140.png)
>日本Springユーザ会（JSUG）は、日本におけるSpring Frameworkの情報交換を目的とし、2006年に設立されたユーザコミュニティです。
Spring Frameworkのさらなる知名度向上や普及促進のため、東京を中心に定期的な交流を行っておりますが、さらなるSpring Frameworkの認知度の向上、普及促進を図るため、本カンファレンスを開催いたします。

>2018-10-31（水）09:30 - 20:30
KFCHall & Rooms
東京都墨田区横網1-6-1 KFCHall & Rooms 

（メールの文章より引用）
一般参加無料です！

# 会場の様子
<img width="768" alt="会場入り口.jpg" src="https://qiita-image-store.s3.amazonaws.com/0/302804/166b7643-9d38-33c2-489c-1d2487451b3f.jpeg">
こちらが会場エントランスです。
受付で、メールで送られていたQRコードを読み取ってもらい、参加できました。
ノベルティやチラシが入ったトートバッグを配っていたので貰いました。
ペンがとてもありがたいです:writing_hand:

![小教室の様子２.jpg](https://qiita-image-store.s3.amazonaws.com/0/302804/7b20e148-053f-5dcb-0f35-0a900f77844c.jpeg)
Room11（初心者向けのセッション）の部屋です。
結構な人が集まっていて、ほぼ毎回立ち見の方がいました。私も11時からのこの回は立ち見で参加しました。
立ち見でも見えやすいような文字の大きいスライドだったのでとても助かりました。
午後は人も落ち着いてきて、座って参加できました。午前中の参加者の方が多いのかな？という印象でした。（初心者向けだけかもしれないです）

![ホールの様子.jpg](https://qiita-image-store.s3.amazonaws.com/0/302804/75513890-0780-9e4f-7022-52dbd92f7588.jpeg)
ホールの様子です。講演会ってかんじで身が引き締まりました（内容は少し難しかったのでいつか分かるようになりたいです。）

 - 各セッションにはTwitterのハッシュタグがあり、参加した人の感想やメモなどがすぐに共有されているのも面白かったです。
 - 後で見直せるようにスライドはスライドシェアなどに共有されている方が多かったです。

# 参加したセッション
1. 11:00～11:45「これからSpringを使う開発者が知っておくべきこと」 [#sf_11](https://twitter.com/search?f=tweets&q=%23jsug%20%23sf_11&src=typd)
2. 14:15～15:00「Spring Bootで作るRestful Web Service」[#sf_13](https://twitter.com/search?f=tweets&q=%23jsug%20%23sf_13&src=typd)
3. 15:30～16:15「Pivotal認定講師が解説！基礎からのOAth2.0とSpring Security5.1による実装」:thinking: [#sh-h4](https://twitter.com/search?f=tweets&q=%23jsug%20%23sf-h4&src=typd)
4. 16:30～17:15「Spring BootでHello Worldのその先へ～」[#sf_15](https://twitter.com/search?f=tweets&q=%23jsug%20%23sf_15&src=typd)

## １．「これからSpringを使う開発者が知っておくべきこと」／土岐 孝平 氏
[スライドはこちら](https://www.slideshare.net/KouheiToki/spring-121307860)

 - <span>@</span>Service、<span>@</span>Autowired ってなんだろう、なんか書いてると動くみたい、といった感覚しかなかったので、詳しく分かりやすく知ることができてすごく満足感が高かったです。
  -  <span>@</span>Service ：Springにオブジェクトを作ってもらってDIコンテナで管理された状態になる
  -  <span>@</span>Autowired　：他のBeanをインジェクションしてほしい、と宣言するアノテーション
     - インジェクジション→依存するオブジェクトを自分で作ったりせず、DIコンテナに渡してもらう
  - <span>@</span>Transactional　：このメソッドでDBトランザクションを起こしてほしい、と宣言するアノテーション
  -  「スレッドセーフ」な書き方をする
  - トランザクションの入れ子をしたいときはクラスを分割する
  - トレースログはAOPを使う、Proxyを自動で作れる（個別のクラスファイルで出力しない）



 - 初心者向け(for beginner)で間違えやすいところをピックアップしていて、4月からの研修でなんとなく聞いたことある程度だった知識が肉付けされて、おまじない感が薄れたことが一番良かったなと思いました。
 - 今度の新人勉強会でのアプリ開発の際にまた見返したいです。

## ２．「Spring Bootで作るRestful Web Service」／大野 渉 氏

 - 環境構築からテストまで開発の流れを説明があり分かりやすかったです。
 - Spring Boot とは、Restfulとは何か、から始まり細かく聞くことができたのですんなり入ることができました。自分でそれぞれ調べてもボンヤリとしか分からないところが多かったのでまとめて聞くとすっきりしたのが良かったです。
   - Spring Boot：Spring Frameworkベースのアプリケーションを手軽に作成することができるフレームワークである。
   - Restful：Webアーキテクチャのひとつ　Restの法則にのっとっている
   - 環境構築がとても楽:sparkles:
     - Dependenciesをボタンでぽちぽち選ぶだけ
 - Spring Bootに内蔵されている機能をフルに使っていけば簡単に色々作れるよ、というお話でした。よく覚えて活用したいなと思います。　    
   - HTTPメソッド
     - GET →サーバーからの状態の読み取り
     - POST →サーバ上で状態の作成
     - PUT →サーバ上で状態の更新
     - DELETE →サーバ上で状態の削除
   - Spring MVC Test Framework：サーブレット使用しないでRest Conntrollerのテストが可能


## ３．「Pivotal認定講師が解説！基礎からのOAuth2.0とSpring Security5.1による実装」／多田 真敏 氏
[スライドはこちら](https://www.slideshare.net/masatoshitada7/oauth-20spring-security-51-121418814)

 - ホールに行ってみたかったので参加しました。
 - 内容は中級者向けとのことですごく難しかったのですが、最新の技術について少し触れることができて良かったです。
   - OAuth2.0 ：オーオース、認可の流れを規定したプロトコル
   - ①リソースオーナー、②リソースサーバー、③クライアント、④認可サーバー
     - 認可サーバーからちゃんと発行されたアクセストークンかどうかをリソースサーバーでチェックする必要があるが、特にやり方はちゃんと決まってない

## ４．「Spring BootでHello Worldのその先へ～ウェブDBプレスのSpringBoot特集で伝えたかったこと＆伝えきれなかったこと～」／藤野 真聡 氏
[スライドはこちら](https://www.slideshare.net/WataruOhno/spring-fest-2018-spring-bootrestful-web-service)
 - [Web+DB PRESS vol106](https://gihyo.jp/magazine/wdpress/archive/2018/vol106)に掲載されていたアプリ（Qiitaをクロールして表示するもの）のコードの解説などでした
   - ミドルウェアとDBを連携したWebアプリ開発
   - MongoDBは使い勝手がいい
   - mavenコマンド　依存関係を見つつ進める
 - いまいちピンときていないので、スライドが公開されたら雑誌自体を読むのも含めてよく復習したいです。
 - デモをしていただいて、コードを見たり、実際にアプリが動いているところを見るのはとてもワクワクしました。

# 感想
 - こういったカンファレンス等に行ったことがなかったので、全員が前のめりで参加している雰囲気も含めて自分の刺激になりました。
 - 勉強会、セミナーといった堅苦しいかんじもなく、かといってゆるい訳でもないので超初心者な私にとっては居心地よかったなと思いました。
 - 時間が1コマ45分というのも、一気にグッと集中して聞けるのでとても助かりました。
 - 会場ごとで階が違って、私が行きたいところは全部11階でした(beginner向けは全部ここでした)。他の場所の様子も知りたいなと思い、ホールに足を運んでみたらまた違った緊張感を感じることができました。（内容は中級者～上級者向けでしたので半分も理解できなくて残念でした。。）
 - 知り合いの方にお会いしたりできたので、懇親会にも参加できればもっと交流できてコネクションの場にもなりそうでした。LT大会も行われると聞いたので、次の機会にはぜひ参加してみたいです。