๊ธฐ๋ณธ ์คํ์ผ ๋ฐ ์ฝ๋ ํ์์ ๋ํ ์ด PR ์ ๋๊ธ ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ์ฌ ๊ณต๋ฐฑ ์ฌ์ฉ ๋๋ ๋ช ๋ช ๊ท์น๊ณผ ๊ฐ์ ๋ฌธ์ ๋ฅผ ์๋์ผ๋ก ํ์ธํ๋๋ก ์ค์ ๋ ๋ถ์๊ธฐ(๋๋ ์ด์ ์์ํ๋ ๊ฒ)๊ฐ ์๋ค๋ ์ฌ์ค์ ๋๋์ต๋๋ค.
์ถ๊ฐํ ์ ์๋ ์ด์ ๊ฐ ์์ต๋๊น?
๋ ๊ฐ์ง ์ฆ๊ฐ์ ์ธ ์ด์ ์ด ์์ต๋๋ค.
์ด๋ฌํ ์๋ ์์ ๊ฒ์ฌ๋ฅผ ์ถ๊ฐํ ๋์ ๋จ์ ์ ๊ธฐ์กด ์ฝ๋๊ฐ ๊ท์น ์งํฉ์ ์ถฉ์กฑํ์ง ์์ผ๋ฏ๋ก ์ด ๊ธฐ๋ฅ์ ์ผ๋ฉด ๋ง์ ๋ฌธ์ ์ ํ๋๊ทธ๊ฐ ์ง์ ๋๋ค๋ ์ ์
๋๋ค.
์ด ๊ฒฝ์ฐ ํ๋ก์ ํธ๊ฐ ๋ณ๊ฒฝ(๋๋ ์ถ๊ฐ)๋ ๋ ๊ท์น์ ์ผ๊ฑฐ๋(๋๋ ๋ถ์๊ธฐ๋ฅผ ์ถ๊ฐ) ๋ชจ๋ ๊ฒ์ด ํ ๋ฒ์ ์๋ฃ๋์ง ์๋๋ก ํ ์ ์์ต๋๋ค.
๋๋ ํ์ ๋ถ์ผ์น๋ ์ผ๋ฐ์ ์ผ๋ก ์ฝ๊ฒ ์์ ํ ์ ์์ผ๋ฏ๋ก ๋๊ตฌ๋ฅผ ์ฌ์ฉํ๋ฉด ์ผ๋ฐ์ ์ผ๋ก ๋๋ถ๋ถ์ ๋ฌธ์ ๋ฅผ ์๋์ผ๋ก ์์ ํ ์ ์์ผ๋ฏ๋ก ๋ฐ๊ฒฌ๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๋ฐ ๋ช ์๊ฐ(๋ค๋ฅธ ๋๊ท๋ชจ ํ๋ก์ ํธ์ ๋ํ ์ ๊ณผ๊ฑฐ ๊ฒฝํ์ ๊ธฐ๋ฐ์ผ๋ก ํจ)๋ง ์์๋ ์ ์์ผ๋ฏ๋ก ์๋์ด ํ์ํ ์์ธ์ผ ๋ฟ์
๋๋ค. ๊ฐ์
๋๋ ๊ฒํ .
๊ฐ์ฅ ํฅ๋ฏธ๋ก์ด ์์
์ ์๋์ง๋ง ์๊ฐ์ด ์ง๋จ์ ๋ฐ๋ผ ๊ฐ์น๊ฐ ์์ต๋๋ค.
๊ธฐ์กด ์ฝ๋ ์ ์ฉ ๋ฒ์๋ ์ด๋ฅผ ๋ฎ์ ์ํ์ผ๋ก ๋ณ๊ฒฝํด์ผ ํฉ๋๋ค.
๋๋ editorconfig๊ฐ ๊ฐ์ ๋๊ฑฐ๋ FxCopAnalyzers๊ฐ ์ถ๊ฐ๋ ์ ์๋ค๊ณ ์๊ฐํฉ๋๋ค.
๋๋ C# ์ฝ๋๋ฅผ ์ํ StyleCop.Analyzers๋ฅผ ์๊ฐํ๊ณ ์์์ต๋๋ค. ๊ทธ๋ฌ๋ C++์ ๊ฐ์ฅ ์ ํฉํ ๊ฒ์ด ๋ฌด์์ธ์ง ์ ๋ชจ๋ฅด๊ฒ ์ต๋๋ค.
๊ทธ๋ฌ๋ C++์ ๊ฐ์ฅ ์ ํฉํ ๊ฒ์ด ๋ฌด์์ธ์ง ์ ๋ชจ๋ฅด๊ฒ ์ต๋๋ค.
@RanjeshJ ๋ ์ฝ๋๋ฒ ์ด์ค์์ ์คํํ ์ ์๋ clang-tidy ๋ฐ clang-format์ ๋ง๋๋ ์์ ์ ํ๊ณ ์์ผ๋ฉฐ ์ด๊ฒ์ด C++์ ๋์์ด ๋ ๊ฒ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค. MSVC๋ ์ฐ๋ฆฌ๊ฐ ๋ณธ ํ ์ข์ ๋ฆฐํฐ๊ฐ ์์ต๋๋ค.
C#์ ๊ฒฝ์ฐ ์ฐ๋ฆฌ๊ฐ ์ค์ ํ๊ณ C# ํ์ผ์ ์ ์ฉ๋์ด์ผ ํ๋ ์๋ก์ด editorconfig ํญ๋ชฉ ์ด ์์ต๋๋ค. ๊ฑฐ๊ธฐ์ ์ถ๊ฐํด์ผ ํ๋ C#์ ๋ํ ๋ ๋ง์ ์คํ์ผ์ด ์๋ ๊ฒฝ์ฐ ์ถ๊ฐํ ์ ์์ต๋๋ค. ๊ทธ๋ฐ ๋ค์ StyleCop๊ณผ ๊ฐ์ ๊ฒ์ด ๋ ๋์๊ฐ๋ ๋ฐ ๋์์ด ๋๋ค๋ฉด ์ฐ๋ฆฌ๋ ์คํํ ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ๋๋ C#์์ ๋ง์ nit-picking์ ๋ณด์ง ๋ชปํ๊ธฐ ๋๋ฌธ์ editorconfig๊ฐ ๋๋ถ๋ถ ๊ทธ ์ผ์ ํ๊ณ ์๋ค๊ณ ์๊ฐํฉ๋๋ค.