๊ฐ์ฒด์งํฅ ์ค๊ณ ๊ณผ์
๊ณผ์ ๋ฆฌํ์งํ ๋ฆฌ(https://github.com/eternity-object/oop-exam.git)๋ฅผ ๊ฐ์ธ ๋ฆฌํ์งํ ๋ฆฌ๋ก fork ํฉ๋๋ค.
fork ํ ํ๋ก์ ํธ๋ฅผ cloneํด์ ์ด์ด๋ณด๋ฉด ๋ค์๊ณผ ๊ฐ์ ํด๋์ค๋ก ๊ตฌ์ฑ๋ Spring Boot ์ ํ๋ฆฌ์ผ์ด์ ์ ํ์ธํ ์ ์์ต๋๋ค.
- Lecture : ๊ฐ์ ์ ๋ชฉ, ๋ ์ง, ์ผ์๋ฅผ ๋ฐ์ดํฐ๋ก ํฌํจํ๋ ํด๋์ค
- LectureReporter : Lecture ํด๋์ค๋ฅผ JSON, CSV, XML ์ค ํ๋๋ก ๋ณํํ ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ํ์ผ์ ๊ธฐ๋กํ๋ ํด๋์ค
- MainApplication : Lecture์ LectureReporter๋ฅผ ์์ฑํ ํ ์คํํ๋ Spring Boot ๋ฉ์ธ ํด๋์ค
LectureReporter ํด๋์ค๋ฅผ ๋ณด๋ฉด ์๋์ ๊ฐ์ด ํฌ๋งท๊ณผ ์ ์ฅ ์คํ ๋ฆฌ์ง ํ์ ์ ๋ฐ๋ผ ๋ถ๊ธฐ๋ฅผ ์ฒ๋ฆฌํ๋ ๋ก์ง์ด ์กด์ฌํฉ๋๋ค.
Lecture ํด๋์ค๋ JSON, CSV, XML ํฌ๋งท์ผ๋ก ๋ณ๊ฒฝํ ์ ์๊ณ , ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํ์ผ์ ์ ์ฅํ ์ ์์ต๋๋ค.
์๋ก์ด ํฌ๋งท๊ณผ ์คํ ๋ฆฌ์ง ํ์ ์ด ๊ณ์ ์ถ๊ฐ๋๋ค๊ณ ๊ฐ์ ํ๊ณ ํ์ฌ ์ฝ๋๋ฅผ SOLID ์์น์ ๋ฐ๋ผ ๋ฆฌํฉํฐ๋งํ์ธ์.
ํํธ: ์ธํฐํ์ด์ค์ ์์กด์ฑ ์ฃผ์ ์ ํ์ฉํ์๋ฉด ์์ํ๊ฒ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ค ์ ์์ต๋๋ค.
- formatter, storage ์ธํฐํ์ด์ค ์์ฑํ์ฌ ๊ธฐ๋ฅ ์ถ์ํ
- LectureReporter ์์ฑ์์ ์ ๊ฐ์ฒด์ฃผ์ ํ๋๋ก DIPํ