์ด๋ฐ ๊ฒ ํ์ด ๋ ์ ์์์ง๋ ๋ชจ๋ฅด๊ฒ ์ง๋ง ๋ฌธ๋ ์๊ฐ์ด ๋ค์ด์ ๋จ๊น๋๋ค.
Visual Studio๊ฐ ์ฝ๋๋ฅผ ์ต์ ํ ํ ์ ์๋ ๋ง์ ๋ถ๋ถ๋ค์ ์ ์ํด์ค๋ค๋ ๊ฒ์ ์๊ณ ๊ณ์ค ๊ฒ์ ๋๋ค.
๊ฐ๋ น ๊ธฐ์กด์ C# ์ฝ๋๋ฅผ ์ต์ ๋ฌธ๋ฒ์ C#์ฝ๋๋ก ์ ์ํด์ฃผ๋ ๊ฒ์ด์ฃ .
- foreach๋ฌธ์ linq๋ก ๋ฐ๊ฟ์ฃผ๊ฑฐ๋
- .ToList()๋ ToArray(), Concat() ๊ฐ์ ๊ฒ์
[.. ]
์ด๋ฐ์์ผ๋ก Collection Expression์ผ๋ก ๋ฐ๊ฟ์ฃผ๊ฑฐ๋ - SubString() ๊ฐ์ ๊ฒ์ [5,3] ์ด๋ฐ์์ผ๋ก Range-Operator๋ฅผ ์ ์ํด์ค๋ค๊ฑฐ๋
๊ธฐํ ๋ฑ๋ฑ ์์ฃผ ๋ง์ต๋๋ค.
์ ๋ ์ฝ๋๋ฅผ ์์ฑํ ๊ธฐ๊ฐ์ด ๋์ด๊ฐ๋ฉด์ ๊ฒฝ๋ ฅ์๋ค์ด ์ ์ง๋ณด์๋ฅผ ์ํด ๋๋ฆ๋๋ก์ ์ชผ๊ฐ๊ธฐ์ ๋ํ ๊ฒฝํ๊ณผ ๊ธฐ์ค์ด ์๊ฒจ๋๊ณ ์๋๋ฐ(๊ทธ ๊ธฐ์ค์ด ์ผ๋ฐ์ ์ธ ๊ฐ๋ฐ์์ ๊ธฐ์ค์ด๊ธธ ๊ฐ์ ํ ํฌ๋งํฉ๋๋ค.)
์ฝ๋๋ฅผ ์์ฑํด์ ํจ์์์ ์ด๋ค ํ์๋ค์ด ๋ฌถ์ด์ ธ์ ๋์ํ๋ค๋ฉดโฆ ์ด์ ์๋ ๊ฐ๋ฐ ์ด๊ธฐ์
// ์ฐฝ๊ณ ์์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์์ ์ ํจ์ฑ ์ฒดํฌ
์ด๋ ๊ฒ ์ฃผ์์ ๋จ๊ฒผ์ต๋๋ค. ์ต๊ทผ๊น์ง๋
#region ์ฐฝ๊ณ ์์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์์ ์ ํจ์ฑ ์ฒดํฌ
#endregion
์ด๋ ๊ฒ ๋ฐ๊ฟจ๊ตฌ์.
ํ์ง๋ง region ์ญ์ ์ฃผ์๊ณผ ํฐ ์ฐจ์ด์ ์ด ์์ผ๋ฉฐ ๊ทธ๋ฅ ์ฝ๋ ์ ํ๋ ๊ธฐ๋ฅ๋ง๊ณค ์์ด์ private ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๊ธฐ ์์ํ์ต๋๋ค.
๊ธฐ๋ฅ์ ์์ฝํ ๋ฌธ์์ด์ ์ญ ์ฐ๋๊ฒ ์๋๋ผ ํจ์์ด๋ฆ์ผ๋ก ๋ช ์ํ๊ธฐ์๋ ์ข์์์ธ๋ฐ์.
๊ทธ๋ฐ๋ฐ private ๋ฉ์๋๋ฅผ ๋ง๋ค๋ค๋ณด๋ VS์์ class ์์ ์ด๋ค ์์ฑ์ด๋ ํ๋๋ฅผ ์ฐธ์กฐํ์ง ์๋ ๊ธฐ๋ฅ์ด๋ผ๋ฉด ๋ ๋ฆฝ๋ ๊ธฐ๋ฅ์ด๋ผ๋ ๊ฑธ ๋ช ์ํ๊ธฐ ์ํด์ static์ ์ถ๊ฐํ๋ ๊ฒ์ ์ถ์ฒํ๋๊ตฐ์.
๊ทธ๋์ private ๋ฉ์๋ ๋ด๋ถ์์ class ์ field๋ property๋ฅผ ์ฐธ์กฐํ์ง ์๊ณ ์ค๋ก์ง parameter์๋ง ์์กดํ๊ณ ์๋ค๋ฉด private static ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ผ๋ก ํ์ต๋๋ค.
๊ฐ๋ฐ์ ์ ์ฅ์์๋ ๊ตณ์ด ์ํด์ค๋ ๋๋ ๊ฒ์ด์ง๋ง, VS์ .NET์ ์ฝ๋ ์ต์ ํ ๊ธฐ๋ฅ์ ์ต๋ํ ๋ฐ๊ธฐ ์ํด์๋ ์ถ์ฒํด์ฃผ๋๋๋ก ๊ฐ๋ฐํ๋ ๊ฒ์ด ์ข๋ค๋ ์๊ฒฌ์ด๊ธฐ ๋๋ฌธ์ ๋๋ค. var๋ ๋ง์ฐฌ๊ฐ์ง๊ฒ ์ง์.
์ฝ๋ ์ต์ ํ๋, ์ ๊ฐ ์๊ณ ์๊ธฐ๋ก ๋ด๊ฐ ๋์ผ๋ก ๋ณด๊ณ ์๋ ์ฝ๋ํ์ผ์ ๊ทธ๋๋ก ๋น๋ํ๋ ๊ฒ ์๋๋ผ ms build ์ ์ฅ์์ ์ง์ง๋ก ๋น๋๊ฐ ๋ค์ด๊ฐ๊ธฐ ์ ์ ์ฝ๋๋ฅผ ๋น๋๊ฐ ์ ์ฉํ ๋ฐฉํฅ์ผ๋ก ์๊ธฐ ๋ง๋๋ก ๋ฐ๊ฟ๋ฒ๋ฆฌ๋ ๊ฒ์ผ๋ก ์ฝ๊ฒ ์ดํด ๊ฐ๋ฅํฉ๋๋ค.
- ์ฝ๋ ์ธ๋ผ์ธ ๊ธฐ๋ฅ
- ์์์ด ํ์ํ์ง ์์ ํด๋์ค์ sealed ์ ์ฉํ๊ธฐ
- static property ๋ก ๋ฌธ์์ด์ ์ฐ๊ธฐ๋ณด๋ค๋ const๋ก ์ ์ฉํ๊ธฐ
๋ฑ๋ฑโฆ๋ ๋ง์ด ์์ ๊ฒ์ ๋๋ค.
์ฌ๋ ์นํ์ ์ธ ์ฝ๋๋ณด๋ค๋ ๊ทธ๋๋ ๊ธฐ๊ณ ์นํ์ ์ผ๋ก ์ฝ๋๋ฅผ ์์ฑํด์ ms build๊ฐ .NET์ ๋ ์ build ํด์ฃผ๊ธธ ๋ฐ๋ผ๋ ๋ง์์ผ๋ก ์ค๋๋ private static ๋ฉ์๋๋ฅผ ์์ฑํด ๋ด ๋๋ค.