Spring bootで学ぶ初めてのwebアプリ開発

Preview:

Citation preview

SpringBoot で学ぶ初めての WEB アプリ開発2016/11/18

Spring Day 2016 #jsugてらひで (@terahide27)

ROOM4-5

てらひで@terahide27

某不動産サービスを営む IT会社でインフラからサービスの開発・運用までを見守るお仕事Java/Groovy/RoR/PHPCSP/CSPO/CSMTDD/TOCfE/アニメ / 酒 / ラーメン

深夜アニメのカバレッジ90%http://gigazine.net/news/20160910-anime-2016autumn/

今日お話しすること• SpringBoot のチュートリアルを実際に触りながら以下の話を進めます• Web の歴史• 今の Web (モダン Web )

持って帰ってもらいたいこと• SpringBoot はチュートリアルが充実• SpringBoot のチュートリアルは進めやすい• SpringBoot は怖くない

Web の歴史ー 誕生 ー

黎明期の Web

http://pc.mogeringo.com/archives/44396

Request

Response

「 xx 」がみたい

「 xx 」を返却

SpringMVCチュートリアル

ね?簡単でしょ?

家庭にパソコンが普及

http://blog.goo.ne.jp/nekotop_001/e/831d371079595e0a0b26aa3485acf189

Windows95 の発売

http://pc.mogeringo.com/archives/44396写真提供:ペイレスイメージズ

携帯電話の普及20 世紀終盤〜 21 世紀初頭

持ち運ぶ

企業間連携 API

http://pc.mogeringo.com/archives/44396

SOAPSimple Object Access Protocol

写真提供:ペイレスイメージズ

API - 各ベンダ -

e.g. Google Maps

2007

スマートフォン

http://pc.mogeringo.com/archives/44396

写真提供:ペイレスイメージズ

画面を返す画面からデータへ

データを返す

REST• API の設計様式として普及• アクセスするリソースに対してURL を定形化

• リソースへの操作はメソッドで指定• 多くの場合 JSON を返却

REST

http://pc.mogeringo.com/archives/44396

Request (GET /xx/1)

Response ({name:”xx”,value:”xx”...})

「 xx 」を取得

json を返却

REST

http://pc.mogeringo.com/archives/44396

Request (POST /xxs/1)

Response ({status:”success”})

「 xx 」を保存

json を返却

RESTful Web Service with SpringMVC

チュートリアル

ね?簡単でしょ?

スマートフォン

双方向通信

偉大な先達は知恵を絞った• ロングポーリング• Comet( ロングコネクション )• WebSocket

WebSocketチュートリアル

ね?簡単でしょ?

Spring Data JPA

チュートリアル

ね?簡単でしょ?

現在〜ちょっとだけ未来

スマートフォン

http://pc.mogeringo.com/archives/44396

Reactive• 即応性• 対障害性• 弾力性• メッセージ駆動

再掲:黎明期の Web

http://pc.mogeringo.com/archives/44396

Request

Response

「 xx 」がみたい

「 xx 」を返却

Web におけるメッセージ駆動• X 従来:ブロッキング(同期通信)• O ノンブロッキング(非同期)

まわりを見れば• Javascript node.js• Java JavaFX• Java(Scala) Play framework ( Netty ) • Ruby Volt• PHP React• etc.

Spring は?• Spring 5 (Java 9) でサポート• Play framework と同様に内部で Netty を使用(非 Servlet化)

使い方

http://www.slideshare.net/movmov/20160622-jsug-fromspringframework43to50

Spring Framework 4.3 から 5.0 へ スペシャル サンクス!本橋さん!

まとめ• Spring を覚えることで最新の技術要素も怖くなくなる• Spring を覚えるためにSpringBoot のチュートリアルは進めやす

• SpringBoot は恐くない

ぜひ帰ったらチュートリアルにトライしてみてください

ご参考• 意外と知らない Web の歴史

• https://www.internetacademy.jp/special/history.html• de:code2016 セッション「モダン Web: たった今と、ほんの少し未来の話」フォローアップ

• https://blogs.msdn.microsoft.com/osamum/2016/06/06/the-modern-web-now-and-little-future-story/

• Wikipedia Websocket• https://ja.wikipedia.org/wiki/WebSocket

• リアクティブ宣言• http://www.reactivemanifesto.org/ja

Happy Spring Day !

Recommended