Microsoft-ui-xaml: ์งˆ๋ฌธ: ์ฝ”๋“œ ๊ธฐ๋ฐ˜์„ ์œ„ํ•œ ์ฝ”๋“œ ๋ถ„์„๊ธฐ(๋˜๋Š” ๋ฆฐํ„ฐ)๊ฐ€ ์—†๋Š” ์ด์œ ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

์— ๋งŒ๋“  2019๋…„ 07์›” 25์ผ  ยท  3์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: microsoft/microsoft-ui-xaml

๊ธฐ๋ณธ ์Šคํƒ€์ผ ๋ฐ ์ฝ”๋“œ ํ˜•์‹์— ๋Œ€ํ•œ ์ด PR ์˜ ๋Œ“๊ธ€ ์ˆ˜๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜์—ฌ ๊ณต๋ฐฑ ์‚ฌ์šฉ ๋˜๋Š” ๋ช…๋ช… ๊ทœ์น™๊ณผ ๊ฐ™์€ ๋ฌธ์ œ๋ฅผ ์ž๋™์œผ๋กœ ํ™•์ธํ•˜๋„๋ก ์„ค์ •๋œ ๋ถ„์„๊ธฐ(๋˜๋Š” ์ด์— ์ƒ์‘ํ•˜๋Š” ๊ฒƒ)๊ฐ€ ์—†๋‹ค๋Š” ์‚ฌ์‹ค์— ๋†€๋ž์Šต๋‹ˆ๋‹ค.

์ถ”๊ฐ€ํ•  ์ˆ˜ ์—†๋Š” ์ด์œ ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

๋‘ ๊ฐ€์ง€ ์ฆ‰๊ฐ์ ์ธ ์ด์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

  1. ์ฝ”๋“œ๋Š” ์ฝ๊ธฐ, ์ดํ•ด ๋ฐ ์œ ์ง€ ๊ด€๋ฆฌ์— ๋„์›€์ด ๋˜๋„๋ก ์ผ๊ด€๋˜๊ฒŒ ํ˜•์‹์ด ์ง€์ •๋ฉ๋‹ˆ๋‹ค.
  2. ์ด๋Š” ์ฝ”๋“œ ๋ฆฌ๋ทฐ๊ฐ€ ์‚ฌ์†Œํ•œ ๋ฌธ์ œ๋กœ ์ธํ•ด ์‚ฐ๋งŒํ•ด์ง€์ง€ ์•Š๊ณ  ์ฝ”๋“œ์— ์ง‘์ค‘ํ•  ์ˆ˜ ์žˆ์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ์ฝ”๋“œ ์ฃผ์„ ์ˆ˜๋ฅผ ์ค„์ด๊ณ  ๋นˆ ์ค„์— ๋Œ€ํ•œ ์—ฌ๋Ÿฌ ํ† ๋ก ์—์„œ ์ค‘์š”ํ•œ ๋ฌธ์ œ๊ฐ€ ์†์‹ค๋˜๋Š” ๊ฒƒ์„ ๋ง‰์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ์ž๋™ ์„œ์‹ ๊ฒ€์‚ฌ๋ฅผ ์ถ”๊ฐ€ํ•  ๋•Œ์˜ ๋‹จ์ ์€ ๊ธฐ์กด ์ฝ”๋“œ๊ฐ€ ๊ทœ์น™ ์ง‘ํ•ฉ์„ ์ถฉ์กฑํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ ์ด ๊ธฐ๋Šฅ์„ ์ผœ๋ฉด ๋งŽ์€ ๋ฌธ์ œ์— ํ”Œ๋ž˜๊ทธ๊ฐ€ ์ง€์ •๋œ๋‹ค๋Š” ์ ์ž…๋‹ˆ๋‹ค.
์ด ๊ฒฝ์šฐ ํ”„๋กœ์ ํŠธ๊ฐ€ ๋ณ€๊ฒฝ(๋˜๋Š” ์ถ”๊ฐ€)๋  ๋•Œ ๊ทœ์น™์„ ์ผœ๊ฑฐ๋‚˜(๋˜๋Š” ๋ถ„์„๊ธฐ๋ฅผ ์ถ”๊ฐ€) ๋ชจ๋“  ๊ฒƒ์ด ํ•œ ๋ฒˆ์— ์™„๋ฃŒ๋˜์ง€ ์•Š๋„๋ก ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๋˜๋Š” ํ˜•์‹ ๋ถˆ์ผ์น˜๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ์‰ฝ๊ฒŒ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ผ๋ฐ˜์ ์œผ๋กœ ๋Œ€๋ถ€๋ถ„์˜ ๋ฌธ์ œ๋ฅผ ์ž๋™์œผ๋กœ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ๋ฐœ๊ฒฌ๋œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ ๋ช‡ ์‹œ๊ฐ„(๋‹ค๋ฅธ ๋Œ€๊ทœ๋ชจ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ ์ œ ๊ณผ๊ฑฐ ๊ฒฝํ—˜์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•จ)๋งŒ ์†Œ์š”๋  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์ˆ˜๋™์ด ํ•„์š”ํ•œ ์˜ˆ์™ธ์ผ ๋ฟ์ž…๋‹ˆ๋‹ค. ๊ฐœ์ž… ๋˜๋Š” ๊ฒ€ํ† .
๊ฐ€์žฅ ํฅ๋ฏธ๋กœ์šด ์ž‘์—…์€ ์•„๋‹ˆ์ง€๋งŒ ์‹œ๊ฐ„์ด ์ง€๋‚จ์— ๋”ฐ๋ผ ๊ฐ€์น˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
๊ธฐ์กด ์ฝ”๋“œ ์ ์šฉ ๋ฒ”์œ„๋Š” ์ด๋ฅผ ๋‚ฎ์€ ์œ„ํ—˜์œผ๋กœ ๋ณ€๊ฒฝํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

question

๋ชจ๋“  3 ๋Œ“๊ธ€

๋‚˜๋Š” editorconfig๊ฐ€ ๊ฐœ์„ ๋˜๊ฑฐ๋‚˜ FxCopAnalyzers๊ฐ€ ์ถ”๊ฐ€๋  ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” C# ์ฝ”๋“œ๋ฅผ ์œ„ํ•œ StyleCop.Analyzers๋ฅผ ์ƒ๊ฐํ•˜๊ณ  ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ C++์— ๊ฐ€์žฅ ์ ํ•ฉํ•œ ๊ฒƒ์ด ๋ฌด์—‡์ธ์ง€ ์ž˜ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ C++์— ๊ฐ€์žฅ ์ ํ•ฉํ•œ ๊ฒƒ์ด ๋ฌด์—‡์ธ์ง€ ์ž˜ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค.

@RanjeshJ ๋Š” ์ฝ”๋“œ๋ฒ ์ด์Šค์—์„œ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” clang-tidy ๋ฐ clang-format์„ ๋งŒ๋“œ๋Š” ์ž‘์—…์„ ํ•˜๊ณ  ์žˆ์œผ๋ฉฐ ์ด๊ฒƒ์ด C++์— ๋„์›€์ด ๋  ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. MSVC๋Š” ์šฐ๋ฆฌ๊ฐ€ ๋ณธ ํ•œ ์ข‹์€ ๋ฆฐํ„ฐ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

C#์˜ ๊ฒฝ์šฐ ์šฐ๋ฆฌ๊ฐ€ ์„ค์ •ํ–ˆ๊ณ  C# ํŒŒ์ผ์— ์ ์šฉ๋˜์–ด์•ผ ํ•˜๋Š” ์ƒˆ๋กœ์šด editorconfig ํ•ญ๋ชฉ ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฑฐ๊ธฐ์— ์ถ”๊ฐ€ํ•ด์•ผ ํ•˜๋Š” C#์— ๋Œ€ํ•œ ๋” ๋งŽ์€ ์Šคํƒ€์ผ์ด ์žˆ๋Š” ๊ฒฝ์šฐ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ StyleCop๊ณผ ๊ฐ™์€ ๊ฒƒ์ด ๋” ๋‚˜์•„๊ฐ€๋Š” ๋ฐ ๋„์›€์ด ๋œ๋‹ค๋ฉด ์šฐ๋ฆฌ๋„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋‚˜๋Š” C#์—์„œ ๋งŽ์€ nit-picking์„ ๋ณด์ง€ ๋ชปํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— editorconfig๊ฐ€ ๋Œ€๋ถ€๋ถ„ ๊ทธ ์ผ์„ ํ•˜๊ณ  ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰