@SuppressWarnings 1. ์ธ์ ์ฐ์ผ๊น? ๐IDE๋ฅผ ์ฌ์ฉํ๋ค ๋ณด๋ฉด ์ปดํ์ผ ๊ฒฝ๊ณ ๋ฅผ ๋ด๋ณด๋ด๋ ๊ฒฝ์ฐ๊ฐ ์๋ค. ์ฌ์ฉํ์ง ์๋ ์ฝ๋ ๋๋ ๋ถํ์ํ ์ฝ๋ ๋ฑ์ ๊ถ์ฅํ์ง ์๋ ์ฝ๋๋ฅผ ์์ฑํ ๊ฒฝ์ฐ์ ํด๋นํ๋ค. @SuppressWarnings๋ ์ด๋ฐ ๊ฒฝ๊ณ ๋ฅผ ์ ์ธํ ๋ ์ฌ์ฉํ๋ค. ๐จ๐ป๐ปโจ all : ๋ชจ๋ ๊ฒฝ๊ณ cast : ์บ์คํธ ์ฐ์ฐ์ ๊ด๋ จ ๊ฒฝ๊ณ dep-ann : ์ฌ์ฉํ์ง ๋ง์์ผ ํ ์ฃผ์ ๊ด๋ จ ๊ฒฝ๊ณ deprecation : ์ฌ์ฉํ์ง ๋ง์์ผ ํ (๊ถ์ฅ๋์ง ์๋ ๊ธฐ๋ฅ) ๋ฉ์๋ ๊ด๋ จ ๊ฒฝ๊ณ fallthrough : switch ๋ฌธ์์ break ๋๋ฝ ๊ด๋ จ ๊ฒฝ๊ณ finally : ๋ฐํํ์ง ์๋ finally ๋ธ๋ก ๊ด๋ จ ๊ฒฝ๊ณ null : null ๋ถ์ ๊ด๋ จ ๊ฒฝ๊ณ rawtypes : ์ ๋ค๋ฆญ์ ์ฌ์ฉํ๋ ํด๋์ค ๋งค๊ฐ ๋ณ์๊ฐ ๋ถ..
๋ฆฌ๋ ์ค EUC-KR ์ค์ ํ๊ธฐ * ๊ณ์ ์ ์ง์ ์ค์ ๐.bash_profile #ํ์ฌ ์ ์ํ ๊ณ์ ์ ๊ฒฝ๋ก๋ก ์ด๋ cd ~ #.bash_profile ํ์ผ์ vi ํธ์ง๊ธฐ๋ก ์ด๊ธฐ vi .bash_profile #๋ด์ฉ์ ํ๋จ ๋ด์ฉ ์ถ๊ฐ export LANG=ko_KR.euckr #vi ํธ์ง๊ธฐ๋ฅผ ์ ์ฅ(:wq)ํ๋ฉฐ ์ข ๋ฃ #.bash_profile ์ ์ ์ฉ source .bash_profile * ํ์ฌ ์ธ์ ์์๋ง ์ ์ฉ export LANG=ko_KR.euckr
๐ ์๊ฐ ์์ง Git ์ ์ฌ์ฉํจ์ ์์ด Pull Request ์ ์ด์ํ ๋ถ๋ค์ ์ํ ๊ธ์ด๋ค. Pull Request๋ ๋ฌด์์ผ๊น? ๐ Pull Request ๋? Repository(ํ๋ก์ ํธ)์ Maker(์์ฑ์), Collaborators(ํ๋ ฅ์) ๊ฐ ์๋๊ธฐ์ Push ๊ถํ์ด ์์ง๋ง, ํด๋น ๊ตฌ์ฑ์๋ค์๊ฒ Contribute ๋ฅผ ํ๊ธฐ ์ํ ์์ฒญ์ด๋ค. ์กฐ๊ธ ๋ ํ์ด ๋งํ์๋ฉด, ๋ด๊ฐ ์์ ํด์ผํ๋(ํน์ ๋ง์์ ๋๋) Repository๊ฐ ์๋๋ฐ ์ฝ๋์ ๊ธฐ์ฌํ๊ณ ์ถ์ ๋(๋ ๋ฐ์ ๋ ์ฝ๋๊ฑฐ๋ Maker์ Collaborators์ ๋์๋๋ ์ฝ๋) ๋ด๊ฐ ์์ ํ ์ฝ๋๊ฐ ์์ผ๋ ๊ฒํ ํ, ์ฝ๋ ๋ณํฉ ์์ฒญ์ ํ๋ ๊ฒ์ด๋ค. ๐ ์ฌ๊ฑด์ ๋ฐ๋จ OO๋~~ A ํ๋ก์ ํธ ์ด์ #12451๋ฒ ์ฒ๋ฆฌ ๋ถํ๋๋ ค์~! ๐์ด๋ณด์๋ ์ด ๋ง์ ๋ฃ..
๋๋ฉ์ธ ์ค์ฌ ์ค๊ณ(Domain-Driven Design)์ด๋? ๋จ์ํ๊ฒ ์ ๋ฆฌํ์๋ฉด ๋๋ฉ์ธ(๋น์ฆ๋์ค ๋ชฉํ)์ ์ค์ฌ์ผ๋ก ์๊ฒ ์ชผ๊ฐ์ด ์ค๊ณ(๋๋ ๋ฌธ์ ํด๊ฒฐ)ํด ๋๊ฐ๋ ๋ฐฉ๋ฒ์ด๋ค. ํ๋ก์ ํธ ์ ๋ชจ๋๊ฐ์ ์์กด์ฑ์ ์ต์ํํ๋ฉฐ ์์ง์ฑ์ ์ต๋ํ ํ๋ฉด์ ๋ง์ด๋ค... ์ฒ์ DDD ์ ๋ํ ๊ฐ๋ ์ ์ ํ ๋๋ ๋๋ฌด๋๋ ๋์ ๋ฒ์์ ๋ํดํด์ ๊ฐ๋ ์ ์ดํดํ๊ธฐ ์ด๋ ค์ ์๋ค. ๊ฐ์ฒด์งํฅ์ ๋ํ ๊ฐ๋ ์ ์ ๋๋ก ์ดํดํ์ง ๋ชปํ์๊ธฐ ๋๋ฌธ์ผ๊น. ๊ฐ์ฒด ์งํฅ์ ๋ ๋ฆฝ์ ์ธ ๊ฐ์ฒด(๊ฐ์ฒด)๋ค์ด ์ํธ์์ฉ์ ํตํด ๋ฐ์์ํค๋ ์ด๋ฒคํธ๋ฅผ ๋ชฉ์ ์ผ๋ก ํ๋ค. ๋ฌผ๊ฑด์ ์ฌ๊ธฐ์ํด(Buy Domain) ๋งํธ์ ๋ค์ด๊ฐ A์จ๋ ๊ทธ๊ณณ์์ ์ผํ๊ณ ์๋ B์จ์๊ฒ ๊ณ์ฐ์ ํ๋ค(Sell Domain) ์ ์ฃผ์ธ C ๋ ์ด๋ฅผ ๊ด๋ฆฌ(Manage Domain)ํ๋ค. ๋ฒ์จ ์ฌ๊ธฐ์๋ง 3๊ฐ ์ด์์ ๋๋ฉ์ธ์ด..
๐ํ๋ก์ ํธ ์๊ฐ์ง๋จ ๐๋๋ผ์, ๊ทธ๋ฆฌ๊ณ .. ์ด ๊ธ์ ๋ด์ฉ์ ๋ณด๊ณ ์ค๋ก ๋๋ผ์ ๋ค. ์ธ์์ ์ฌ์ง์ด ๋ด๊ฐ ์์ ์งํ ์ค์ธ ๋ด์ฉ๋ค์ด๋ค. ๊ฐ์ฌํ๊ฒ๋ ํฌ๊ฒ 10๊ฐ ํญ๋ชฉ์ ์ฒดํฌ๋ฆฌ์คํธ๋ฅผ ๋ง๋ค์ด์ฃผ์ จ๊ณ , ๋คํํ๋ ๋๋ 10๊ฐ ํญ๋ชฉ ๋ชจ๋์ ์ฒดํฌํ ์ ์์๋ค. ์ ํด์ง ๊ธฐ๊ฐ์ ๋ง์ถ์ด ํ๋ก์ ํธ๋ฅผ ๋๋ด๊ณ , ๋ค์ ํ๋ก์ ํธ๋ฅผ ์ํด ์ฒ ์ํ๊ธฐ ๊ธ๊ธํ๋ค. ์ฐ๋ฆฌ๋ ์๊ธ์์ด๋๊น, ๊ทธ๋ ๋ค๋ณด๋ ์ด๋ฏธ ๊ฐ๋ฐ์ด ์๋ฃ๋ ํ๋ก์ ํธ๋ ์ด์๊ฐ ๋ฐ์ํ๊ฑฐ๋ ์ถ๊ฐ ๊ฐ๋ฐ์ด ์กด์ฌํ์ง ์์ผ๋ฉด LTS๋ก ๋ณด๊ณ ๋ค์ ๋ณผ ์๊ฐ์ด ๋์ง ์๋๋ค. ๊ทธ๋ฌ๋ค ๋ฌธ๋ ์ฐ์ฐจ๊ฐ ์์ด๊ณ , ๋ด๊ฐ ๊ฐ๋ฐํ ํ๋ก์ ํธ๋ฅผ ๋ณผ ๋, ๊ทธ ์ถฉ๊ฒฉ์.. ์ ๋ญ๋๊น ์๋นํ ๋ฏผ๋งํ๋ค. ๋น์์ ์๊ฐ ์์ด ์งฐ๋ ์ฝ๋๋ ๋ถ๋๋ฌ์์ ์์ ์ ํ๊ณ , ๋ง์ ๊ณ ๋ฏผ์ ํ๋ฉฐ ์งฐ๋ ์ฝ๋๋ ์ง๊ธ ๋ค์ ๋ด๋ ๋งค๋ ฅ์ ์ธ ์ฝ๋๋ค. ๋๋ฅผ ์ํด, ๋..
๐Spring Boot ์ง์ ๊ณํ ํ ์ด ํ๋ก์ ํธ๋ฅผ spring boot๋ก ์งํํ๊ณ ์ Spring initializr ์ ์ด์ฉํ์ฌ ํ๋ก์ ํธ๋ฅผ ์์ฑํ๊ณ ์์๋ค. ๊ทธ๋ฌ๋ ์ค, Spring initializr ์์ ์๋์ ๊ฐ์ด 2.5.x ๋ฒ์ ๋ค์ด ์ฌ๋ผ์ง ๊ฒ์ ๋ณด๊ณ ๋ถ๋ด๋ถ๋ด spring boot์ ์ง์ ๊ณํ์ ๊ณต์ ํ๊ธฐ ์ํด ํฌ์คํ ํ๊ฒ ๋์๋ค. ๐จ๐ปSpring Boot ์ 3.0.x ๋ฒ์ ์ถ์ ์ผ์ (2022-11-24) ์ด ์ฝ์์ผ๋ก ๋ค๊ฐ์ด์ ๋ฐ๋ผ, ์ฌ๋ฌ ๊ธฐ์ ์์ ๊ธฐ์กด์ ์ฌ์ฉ์ค์ด๋ ๋ ๊ฑฐ์ ๋ฒ์ Spring Boot ์ ์ ๋ฐ์ดํธ๋ฅผ ์งํํ๊ณ ์๋ค. ํ์ฌ ๊ทผ๋ฌด ์ค์ธ ํ์ฌ์์๋ ์ง๋ 5์, ์ด์์ค์ธ Spring Boot ํ๋ก์ ํธ์ ์ตํ์ ๋ฒ์ ์ 2.4.2 ๋ฒ์ ์ผ๋ก ๊ณ ์ ์์ผฐ๋ค. ๊ฐ์ธ์ ์ผ๋ก ๊ถ์ฅํ๋ Branch์ ์ตํ์ ๋ฒ..
๐ํ ์ดํ๋ก์ ํธ ๐Front-End ๐React ๐Back-End ๐Spring Boot(2.5.5) ๐DB ๐MySQL or MariaDB ๐API ๐Node.js
๐๋ก๊ทธ ๐๊ฐ์ โจ์ ๋ง์ ํ๋ก์ ํธ์ ์๋น์ค๋ค์ ์ด์ํ๋ค๋ณด๋ฉด ์ฐ๋ฆฌ์ Log ํ์ผ๊ณผ ๋๋ ํ ๋ฆฌ(ํน์ ํด๋)๋ ์ธ์ ๋ ํํ ์ด๋ค. ์ฝ๋ฉํ๋๋ผ ๋ฐ์ ์ฐ๋ฆฌ์๊ฒ ๋ก๊ทธ์ ์ฐ์ ์์๋ ์ ~~๋ฉ๋ฆฌ, ์๋์ง ์ ์ผ ๋ค์ ์๋ค. ์ค๊ณ์ ๋ํ ๊ฒ๋ณด๋ค ๋จ๊ธฐ๋ ๊ฒ์๋ง ์ง์คํ๋ค. ๊ทธ๋ ๋ค ๋ณด๋ ๊ท์ฝ์ด ์๊ณ , ๋ชจ๋ ๊ฑธ ๋จ๊ธด ๋ก๊ทธ์ ํ์ง์ ์ ํ๋ ์ ๋ฐ์ ์๋ค. ๋ก๊ทธ ํ์ผ์ด KB๋ ์๋๊ณ MB๋ ์๋ GB..? ์ฌ์ง์ด ๋์ผํ ๋จ์ด์ ๋ฐ์ดํฐ๋ผ๋? ์ผ์์ ! ๋ฐ์ดํฐ๊ฐ ๋๋ฌด ๋ง์์ ์ฝ๊ธฐ๊ฐ ์ด๋ ต์์! ์์ ๋น์ทํ ๊ฒฝํ์ ๊ฐ์ง ์ ์ด ์๋ค๋ฉด? ์ด ํฌ์คํ ์ด ์ฝ์๋ง ํ์ง ์์๊น ๐๋ก๊ทธ์ '์ ์' ๐๋ก๊ทธ๋ '์ผ์ง[๊ธฐ๋ก]' ์ด๋ผ๋ ๋ป์ ์ง๋๋ค. ์ด ํฌ์คํ ์์ ๋ฐ๋ผ๋ณด๋ ์์ ์ ๋ก๊ทธ๋ ์์คํ ์ด๋ ์๋น์ค ๋ฑ์ ๊ฐ๋ ์ ๋จ๊ธฐ๋ ์ด๋ฒคํธ์ ๋ํ ๊ธฐ๋ก์ด๋ค. ์ฐ๋ฆฌ๋ ์ด ๊ธฐ๋ก..