SlideShare a Scribd company logo
1 of 28
Spring
Framework
が大好きなおはなし
Future Architect
木佐貫 智
本日お伝えしたいこと
 Framework war is Over !?
 SpringはOracle 公認 !?
 Spring Frameworkはすごく楽しい
 カジュアルに旬のテクノロジーを採用できる
2イントロダクション(1/3)
Java Frameworkのおさらい
フレームワーク 開発元 特徴
Spring Framework Pivotal
(DELL/VMWare
傘下)
Spring MVC, DI/AOP, RESTful,
トランザクション マネジメント、メッセージング
他のOSSとの連携に優れている
Java EE Oracle Webアプリケーションを開発するためのライブラリ、
フレームワーク、アプリケーションサーバの仕様の策定
Play Framework Zengularity
(フランスの会社)
ステートレス・アーキテクチャ(サーバに情報を持たない)
Reactive Stream
Struts Apache
Foundation
2008年に開発終了
Viewとロジックの分離に成功したフレームワーク
XMLにバリデーション、URLマッピングを行う
3イントロダクション(2/3)
Spring Project の紹介
4
プロジェクト名 特徴
Spring Framework Spring MVC, DI/AOP, RESTful, トランザクション マネジメント、メッセージング
他のOSSとの連携に優れている
Spring Boot よりカジュアルにWebアプリケーションを作成できるようにするためのフレームワーク
設定ファイルをXMLではなく、コードで書けるようにしている
Spring Security 認証・認可を行うための巨大なサーブレット・フィルター
セキュリティを担保するための機能も充実(CSRF対策・XSS対策)
Spring Cloud AWS Amazonのサービス(SQS・ElastiCache・S3)をSpring Wayで記述できるように
したライブラリ群
Spring Cloud Netflix マイクロサービスを実現するためには、複数のデザインパターンを用いる必要があるが、
デザインパターンの適応が即座にできるようにしたライブラリ群
Spring Data Gemfire インメモリデータグリッド(Pivotal GemFire)を扱うためのライブラリ群
Spring Integration Enterprise Integration Patternsを適応したフレームワーク
プロトコル変換、フィルター、変換、Publish/Subscribe
Spring AMQP RabbitMQを扱うためのライブラリ
Spring XD リアルタイム解析、バッチ処理、データ収集をシンプルにするためのアプリケーション
イントロダクション(3/3)
なぜ、季節の名前なの?
5Framework war is Over !? (1/10)
冬のJ2EE 時代(1999~2006)
~フレームワーク戦争の原点 ~
6Framework war is Over !? (2/10)
フレームワーク戦争に春が訪れた?
7Framework war is Over !? (3/10)
フレームワーク戦争に春が訪れた?
8
Oracle
Framework war is Over !? (4/10)
フレームワーク戦争に春が訪れた?
9
Oracle
Duke
Framework war is Over !? (5/10)
フレームワーク戦争に春が訪れた?
10
Oracle
Duke
Spring Boot !!
Framework war is Over !? (6/10)
フレームワーク戦争の勝利者は!?
11
The fact that Spring has
essentially won the framework
wars
Java Magazine 英語版 Framework war is Over !? (7/10)
フレームワーク戦争の勝利者は!?
12
Java Magazine 日本語
Spring が大人気のサード・パーティ・
フレームワークとして頭角を・・・
Framework war is Over !? (8/10)
Google先生に聞いてみた
13Framework war is Over !? (9/10)
諸説あるようです
14Framework war is Over !? (10/10)
Java EE リリースは遅い
~Java SEリリースの2年遅れ~
15
出典:初めてのJava EE 6──第1回 Java EEとは、
どのようなフレームワークか?(ZDNet)
Java SE7
2011年3月
Java SE6
2006年12月
J2SE 5.0
2004年9月
J2SE 1.4
2002年2月
J2SE 1.3
2002年2月
J2SE 1.2
1998年12月
J2SE 1.1
1997年2月
Spring Framework は楽しい・筋が良い技術(1/11)
Java EE リリースは遅い
~Java SEリリースの2年遅れ~
16
出典:初めてのJava EE 6──第1回 Java EEとは、
どのようなフレームワークか?(ZDNet)
Java SE7
2011年3月
Java SE6
2006年12月
J2SE 5.0
2004年9月
J2SE 1.4
2002年2月
J2SE 1.3
2002年2月
J2SE 1.2
1998年12月
J2SE 1.1
1997年2月
Java SE8
2014年3月
Java EE8
2016 4Q?
使ってみたい技術
はあるけど、リリー
スされない・・・
2,3年前に規格さ
れた技術は忘れ
る・・・
何年も前にSpring
で実装済み・・・
MVC1.0
& HTTP/2
Spring Framework は楽しい・筋が良い技術(2/11)
Spring は Java9 Ready
Java SEと同じリリースタイミング
17
Spring JIRA
Java9
Spring Framework は楽しい・筋が良い技術(3/11)
18
Java9
Q4 2016
Q4 2016
Spring JIRA Spring Framework は楽しい・筋が良い技術(4/11)
Spring は Java9 Ready
Java SEと同じリリースタイミング
19
Java9
Q4 2016
Q4 2016
開発遅延で・・・
Q1 2017
Spring JIRA Spring Framework は楽しい・筋が良い技術(5/11)
Spring は Java9 Ready
Java SEより早くリリース!????
フライング
リリース!??
( OpenJDK利用? )
SpringをJava EEが標準仕様として認める
~ 筋の良い技術は生き残る ~
Java EE
Spring FrameworkとJava EEの関係
バージョン 機能 リリース
Java EE 8 MVC1.0 4Q 2016
Spring MVCを標準化した仕様
Spring MVC 3.1 は 1Q 2012 リリース
Java EE 7 jBatch 2Q 2013
Spring Batchを標準化した仕様
Spring Batch 2.1 は 2010 リリース
Java EE 6 DI/AOP 2Q 2009
Spring DI/AOP, Google Guiceを標準化し
た仕様
DI/AOPは、2005年ごろ
20Spring Framework は楽しい・筋が良い技術(6/11)
エンタープライズITを構築するための
豊富なプロジェクト
21
プロジェクト名 特徴
Spring Framework Spring MVC, DI/AOP, RESTful, トランザクション マネジメント、メッセージング
他のOSSとの連携に優れている
Spring Boot よりカジュアルにWebアプリケーションを作成できるようにするためのフレームワーク
設定ファイルをXMLではなく、コードで書けるようにしている
Spring Security 認証・認可を行うための巨大なサーブレット・フィルター
セキュリティを担保するための機能も充実(CSRF対策・XSS対策)
Spring Cloud AWS Amazonのサービス(SQS・ElastiCache・S3)をSpring Wayで記述できるように
したライブラリ群
Spring Cloud Netflix マイクロサービスを実現するためには、複数のデザインパターンを用いる必要があるが、
デザインパターンの適応が即座にできるようにしたライブラリ群
Spring Data Gemfire インメモリデータグリッド(Pivotal GemFire)を扱うためのライブラリ群
Spring Integration Enterprise Integration Patternsを適応したフレームワーク
プロトコル変換、フィルター、変換、Publish/Subscribe
Spring AMQP RabbitMQを扱うためのライブラリ
Spring XD リアルタイム解析、バッチ処理、データ収集をシンプルにするためのアプリケーション
Spring Framework は楽しい・筋が良い技術(7/11)
どんな技術もSpring Wayで
カジュアルに扱える
 非同期もアノテーションで簡単実装
22
@Asyncって書くだけ
Spring Framework は楽しい・筋が良い技術(8/11)
どんな技術もSpring Wayで
カジュアルに扱える
 RabbitMQ(再実行担保の非同期)も簡単に
23Spring Framework は楽しい・筋が良い技術(9/11)
どんな技術もSpring Wayで
カジュアルに扱える
 RabbitMQ(再実行担保の非同期)も簡単に
24Spring Framework は楽しい・筋が良い技術(10/11)
リアルタイム集計は、
Spring XD で Spark をカジュアルに
 ウインドウ集計(例:5分間隔の売上)はSparkで
25Spring Framework は楽しい・筋が良い技術(11/11)
Spring Projectは
書籍・ドキュメントが豊富です
26クロージング(1/3)
NTTデータ
開発ガイドライン
Spring 公式
ドキュメント
Future コンポーネントの
アーキテクチャ理解にも最適
27
NTTデータ
開発ガイドライン
Spring 公式
ドキュメント
クロージング(2/3)
トランザクションスコープを考慮
して記載しており、オススメ
より良いエンタープライズITを
Springを駆使して作ってみませんか?
28クロージング(3/3)

More Related Content

What's hot

さくっと理解するSpring bootの仕組み
さくっと理解するSpring bootの仕組みさくっと理解するSpring bootの仕組み
さくっと理解するSpring bootの仕組みTakeshi Ogawa
 
MVC 1.0 JSR-371を通してAdopt a JSRに知ろう #jjug_ccc #ccc_r57
MVC 1.0 JSR-371を通してAdopt a JSRに知ろう #jjug_ccc #ccc_r57MVC 1.0 JSR-371を通してAdopt a JSRに知ろう #jjug_ccc #ccc_r57
MVC 1.0 JSR-371を通してAdopt a JSRに知ろう #jjug_ccc #ccc_r57Toshiaki Maki
 
Spring 12年の歴史
Spring 12年の歴史Spring 12年の歴史
Spring 12年の歴史movmov
 
Spring知っておきたい
Spring知っておきたいSpring知っておきたい
Spring知っておきたいYuichi Hasegawa
 
Java EEハンズオン資料 JJUG CCC 2015 Fall
Java EEハンズオン資料 JJUG CCC 2015 FallJava EEハンズオン資料 JJUG CCC 2015 Fall
Java EEハンズオン資料 JJUG CCC 2015 FallMasatoshi Tada
 
Java EE パフォーマンスTips #glassfish_jp
Java EE パフォーマンスTips #glassfish_jpJava EE パフォーマンスTips #glassfish_jp
Java EE パフォーマンスTips #glassfish_jpNorito Agetsuma
 
Java女子部 Java EEハンズオン(応用編)
Java女子部 Java EEハンズオン(応用編)Java女子部 Java EEハンズオン(応用編)
Java女子部 Java EEハンズオン(応用編)Misaki Kajiura
 
Java仮想マシンの実装技術
Java仮想マシンの実装技術Java仮想マシンの実装技術
Java仮想マシンの実装技術Kiyokuni Kawachiya
 
Javaにおけるネイティブコード連携の各種手法の紹介
Javaにおけるネイティブコード連携の各種手法の紹介Javaにおけるネイティブコード連携の各種手法の紹介
Javaにおけるネイティブコード連携の各種手法の紹介khisano
 
Spring Bootでチャットツールを作りながらWebの仕組みを理解しよう!
Spring Bootでチャットツールを作りながらWebの仕組みを理解しよう!Spring Bootでチャットツールを作りながらWebの仕組みを理解しよう!
Spring Bootでチャットツールを作りながらWebの仕組みを理解しよう!Java女子部
 
Seasar2で作った俺たちのサービスの今
Seasar2で作った俺たちのサービスの今Seasar2で作った俺たちのサービスの今
Seasar2で作った俺たちのサービスの今Koichi Sakata
 
#jjug_ccc #ccc_f1 広告システム刷新の舞台裏 - PHPからJavaに変えてみました
#jjug_ccc #ccc_f1 広告システム刷新の舞台裏 - PHPからJavaに変えてみました#jjug_ccc #ccc_f1 広告システム刷新の舞台裏 - PHPからJavaに変えてみました
#jjug_ccc #ccc_f1 広告システム刷新の舞台裏 - PHPからJavaに変えてみましたYahoo!デベロッパーネットワーク
 
20160521 大規模映像配信サービスの Java8による全面リニューアルの裏側
20160521 大規模映像配信サービスの Java8による全面リニューアルの裏側20160521 大規模映像配信サービスの Java8による全面リニューアルの裏側
20160521 大規模映像配信サービスの Java8による全面リニューアルの裏側賢 秋穂
 
WildFly Swarmではじめる「パーツとしてのJavaEE」
WildFly Swarmではじめる「パーツとしてのJavaEE」WildFly Swarmではじめる「パーツとしてのJavaEE」
WildFly Swarmではじめる「パーツとしてのJavaEE」Hiroaki NAKADA
 
試験にでるSpring
試験にでるSpring試験にでるSpring
試験にでるSpring土岐 孝平
 
Jsf アプリ作ったった
Jsf アプリ作ったったJsf アプリ作ったった
Jsf アプリ作ったったOda Shinsuke
 
ASP.NET Core WebAPIでODataを使おう
ASP.NET Core WebAPIでODataを使おうASP.NET Core WebAPIでODataを使おう
ASP.NET Core WebAPIでODataを使おうDevTakas
 

What's hot (20)

さくっと理解するSpring bootの仕組み
さくっと理解するSpring bootの仕組みさくっと理解するSpring bootの仕組み
さくっと理解するSpring bootの仕組み
 
MVC 1.0 JSR-371を通してAdopt a JSRに知ろう #jjug_ccc #ccc_r57
MVC 1.0 JSR-371を通してAdopt a JSRに知ろう #jjug_ccc #ccc_r57MVC 1.0 JSR-371を通してAdopt a JSRに知ろう #jjug_ccc #ccc_r57
MVC 1.0 JSR-371を通してAdopt a JSRに知ろう #jjug_ccc #ccc_r57
 
Spring 12年の歴史
Spring 12年の歴史Spring 12年の歴史
Spring 12年の歴史
 
Spring知っておきたい
Spring知っておきたいSpring知っておきたい
Spring知っておきたい
 
Hello Java
Hello JavaHello Java
Hello Java
 
Java EEハンズオン資料 JJUG CCC 2015 Fall
Java EEハンズオン資料 JJUG CCC 2015 FallJava EEハンズオン資料 JJUG CCC 2015 Fall
Java EEハンズオン資料 JJUG CCC 2015 Fall
 
Java EE パフォーマンスTips #glassfish_jp
Java EE パフォーマンスTips #glassfish_jpJava EE パフォーマンスTips #glassfish_jp
Java EE パフォーマンスTips #glassfish_jp
 
Java女子部 Java EEハンズオン(応用編)
Java女子部 Java EEハンズオン(応用編)Java女子部 Java EEハンズオン(応用編)
Java女子部 Java EEハンズオン(応用編)
 
Java仮想マシンの実装技術
Java仮想マシンの実装技術Java仮想マシンの実装技術
Java仮想マシンの実装技術
 
Javaにおけるネイティブコード連携の各種手法の紹介
Javaにおけるネイティブコード連携の各種手法の紹介Javaにおけるネイティブコード連携の各種手法の紹介
Javaにおけるネイティブコード連携の各種手法の紹介
 
Spring Bootでチャットツールを作りながらWebの仕組みを理解しよう!
Spring Bootでチャットツールを作りながらWebの仕組みを理解しよう!Spring Bootでチャットツールを作りながらWebの仕組みを理解しよう!
Spring Bootでチャットツールを作りながらWebの仕組みを理解しよう!
 
Seasar2で作った俺たちのサービスの今
Seasar2で作った俺たちのサービスの今Seasar2で作った俺たちのサービスの今
Seasar2で作った俺たちのサービスの今
 
#jjug_ccc #ccc_f1 広告システム刷新の舞台裏 - PHPからJavaに変えてみました
#jjug_ccc #ccc_f1 広告システム刷新の舞台裏 - PHPからJavaに変えてみました#jjug_ccc #ccc_f1 広告システム刷新の舞台裏 - PHPからJavaに変えてみました
#jjug_ccc #ccc_f1 広告システム刷新の舞台裏 - PHPからJavaに変えてみました
 
Spring3.1概要x di
Spring3.1概要x diSpring3.1概要x di
Spring3.1概要x di
 
20160521 大規模映像配信サービスの Java8による全面リニューアルの裏側
20160521 大規模映像配信サービスの Java8による全面リニューアルの裏側20160521 大規模映像配信サービスの Java8による全面リニューアルの裏側
20160521 大規模映像配信サービスの Java8による全面リニューアルの裏側
 
WildFly Swarmではじめる「パーツとしてのJavaEE」
WildFly Swarmではじめる「パーツとしてのJavaEE」WildFly Swarmではじめる「パーツとしてのJavaEE」
WildFly Swarmではじめる「パーツとしてのJavaEE」
 
試験にでるSpring
試験にでるSpring試験にでるSpring
試験にでるSpring
 
Jsf アプリ作ったった
Jsf アプリ作ったったJsf アプリ作ったった
Jsf アプリ作ったった
 
ASP.NET Core WebAPIでODataを使おう
ASP.NET Core WebAPIでODataを使おうASP.NET Core WebAPIでODataを使おう
ASP.NET Core WebAPIでODataを使おう
 
SpringMVC
SpringMVCSpringMVC
SpringMVC
 

Similar to Spring frameworkが大好きなおはなし

株式会社インタースペース 沖本様 登壇資料
株式会社インタースペース 沖本様 登壇資料株式会社インタースペース 沖本様 登壇資料
株式会社インタースペース 沖本様 登壇資料leverages_event
 
Pure JavaEE or Spring #glassfishjp
Pure JavaEE or Spring #glassfishjpPure JavaEE or Spring #glassfishjp
Pure JavaEE or Spring #glassfishjpToshiaki Maki
 
JJUG CCC 2015 Fall keynote
JJUG CCC 2015 Fall keynoteJJUG CCC 2015 Fall keynote
JJUG CCC 2015 Fall keynote心 谷本
 
今年はJava進化の年!今知っておくべき新しいJava
今年はJava進化の年!今知っておくべき新しいJava今年はJava進化の年!今知っておくべき新しいJava
今年はJava進化の年!今知っておくべき新しいJavaTakashi Ito
 
Play!framework2.0 introduction
Play!framework2.0 introductionPlay!framework2.0 introduction
Play!framework2.0 introductionmasahitojp
 
PlayFramework1.x基礎編
PlayFramework1.x基礎編PlayFramework1.x基礎編
PlayFramework1.x基礎編Asami Abe
 
Beginning Java EE 6 勉強会(1) #bje_study
Beginning Java EE 6 勉強会(1) #bje_studyBeginning Java EE 6 勉強会(1) #bje_study
Beginning Java EE 6 勉強会(1) #bje_studyToshiaki Maki
 
Scalaでのプログラム開発
Scalaでのプログラム開発Scalaでのプログラム開発
Scalaでのプログラム開発Kota Mizushima
 
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用de:code 2017
 
[ダウンロード推奨]OOW2017 and Javaone2017 report Daisuke Nishino(Sompo Systems)
[ダウンロード推奨]OOW2017 and Javaone2017 report Daisuke Nishino(Sompo Systems)[ダウンロード推奨]OOW2017 and Javaone2017 report Daisuke Nishino(Sompo Systems)
[ダウンロード推奨]OOW2017 and Javaone2017 report Daisuke Nishino(Sompo Systems)Daisuke Nishino
 
20130511 jjug ccc講演 さらばjsp JAXBとmixer2
20130511 jjug ccc講演 さらばjsp JAXBとmixer220130511 jjug ccc講演 さらばjsp JAXBとmixer2
20130511 jjug ccc講演 さらばjsp JAXBとmixer2Y Watanabe
 
福井イベント
福井イベント福井イベント
福井イベントYoshio Terada
 
これからのJDK/JVM 何を選ぶ?どう選ぶ?
これからのJDK/JVM 何を選ぶ?どう選ぶ?これからのJDK/JVM 何を選ぶ?どう選ぶ?
これからのJDK/JVM 何を選ぶ?どう選ぶ?Takahiro YAMADA
 

Similar to Spring frameworkが大好きなおはなし (20)

株式会社インタースペース 沖本様 登壇資料
株式会社インタースペース 沖本様 登壇資料株式会社インタースペース 沖本様 登壇資料
株式会社インタースペース 沖本様 登壇資料
 
Apex Test Plusの紹介
Apex Test Plusの紹介Apex Test Plusの紹介
Apex Test Plusの紹介
 
Pure JavaEE or Spring #glassfishjp
Pure JavaEE or Spring #glassfishjpPure JavaEE or Spring #glassfishjp
Pure JavaEE or Spring #glassfishjp
 
Play jjug2012spring
Play jjug2012springPlay jjug2012spring
Play jjug2012spring
 
JJUG CCC 2015 Fall keynote
JJUG CCC 2015 Fall keynoteJJUG CCC 2015 Fall keynote
JJUG CCC 2015 Fall keynote
 
110409 slintky lt
110409 slintky lt110409 slintky lt
110409 slintky lt
 
今年はJava進化の年!今知っておくべき新しいJava
今年はJava進化の年!今知っておくべき新しいJava今年はJava進化の年!今知っておくべき新しいJava
今年はJava進化の年!今知っておくべき新しいJava
 
Play!framework2.0 introduction
Play!framework2.0 introductionPlay!framework2.0 introduction
Play!framework2.0 introduction
 
Spring.project
Spring.projectSpring.project
Spring.project
 
Spring framework
Spring frameworkSpring framework
Spring framework
 
PlayFramework1.x基礎編
PlayFramework1.x基礎編PlayFramework1.x基礎編
PlayFramework1.x基礎編
 
Beginning Java EE 6 勉強会(1) #bje_study
Beginning Java EE 6 勉強会(1) #bje_studyBeginning Java EE 6 勉強会(1) #bje_study
Beginning Java EE 6 勉強会(1) #bje_study
 
Scalaでのプログラム開発
Scalaでのプログラム開発Scalaでのプログラム開発
Scalaでのプログラム開発
 
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
 
[ダウンロード推奨]OOW2017 and Javaone2017 report Daisuke Nishino(Sompo Systems)
[ダウンロード推奨]OOW2017 and Javaone2017 report Daisuke Nishino(Sompo Systems)[ダウンロード推奨]OOW2017 and Javaone2017 report Daisuke Nishino(Sompo Systems)
[ダウンロード推奨]OOW2017 and Javaone2017 report Daisuke Nishino(Sompo Systems)
 
20130511 jjug ccc講演 さらばjsp JAXBとmixer2
20130511 jjug ccc講演 さらばjsp JAXBとmixer220130511 jjug ccc講演 さらばjsp JAXBとmixer2
20130511 jjug ccc講演 さらばjsp JAXBとmixer2
 
福井イベント
福井イベント福井イベント
福井イベント
 
Groovyコンファレンス
GroovyコンファレンスGroovyコンファレンス
Groovyコンファレンス
 
Spring Boot概要
Spring Boot概要Spring Boot概要
Spring Boot概要
 
これからのJDK/JVM 何を選ぶ?どう選ぶ?
これからのJDK/JVM 何を選ぶ?どう選ぶ?これからのJDK/JVM 何を選ぶ?どう選ぶ?
これからのJDK/JVM 何を選ぶ?どう選ぶ?
 

Spring frameworkが大好きなおはなし

Editor's Notes

  1. フューチャーアーキテクト 木佐貫です。 石橋さんの後でとても緊張しておりますが、 私からは Spring Frameworkについてお話したいと思います。
  2. 7分という短い時間ですので、 ・ Framework war is Over ・ Spring Framework は凄く楽しい の2つのテーマをお伝えします。
  3. Java Frameworkのおさらいから。 Java フレームワークは複数の種類が存在致しますが、 現在、Spring / Java EE / Play Framework  が有力です。 エンタープライズITとして選択されるのは、 Spring Framework 、Java EEがあげられます。 Spring Frameworkは、VMWare傘化のPivotalという会社がメインで5-6名で作成しています。 Pivotalは、VMWareがAWS・GoogleAppエンジンのようなPaaSの世界を目指して作った組織で、 PaaSサービスを提供しています。
  4. Spring Projectについても先に説明致します。 Spring は複数のプロジエクトが存在します。 Spring Frameworkは、Springの一プロジェクトです。 Spring Frameworkは、Java EEの代替を目指して開発されていたフレームワークです。 なお、Spring Projectは50以上ありますが、 個人的に面白いと感じているプロジェクトをこちらのスライドに記載しています。 Spring Boot という言葉をお聞きすることも多いと思いますが、、 Spring Frameworkをベースに、よりカジュアルにWebアプリケーションを作成できるようにしたプロジェクトです。 他にも、 巨大サーブレットフィルターのSpringSecurity、 AWSのサービスをSpring Wayで記載できるようになる Spring Cloud AWS マイクロサービスを実現するためのライブラリ、Spring Cloud Netflix 証券系で使われる技術である、インメモリデータグリッドを簡単に扱えるSpring Data Gemfire と諸々ございます。 Spring Integrationは、Futureコンポーネントでいうと、CORE-Sに該当します。 エンタープライズのシステム連携に必要なコンポーネントを集約したプロジェクトです。 Springには、このように、さまざまなアーキテクチャに対応するためのプロジェクトがあり、 柔軟に組み合わせ、Spring Wayと呼ばれる表現で統一した書き方が出来るのが最大の魅力です。
  5. 話は変わりますが、なぜSpringと季節の名前が入っているかご存知ですか?
  6. 理由は、Javaフレームワークに冬の時代があったからです。 J2EEの仕様がまだまだ未成熟で、J2EEのアンチテーゼとして様々なフレームワークが作られていきました。 フレームワーク戦争が始まった原点です。
  7. J2EEから始まったフレームワーク戦争ですが、 戦況に大きい変化が見られました。
  8. 4月だからSpring Boot特集??
  9. 英語ページを開いてみると、、、、 Spring has won the framework wars と記載されています
  10. 日本語ページ もしかかして、私の英語力弱い!????
  11. ちょっと納得できないので、 Google 先生に訊いてみました
  12. 諸説あるようです
  13. Java EEと Spring の比較をしましょう。 Java EEは年々開発が遅れており、Java SEのリリースから二年半程度かかっております。
  14. Java EEの仕様策定から、リリースまで二年半もあきがあるため、 出たころには陳腐化しているのが現実です。。。。。
  15. Spring Framework では、新しい技術がすぐに使えるように、 JavaSEのリリースタイミングと合わせています。
  16. Java 9 のリリーススケジュールが変更となったため、 Java 9 出ていないけど、Java9対応のSpring Frameworkが出るという不思議な現象がみられるかもしれません。
  17. 標準以外のフレームワークを使って大丈夫か? と感じられると思いますが、大丈夫です。 Spring Frameworkで作り上げた仕様を、Java EEが追認しているのが実態です。 また、Java EEで策定された仕様はSpring に反映されているため、標準技術は基本的に使用できます。 Framework War is Over はこの辺りからも言われています。
  18. 何より、SpringはエンタープライズITを構築するための豊富なプロジェクトがあります。
  19. そして、どんな技術もSpring Wayでカジュアルに扱えます。 アノテーションひとつで非同期は実現出来ます。 Procinfを書く必要はありません。
  20. Rabbit MQもカジュアルに扱えます。
  21. パラメータークラスを作る必要もありません。 Procinfを書く必要はありません。 ヌルポも発生しません。
  22. リアルタイム集計は、Sparkを使いましょう。 5分当たりの売上をリアルタイムに知りたいなどは、Sparkの得意分野です
  23. 何より、Spring Projectは書籍・ドキュメントが豊富です。
  24. Springは、アーキテクチャを理解して、Spring Wayで書くのが流儀です。 Springのドキュメントはアーキテクチャを必ず説明します。 Future コンポーネントのアーキテクチャ理解にも最適です。
  25. わくわくしませんでしたか? より良いエンタープライズITを Springを駆使して作ってみませんか? ご清聴ありがとうございました。