Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Hello Spring(202109社内勉強会)
Search
shimadamiyuki
September 16, 2021
0
110
Hello Spring(202109社内勉強会)
月一で実施している社内勉強会の資料です(2021.09)
shimadamiyuki
September 16, 2021
Tweet
Share
More Decks by shimadamiyuki
See All by shimadamiyuki
20240912 JJUGナイトセミナー
mii1004
0
250
STORES決済の裏側のはなし(Code Polaris 色んなエンジニアLT大会)
mii1004
0
290
オブジェクト指向がわからない(202201社内勉強会)
mii1004
0
170
たのしい情報収集(202112社内勉強会)
mii1004
0
110
リファクタリング?(202111社内勉強会)
mii1004
0
99
OpenAPI Generator使ってみる(Java女子部ハロウィンLT)
mii1004
0
85
ビルドツールの話(202110社内勉強会)
mii1004
0
130
StreamAPI, Lambdaと仲良くなる(202108社内勉強会)
mii1004
0
130
Javaはじめのいっぽ(202107社内勉強会)
mii1004
0
130
Featured
See All Featured
Stop Working from a Prison Cell
hatefulcrawdad
272
21k
It's Worth the Effort
3n
187
28k
Faster Mobile Websites
deanohume
310
31k
Six Lessons from altMBA
skipperchong
29
4k
A better future with KSS
kneath
239
18k
Building Better People: How to give real-time feedback that sticks.
wjessup
369
20k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
The World Runs on Bad Software
bkeepers
PRO
72
11k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
36
6.1k
The Language of Interfaces
destraynor
162
25k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Transcript
Hello Spring 9⽉チーム会
Springってなんだっけ • Pivotal社が中⼼となってオープンソースで開発されているJavaフレー ムワーク https://spring.io/ https://github.com/spring-projects • Spring Frameworkを中⼼に、⾊々なプロジェクトが集まっている
Springのプロジェクト https://spring.io/projects ・Spring Core(Spring Framework) ・Spring Boot ・Spring Web ・Spring
Data ・Spring Security ・・・など
Spring Framework(Spring Core) Springの⼀番基本的な(コアの 機能を提供する)プロジェクト Springのコア機能で Dependency Injectionが 最初に挙げられている
Springの特徴 Springといえば・・・「DI」と「AOP」 DI(Dependency Injection) ︓依存性の注⼊ AOP(Aspect Oriented Programming) ︓アスペクト指向プログラミング
Dependency Injection クラスが必要とするインスタンスを⾃分でnewするのでは なく、あらかじめ⽤意したインスタンスを注⼊する →クラス間の依存が低くなり、差し替えが容易になる クラスA クラスB DIコンテナ B B
アプリケーションの起動時に、 指定したクラスのインスタンスをDIコンテナに準備 (@Beanや@Componentとか) DIコンテナに準備されているインスタンスを コンストラクタインジェクションや @Autowiredで呼び出して使う
AOP 各コードに散在する共通的な処理を“Aspect”というモジュールとして 別のコードに分離する (ロギング、キャッシング、トランザクション管理など) →共通的な処理を毎回実装する必要がなくなり、Bean⾃体の実装は 本質的なことに集中できる 参考︓ SpringのDIコンテナの動作イメージ(雰囲気)を掴もう https://qiita.com/kazuki43zoo/items/7a0e96573e930ac934ed はじめるSpring
Boot2(有償/⼀部執筆中) https://ik.am/notes Spring 5 & Spring Boot 2ハンズオン https://qiita.com/suke_masa/items/44463518fdbbc13e0087
SpringのProject を作るには Spring initializerを使うのが便利 https://start.spring.io/