2021. 9. 12. 08:00ใBack-End ์์ ์ค/Spring Framework
์๋ ํ์ธ์? ์ฃผ๋ํ๋ ์ ๋๋ค.
์ค๋์ Spring์ SOLID์ ๋ํด์ ๊ณต๋ถ ํด ๋ณด๋๋ก ํ๋ ๊ฒ์ด์์.
์ด ๋ด์ฉ์ ์ธํ๋ฐ - ๊น์ํ ๊ฐ์ฌ๋์ ์คํ๋ง ํต์ฌ ์๋ฆฌ๋ฅผ ๊ณต๋ถํ๋ฉด์ ์ ๋ฆฌ ํ์์ต๋๋ค.
๐ ๋ชฉ์ฐจ
01. [Spring] ์คํ๋ง ํต์ฌ ์๋ฆฌ
02. [Spring] ์ข์ ๊ฐ์ฒด ์งํฅ ์ค๊ณ์ 5๊ฐ์ง ์์น (SOLID)
03. [Spring] ๊ฐ์ฒด ์งํฅ ์ค๊ณ์ ์คํ๋ง
04. [Spring] OCP์ DIP ๊ณ ๋ คํ๊ธฐ
05. [Spring] ๊ฐ์ฒด ์งํฅ ์๋ฆฌ ์ ์ฉ - ์๋ก์ด ํ ์ธ ์ ์ฑ
๊ฐ๋ฐ
06. [Spring] AppConfig ๋ฆฌํฉํฐ๋ง
07. [Spring] Ioc, DI Container
08. [Spring] ์คํ๋ง ์ปจํ
์ด๋ ์์ฑ
09. [Spring] ์ฑ๊ธํค ์ปจํ
์ด๋
10. [Spring] Component Scan And Auto wired Start
11. [Spring] ์์กด๊ด๊ณ ์ฃผ์
๋ฐฉ๋ฒ
12. [Spring] Bean Life Cycle Call Back
13. [Spring] Bean Scope
๐ ์คํ๋ง๊ณผ ๊ฐ์ฒด ์งํฅ์ ๊ด๊ณ
์คํ๋ง์ ์๋ ๊ธฐ์ ๋ก ๋คํ์ฑ๊ณผ OCP, DIP๋ฅผ ๊ฐ๋ฅํ๊ฒ ์ง์ํ๋ ๊ฒ์ด์์.
- DI(Dependency Injection) : ์์กด๊ด๊ณ, ์์กด์ฑ ์ฃผ์
- DI Container ์ ๊ณต
์คํ๋ง์ ํด๋ผ์ด์ธํธ ์ฝ๋์ ๋ณ๊ฒฝ ์์ด ๊ธฐ๋ฅ์ ํ์ฅ ํ ์ ์๋ต๋๋ค!
์ฆ, ์ฝ๊ฒ ๋ถํ์ ๊ต์ฒดํ๋ฏ์ด ๊ฐ๋ฐํ ์ ์๋ ๊ฒ์ด์์.
์ ๋ฆฌํ์๋ฉด ๋ชจ๋ ์ค๊ณ์ ์ญํ ๊ณผ ๊ตฌํ์ ๋ถ๋ฆฌํด์ ์ฝ๋ฉํด์ผ ํฉ๋๋ค.
์๋์ฐจ์ ๊ณต์ฐ์ ๋ํด ํ๋ฒ ๋ ์ฌ๋ ค ๋ณด๋ฉด ์ข์์. ์ ์ดํด๊ฐ ๋์ง ์์ผ์ ๋ค๋ฉด ์ฌ๊ธฐ์์ ํ์ธ ํ์ค ์ ์์ต๋๋ค!
Application ์ค๊ณ๋ ๊ณต์ฐ์ ์ค๊ณ ํ๋ฏ์ด ๋ฐฐ์ญ๋ง ๋ง๋ค์ด๋๊ณ , ๋ฐฐ์ฐ๋ ์ธ์ ๋ ์ง ์ ์ฐํ๊ฒ ๋ณ๊ฒฝํ ์ ์๋๋ก ๋ง๋๋ ๊ฒ์ด ๊ฒฐ๊ตญ ์ข์ ๊ฐ์ฒด ์งํฅ ์ค๊ณ์ธ ๊ฒ์ด์์.
์ด์์ ์ผ๋ก๋ ๋ชจ๋ ์ค๊ณ์ ์ธํฐํ์ด์ค๋ฅผ ๋ถ์ฌํ๋ ๊ฒ์ด ์ข๊ฒ ๋ค์!
ํ์ง๋ง, ์ธํฐํ์ด์ค๋ฅผ ๋์ ํ๋ฉด ์ถ์ํ๋ผ๋ ๋น์ฉ์ด ๋ฐ์ํ๋ ๊ฒ์ด์์.
๊ธฐ๋ฅ์ ํ์ฅํ ๊ฐ๋ฅ์ฑ์ด ์๋ค๋ฉด, ๊ตฌ์ฒด Class๋ฅผ ์ง์ ์ฌ์ฉํ๊ณ , ํฅํ ๊ผญ ํ์ํ ๋ ๋ฆฌํฉํฐ๋ง(์์ )ํด์ ์ธํฐํ์ด์ค๋ฅผ ๋์ ํ๋ ๊ฒ๋ ์ข์ ๋ฐฉ์์ด ๋ ์ ์๋ต๋๋ค!
๐ Reference
์คํ๋ง์ญ์ฌ: https://www.quickprogrammingtips.com/spring-boot/history-of-spring-framework-and-spring-boot.html ๊ฐ
๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ:
SOLID: https://ko.wikipedia.org/wiki/SOLID_(%EA%B0%9D%EC%B2%B4_%EC%A7%80%ED%96%A5_%EC%84%A4%EA%B3%84)์ฑ ์ถ์ฒ
๊ฐ์ฒด์งํฅ ์ฑ ์ถ์ฒ: ๊ฐ์ฒด์งํฅ์ ์ฌ์ค๊ณผ ์คํด(http://www.yes24.com/Product/Goods/18249021) ์คํ๋ง ์ฑ ์ถ์ฒ: ํ ๋น์ ์คํ๋ง(http://www.yes24.com/Product/Goods/7516911)
JPA ์ฑ
์ถ์ฒ: ์๋ฐ ORM ํ์ค JPA ํ๋ก๊ทธ๋๋ฐ(http://www.yes24.com/Product/Goods/19040233)
์ฃผ๋ํ๋์ ๊ธ์ด ๋ง์์ ๋์ จ๋์? ๊ตฌ๋ ๊ณผ ๊ณต๊ฐ! ๊ทธ๋ฆฌ๊ณ , ๋๊ธ ๊ทธ๋ฆฌ๊ณ ๋ฐฉ๋ช ๋ก์ ์ฃผ๋ํ๋์๊ฒ ๋ง์ ํ์ด ๋ฉ๋๋ค
'Back-End ์์ ์ค > Spring Framework' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Spring] ๊ฐ์ฒด ์งํฅ ์๋ฆฌ ์ ์ฉ - ์๋ก์ด ํ ์ธ ์ ์ฑ ๊ฐ๋ฐ (0) | 2021.09.29 |
---|---|
[Spring] OCP์ DIP ๊ณ ๋ คํ๊ธฐ (4) | 2021.09.18 |
[Spring] ์ข์ ๊ฐ์ฒด ์งํฅ ์ค๊ณ์ 5๊ฐ์ง ์์น (SOLID) (0) | 2021.09.11 |
[Spring] ์คํ๋ง ํต์ฌ ์๋ฆฌ (0) | 2021.09.10 |
[๋์ ๊ธฐ์ !] JPA์ Querydsl (0) | 2021.08.25 |