ํด์ปคํค์ ๋๊ฐ๊ฑฐ๋ ์ค๋ฌด๋ฅผ ํ๋ค๋ฉด ํ์ ์ ํ์์ ๋๋ค. ์ด๋ ์ด๋ค ์ฌ๋์ ๋์ ์ธ๋ฏธ์ฝ๋ก ์ ์ ๋ถ์ด๊ฑฐ๋, ๊ฐ์ ์๊ณ ๋ฆฌ์ฆ์ ์ง๋๋ผ๋ ๊ฐ๋ ์ฑ์ ์ ๊ฒฝ ์ฐ์ง ์๊ฑฐ๋, Tab vs Space ๋ ผ์์ด ์์ฌํ๋ ๊ฒ์ฒ๋ผ ์ปจ๋ฒค์ ์ ๋ค๋ฅด๊ฒ ํ๊ธฐ๋ ํฉ๋๋ค. ์ด๋๋ง๋ค "์ปจ๋ฒค์ ์ ํต์ผํฉ์๋ค"๋ผ๊ณ ๋งํ๊ธฐ์๋ ๊ฐ์์ ์ฝ๋ ์คํ์ผ์ด ๋๋ฌด ๋ช ํํด์ ์คํ๋ ค ๋ถํธํด์ง๊ณ ์์ฐ์ฑ์ด ๋จ์ด์ง๋ ๋ฌธ์ ๋ฅผ ๋ณ์ต๋๋ค.
๊ทธ๋ด๋ VSCode์๋ ํ์ ์ ์ํ ์ต์คํ ์ ์ด ์ฌ๋ฌ ๊ฐ ์กด์ฌํฉ๋๋ค. ์ด ํฌ์คํธ์์๋ ์ ์ฉํ VSCode ์ต์คํ ์ ์ ์ดํด๋ณด๊ณ ์ด๋ค ์ด์ ์ด ์๋์ง ์ดํด๋ด ๋๋ค.
1. Prettier - Code formatter
์ฝ๋ ํฌ๋ฉงํ ๋๊ตฌ์ ๋๋ค. ์ฌ์ค์ ํ์ ์ ํ์์ด๊ธฐ๋ ํ๊ณ ์์ ์ธ๊ธํ๋ฏ Tab vs Space ๋ ผ์์ ํ ๋ฒ์ ์ผ์ถํ ์ต๊ณ ์ ๋๊ตฌ์ ๋๋ค. ์ด๊ฑฐ ์์ด Git Commit ํ๋ฉด ์ฝ๋๊ฐ ๊น๋ํด์ง์ง ์๊ณ ๋ค๋ฅธ ์ฌ๋๊ณผ์ ํ์ ์์๋ ์ฐจ์ง์ ๋น์ต๋๋ค. ํ์ ๋ฟ ์๋๋ผ ๋ค๋ฅธ ์ฌ๋์๊ฒ ์ฝ๋๋ฅผ ๋ณด์ฌ์ฃผ์ด์ผ ํ ๋๋ ์ ์ฉํฉ๋๋ค. ์๋ฌด๋๋ ์ ๋ฆฌ๊ฐ ๋์ด์์ง ์๋ ์ฝ๋๋ณด๋ค ๊น๋ํ๊ฒ ์ ๋ฆฌ๋์ด ์๋ ์ฝ๋๋ฅผ ๋ณผ ๋ ์ข์ ์ธ์์ ์ค ์ ์์ต๋๋ค. ๋ฉด์ ์ ํฌํธํด๋ฆฌ์ค ๊ตฌ์ฑ์ ์ํด์๋ ํ์๋ผ๊ณ ๋ด ๋๋ค.
ํน์ง์ด๋ผ๋ฉด ์ฝ๋๋ฅผ ์ ์ฅํ ๋๋ง๋ค Prettier๊ฐ ์คํ๋๋ค๋ ์ ์ ๋๋ค. ๋ณ๋์ ๊ท์ฐฎ์ ๋์ ์์ด ๊ทธ๋ฅ ํ๋ ๋๋ก ์ฝ๋ฉํ๋ฉด ์์์ ์ฝ๋๋ฅผ ์ ๋ฆฌํด ์ค๋๋ค.
https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode
์ค์ ๋ฐฉ๋ฒ
1. ์ ์คํ ์ด์์ ๋ค์ด๋ฐ๊ฑฐ๋ VSCode ์ต์คํ ์ ์์ Prettier๋ฅผ ๊ฒ์ํ๊ณ ๊ฐ์ฅ ์๋จ์ ์์นํ ์ต์คํ ์ ์ ๋ค์ด๋ก๋ํฉ๋๋ค.
2. ๋จผ์ ctrl + , ๋ฅผ ํด๋ฆญํด ์ค์ ์ ์ด์ด์ค๋๋ค. ๊ทธ๋ผ ์๋ ์ด๋ฏธ์ง์ฒ๋ผ ๋จ๊ฒ ๋ฉ๋๋ค. ๊ฒ์์ฐฝ์ Editor: Default Formatter๋ฅผ ๊ฒ์ํ๊ณ ๊ธฐ๋ณธ ํฌ๋งทํฐ๋ฅผ ์ค์นํ ์ต์คํ ์ ์ผ๋ก ๋ณ๊ฒฝํด ์ค๋๋ค.
3. ์ค์ ์์ Editor Format on save๋ฅผ ๊ฒ์ํด ์ฃผ๊ณ ์๋์ ๊ฐ์ด ์ฒดํฌ๋ฐ์ค๋ฅผ ํด๋ฆญํด ์ค๋๋ค.
2. GitLens
Git์ผ๋ก ํ์ ์ ํ๋ค ๋ณด๋ฉด ๋๊ฐ ์ธ์ ์ปค๋ฐ์ ํ๋์ง ๋ฌผ์ด๋ด์ผ ํ ๋๊ฐ ์๊น๋๋ค. ๊ทธ ์ฝ๋์ ๋ชฉ์ ์ ๋ฌด์์ธ์ง, ๋ฒ๊ทธ๊ฐ ์๋์ง, ์ด๋ป๊ฒ ํด๊ฒฐํด์ผ ํ๋์ง ๋ฌผ์ด๋ด์ผ ํ์ฃ . ๊ทธ๋๋ง๋ค ์ฃผ๋ณ ๋๋ฃ๋ ๋ค๋ฅธ ์ฌ๋๋ค์๊ฒ ๋ฌผ์ด๋ณด๊ธฐ๋ ์ด๋ ต์ต๋๋ค. ์ด๋ ๊ทธ ์ฝ๋๋ฅผ ๊ฐ์ฅ ๋ง์ง๋ง์ผ๋ก ์ฌ์ฉํ ์ฌ๋์ด ๋๊ตฐ์ง ์๋ฉด ๊ทธ ์ฌ๋์๊ฒ ๊ฐ์ ์ง์ ๋ฌผ์ด๋ณด๋ฉด ๋ฉ๋๋ค. ์ด ์ต์คํ ์ ์ ํนํ ์ฅ๊ธฐ๊ฐ์ ๊ฑธ์ณ Git ๋ ํฌ์งํ ๋ฆฌ๋ฅผ ๊ด๋ฆฌํ๊ณ ์๊ฑฐ๋ ์ค๋ฌด์์ ์์ฃผ ์์ ๋์ง ์์ง๋ง ํ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ด์ฉ๋ค ํ ๋ฒ ์์ ํ ๋ ์ ์ฉํฉ๋๋ค.
https://marketplace.visualstudio.com/items?itemName=eamodio.gitlens
๋ฐ๋ก ์ค์ ํ ํ์๋ ์๊ณ ์ค์นํ๋ฉด ๋ฐ๋ก ์ ์ฉ๋ฉ๋๋ค.
3. CodeSnap
์ฝ๋๋ฅผ ์ด์๊ฒ ์ด๋ฏธ์ง ํ์ผ๋ก ์์ฑํ๋ ์ต์คํ ์ ์ ๋๋ค. ๋ฐํ์๋ฃ๋ฅผ ๋ง๋ค๊ฑฐ๋ ํต์ฌ ์ฝ๋ ํน์ ์๊ณ ๋ฆฌ์ฆ์ ์ค๋ช ํ ๋ ์์ฃผ ์ฌ์ฉ๋ฉ๋๋ค. ์ด ์ธ์๋ ๋ธ๋ก๊ทธ์ ์ฒจ๋ถํ ๋ ์ฃผ๋ก ์ฌ์ฉ๋๋ ์ต์คํ ์ ์ค ํ๋์ ๋๋ค.
https://marketplace.visualstudio.com/items?itemName=adpyke.codesnap
1. ์ค์น ํ, ๋๋๊ทธํ ํ ์ฐํด๋ฆญํ๋ฉด ๋งจ ์๋์ Codesnap์ด ์๋ก ์๊น๋๋ค. ํด๋ฆญํ๋ฉด
2. ์ด๋ฐ ์์ผ๋ก ์ถ๋ ฅ๋ฉ๋๋ค. ์ด๋ฏธ์ง๋ฅผ ์ฐํด๋ฆญํ๋ฉด ๋ณต์ฌํ ์ ์์ผ๋ ์ด๋๋ ๋ถ์ฌ ๋ฃ์ ์ ์์ต๋๋ค.
3. ๊ทธ๋ผ ์๋์ ๊ฐ์ด ์ฒจ๋ถ๋๊ฒ ๋ฉ๋๋ค.
์ด๋ ๊ฒ ์ด 3๊ฐ์ง์ ์ต์คํ ์ ์ ๊ฐ์ถ๋ ค๋ดค์ต๋๋ค. ์ด ์ธ์๋ ์ ๋ ์ ์ฌ์ฉํ์ง ์์์ ์ฃผ๋ก ์ฌ์ฉํ๋ ์ต์คํ ์ ์ ์ ์ด๋ดค์ต๋๋ค. ์ฌ์ค ์ฃผ๋์ด ๋๋ ์ต์คํ ์ ๋ ์ด๊ฒ์ ๊ฒ ์ฐ๊ณ ๊ทธ๋ฌ๋๋ฐ, ์ ์ ํ์ ์ ์ํ ์ต์คํ ์ ๋ง ์ฐ๊ฒ ๋๋ค ๋ณด๋ ์ดํ๋ก๋ ๊ทธ๋ฅ ์ VSCode๋ก๋ง๋ ์ถฉ๋ถํ๋ค๊ณ ๋๊ปด์ก์ต๋๋ค.
๊ฐ์ฌํฉ๋๋ค.