๐๏ธ [Medium] ์ ์ฉํ ๋ฌด๋ฃ IntelliJ Plugin 5๊ฐ์ง
์ด ๊ธ์์๋ IntelliJ IDEA ํ๋ฌ๊ทธ์ธ์ ๋ํด ๋ค๋ฃจ๊ฒ ์ต๋๋ค. ์์ฐ์ฑ์ ๊ทน๋ํํ๊ณ ์ฝ๋๋ฅผ ์์ฑ๋๋ก ํฅ์์ํฌ ์ ์๋ 5๊ฐ์ง ๋ฌด๋ฃ ํ๋ฌ๊ทธ์ธ์ ํ๊ตฌํด ๋ณด๊ฒ ์ต๋๋ค. ย 1. Test Data ๋จ์ ํ ์คํธ๋ฅผ ์์ฑํ ๋, ์ํ ๋ฐ์ดํฐ๋ฅผ ์์ฑํด์ผ ํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ์ด ํ๋ฌ๊ทธ์ธ์ ํ ์คํธ, UUID, ์ซ์, ๋ ์ง ๋ฐ ์๊ฐ, JSON, CSV, SQL๊ณผ ๊ฐ์ ์ฌ์ฉ์ ์ ์ ํ์์ ํฌํจํ ๋ค์ํ ๋ฌด์์ ๋ฐ์ดํฐ๋ฅผ ์์ฑํ ์ ์๋ ์์ ์ ์ถ๊ฐํฉ๋๋ค. ย 2. SonarLint SonarLint๋ ๊ฐ๋ฐ ๋ฐ ํ๋ก๋์ ํ๊ฒฝ ๋ชจ๋์์ ์ฝ๋๊ฐ ํ์ค์ ์ถฉ์กฑํ๋๋ก ๋ณด์ฅํ๊ธฐ ์ํด ์ค๊ณ๋ ์คํ ์์ค ๋๊ตฌ์ ๋๋ค. ์ฝ๋ ๋์๋ฅผ ์ค์๊ฐ์ผ๋ก ์์ ํ๊ณ ๋ฌธ์ ์ ๋ํ ์์ธํ ํต์ฐฐ๋ ฅ์ ์ ๊ณตํฉ๋๋ค. ๋๋ก๋ ๊ฐ๋ ์ฑ์ ์ํด ํน์ ๋ฌธ์ ๋ฅผ ๋ฌด์ํ๋ ๊ฒ์ด ํ์ฉ๋ ์ ์์ผ๋ฉฐ, Java์์๋ ๋ค์๊ณผ ๊ฐ์ ์ ๊ทผ ๋ฐฉ์์ ์ฌ์ฉํ ์ ์์ต๋๋ค: @SuppressWarnings("java:S2699") # java:S2699 is the issue id ย 3. Maven Helper ํ๋ก์ ํธ ์ข ์์ฑ ๋ฐ ๊ตฌ์ฑ์ Maven์ ์ฌ์ฉํ์ฌ ๊ด๋ฆฌํ๋ ๊ฒฝ์ฐ, ์ด ๋๊ตฌ๊ฐ ํฐ ๋์์ด ๋ฉ๋๋ค. ์ด ํ๋ฌ๊ทธ์ธ์ pom.xml ํ์ผ์ UI ํญ์ ์ถ๊ฐํ์ฌ ํ๋ก์ ํธ ์ข ์์ฑ์ ๋ชฉ๋ก ๋๋ ํธ๋ฆฌ ๋ณด๊ธฐ๋ก ๋ณด์ฌ์ค๋๋ค. ย 4. RestFul Tool ์ด ํ๋ฌ๊ทธ์ธ์ Restful ์๋น์ค ๊ฐ๋ฐ์ ์ํ ๋๊ตฌ ๋ชจ์์ ์ ๊ณตํฉ๋๋ค. Spring MVC ๋ฐ Spring Boot์์ ํตํฉ ์ง์์ด ๋ฐ์ด๋ฉ๋๋ค. ๋ํ, ์๋ํฌ์ธํธ๋ฅผ ๋ ธ์ถํ๋ ์ปจํธ๋กค๋ฌ๋ก ๋ฐ๋ก ์ด๋ํ ์ ์๋ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. ์ถ๊ฐ๋ก, IDE ๋ด์์ REST API ํธ์ถ์ ํ ์ ์๋ ์ฐฝ๋ ์ ๊ณตํฉ๋๋ค. 5. EnvFile ์ด ํ๋ฌ๊ทธ์ธ์ IntelliJ์์ ์คํ ๊ตฌ์ฑ์ ๋ํ ํ๊ฒฝ ์์ฑ์ ์ค์ ํ ์ ์๊ฒ ํด์ค๋๋ค. YAML, JSON ๋ฐ .env ํ์์ ์ง์ํฉ๋๋ค. ย 6. Bonus PlantUML ๋์์ธ๊ณผ ์ฌ์ฉ์ ๋ค์ด์ด๊ทธ๋จ ํํ์ ์ข์ํ๋ ์ฌ๋์ด๋ผ๋ฉด PlantUML ํ๋ฌ๊ทธ์ธ์ด ๋งค์ฐ ์ ์ฉํ ๊ฒ์ ๋๋ค. ์ด ํ๋ฌ๊ทธ์ธ์ ์ํ์ค ๋ค์ด์ด๊ทธ๋จ, ์ปดํฌ๋ํธ ๋ค์ด์ด๊ทธ๋จ ๋ฑ ๋ค์ํ ์ฉ๋์ ๋ํ ์ฌ๋ฌ ์์ ํ ํ๋ฆฟ์ ์ง์ํฉ๋๋ค. Spring Boot Assistant Spring boot ๊ฐ๋ฐ์๋ผ๋ฉด ํ๋ก์ ํธ ๊ฐ๋ฐ์ ์์ด ์ ํ๋ฆฌ์ผ์ด์ ์์ฑ์ด ์ผ๋ง๋ ์ค์ํ์ง ์ ๊ฒ์ ๋๋ค. ์ด๋ ํ๋ก์ ํธ๋ฅผ ๊ตฌ๋ํ๋ ํต์ฌ ๊ตฌ์ฑ์ ๋๋ค. ์ผ๋ฐ์ ์ธ ์ ํ๋ฆฌ์ผ์ด์ ์์ฑ์ spring์ ์ํด ๋ฌธ์ํ๋์ด ์์ง๋ง, ํญ์ ๋ฐฉ๋ฌธํ๊ณ ์์ฑ์ ํฌํจํ๋ ๊ฒ์ ๋ฒ๊ฑฐ๋ก์ธ ์ ์์ต๋๋ค. ์ด ํ๋ฌ๊ทธ์ธ์ ์ผ๋ฐ ์ ํ๋ฆฌ์ผ์ด์ ์์ฑ์ ๋ํ ์๋ ์ ์ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. ย ๋ฒ์ญ: [https://ducktopia.tistory.com/130] ์๋ฌธ: