์ ๊ณต ๊ณผ๋ชฉ/์๋์ฐ ํ๋ก๊ทธ๋๋ฐ(18)
-
์๋์ฐ ํ๋ก๊ทธ๋๋ฐ -Delegate
์๋์ฐ ํ๋ก๊ทธ๋๋ฐ -Delegate Delegate๋ ์๋์ฐ ํ๋ก๊ทธ๋๋ฐ์ ๊ณต๋ถํ๋ฉด์ ์ฒ์๋ณด๋ ์ค์ํ ๊ฐ๋ ์ด๋ผ ์์ฃผ ๊ฐ๋จํ๊ฒ ์ ๋ฆฌํด๋ณธ๋ค. Delegate -๋ฉ์๋๋ฅผ ๋์ ํด์ ํธ์ถํด์ฃผ๋ ๋ณ์ Delegate์ ์ฐ์์ ๋ณด๋ฉด์ ๋ณด๋ฉด ์ดํด๊ฐ ๋๋ค. Delegate ์ฌ์ฉ๋ฐฉ๋ฒ์ ์ด๋ ๋ค. 1) ๋ธ๋ฆฌ๊ฒ์ดํธ ์ ์ธ(์ฌ์ฉํ ๋ฉ์๋์ ๊ฐ์ ํ์ ์ผ๋ก) //delegate void Delegate(); 2) ๋ฉ์๋ ์ ์ธ //public static void Method1() 3) ๋ธ๋ฆฌ๊ฒ์ดํธ ๊ฐ์ฒด์์ฑ //Delegate d = new Delegate(Method1) 4) ๋ธ๋ฆฌ๊ฒ์ดํธ ๊ฐ์ฒด์ฐ๊ฒฐ // d += new Delegate(Method2) 5) ๋ธ๋ฆฌ๊ฒ์ดํธ ํธ์ถ // d() ๋ธ๋ฆฌ๊ฒ์ดํธ๋ ์ฌ๋ฌ๊ฐ์ ๋ธ๋ฆฌ๊ฒ์ดํธ ๊ฐ์ฒด๋ฅผ ๋ฌถ์ด๋ฃ์ด ์ฌ์ฉํ๋..
2020.09.17 -
์๋์ฐ ํ๋ก๊ทธ๋๋ฐ - ํผ์ ๋ํ์ฌ
์๋์ฐ ํ๋ก๊ทธ๋๋ฐ - ํผ์ ๋ํ์ฌ ํผ์ ๋ํ ์งง์ ์ค๋ช ์ ์์์ ์ค๋ช ํ๋ค. ์ค๋์ ์ด๋ฌํ ํผ์ ํต์ฌ ํด๋์ค์ ์ด๋ฅผ ์ด์ฉํ์ฌ ๋ช๊ฐ์ง ์ด๋ฒคํธ๋ฅผ ๋ง๋ค์ด ๋ณผ ๊ฒ์ด๋ค. ์ํผ ์ํ๋ฆฌ์ผ์ด์ ์ ํต์ฌ ํด๋์ค 1) ํผ ํด๋์ค - ์๋์ฐ ํผ์ ๋ํ๋ด๋ ํด๋์ค 2)์ปดํฌ๋ํธ ํด๋์ค - ์ง์ ์ ์ผ๋ก ํ๋ฉด์ ๋ํ๋์ง๋ ์์ง๋ง ๊ฐ๋ ์ ์ธ ๋ถ๋ถ์ ๋ํ๋ด๋ ํด๋ซ 3) ์ปจํธ๋กค ํด๋์ค - ํผ์ ์ง์ ํ์๋๋ ์ปจํธ๋กค์ ์ํ ํด๋์ค ํผ ์ํ๋ฆฌ์ผ์ด์ ์๋ ๋์์ธ ์์ค ์ฝ๋์, ์ด๋ฒคํธ์ ๋ํ ์์ค ์ฝ๋๊ฐ ์กด์ฌํ๋ค. ๋์์ธ ์์ค ์ฝ๋๋ ์ฐ๋ฆฌ๊ฐ ๋ฒํผ์ ์ด๋ฆ์ ๋ฌด์์ผ๋ก ํ ์ง, ํฌ๊ธฐ๋ฅผ ์ฃผ๋์ง, ์ด๋ค ์ด๋ฒคํธ๋ฅผ ์ค์ ํ ๊ฒ์ธ์ง๋ฅผ ์์ฑํ๋ ๊ณณ์ด๊ณ ์์ค ์ฝ๋๋ ์ด๋ฒคํธ์ ๋ํ ๋์์ ์ง์ ์์ฑํจ์ผ๋ก์จ ๋์ํ๊ฒ ๋ง๋๋ ์์ค ์ฝ๋์ด๋ค. ํ๋กํผํฐ ๋ชฉ๋ก ์ปจํธ๋กค : (Name)..
2020.09.10 -
์๋์ฐ ํ๋ก๊ทธ๋๋ฐ - C# ๊ธฐ๋ณธ๊ฐ๋ (2)
์๋์ฐ ํ๋ก๊ทธ๋๋ฐ - C# ๊ธฐ๋ณธ๊ฐ๋ (2) 1) ๋ธ๋ฆฌ๊ฒ์ดํธ ๋ธ๋ฆฌ๊ฒ์ดํธ๋ ๋ฉ์๋๋ฅผ ๋์ ํด์ ์ฐ๋ ๊ฒ์ด๋ค. ์ด๋ฅผ ๋ฉ์๋ ํฌ์ธํฐ๋ผ๊ณ ํ๋๋ฐ ๋ค์ ์์ ๋ณผ ์ด๋ฒคํธ์ ์ค๋ ๋๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํด์ ์ฌ์ฉ๋๋ ๊ฒ์ด๋ค. ๋ธ๋ฆฌ๊ฒ์ดํธ ํํ delegate ๋ฆฌํดํ์ ๋ธ๋ฆฌ๊ฒ์ดํธ ์ด๋ฆ(๋งค๊ฐ๋ณ์); ๊ทธ๋ ๋ค๋ฉด ์ด delegate๋ฅผ ์ ๊ตณ์ด ์ฌ์ฉํ ๊น? -์ฌ๋ฌ ๊ฐ์ ๋ฉ์๋๋ฅผ ์ฐธ์กฐํ ์ ์๊ธฐ ๋๋ฌธ์ด๋ค. ํ๋์ ํ๋ก์ ํธ ์์๋ ์์์ด ๋ง์ ๋ฉ์๋๊ฐ ์กด์ฌํ๋ค. ์ด๋ฅผ ํฌ๊ดํด์ ์ ์ฅํ ์ ์๋ ๊ฒ์ด delegate์ด๋ค. -๋ธ๋ฆฌ๊ฒ์ดํธ ํ๋ก๊ทธ๋๋ฐ ์์๋ ์ด๋ ๋ค. ๋ธ๋ฆฌ๊ฒ์ดํธ ์ ์ -> ๋ฉ์๋ ์ ์ -> ๋ธ๋ฆฌ๊ฒ์ดํธ ๊ฐ์ฒด ์์ฑ -> ๋ธ๋ฆฌ๊ฒ์ดํธ ๊ฐ์ฒด์ ๋ฉ์๋ ์ฐ๊ฒฐ -> ๋ธ๋ฆฌ๊ฒ์ดํธ ํตํด ๋ฉ์๋ ํธ์ถ 2) ์ด๋ฒคํธ ์ด๋ค ์ฌ๊ฑด์ด ๋ฐ์ํ ๊ฒ์ ์๋ฆฌ๊ธฐ ์ํ ๋ฉ์ธ์ง. ์์๋ฅผ..
2020.09.10 -
์๋์ฐ ํ๋ก๊ทธ๋๋ฐ - C#ํ๋ก๊ทธ๋๋ฐ ์ ๋ฌธ
์๋์ฐ ํ๋ก๊ทธ๋๋ฐ - C#ํ๋ก๊ทธ๋๋ฐ ์ ๋ฌธ C# ํ๋ก๊ทธ๋๋ฐ ์ธ์ด --> .NET์ ์ต์ ํ๋ ์ธ์ด, ์๋ฐ์ ๋จ์ ์ ๋ณด์(์ปดํ์ผ ๋ฐฉ๋ฒ) C#์ ํน์ง --> ๊ฐ์ฒด์งํฅ ์ธ์ด, ๋ธ๋ฆฌ๊ฒ์ดํธ์ ์ด๋ฒคํธ ์กด์ฌ, ๋ฉํฐ์ค๋ ๋, ์์ธ์ฒ๋ฆฌ, ์ฐ์ฐ์ ์ค๋ณต, ์ ๋ค๋ฆญ. ์ด ์ฅ์์๋ C#์ ์๊ฐ์ ํน์ง์ ๊ณต๋ถํ ๋ค, C#์์ ์ฌ์ฉ๋๋ ์ฉ์ด๋ค(์์ ์๋ ๋ธ๋ฆฌ๊ฒ์ดํธ ๊ฐ์)์ ๊ณต๋ถํ๋ค. ์ฒ์๋ถํฐ ๋๋ฌด ๊น์ด ๋ค์ด๊ฐ์ง ์๊ณ '์ ์ด๊ฐ๋ ์ ์ด๋ฐ๊ฑฐ๊ตฌ๋'๋ง ์ง๊ณ ๋์ด๊ฐํ ๋ ์ด๋ณด์๋ค์ ๋๋ ค์์ ๊ฐ์ง์ง ์๊ธธ ๋ฐ๋๋ค. C#์ C++๊ณผ Java์ ์๋ค๊ฐ์ ๊ฒ์ด๋ผ๊ณ ํ์๋ ์๊ฐํ๋ค. C#์ ์ฌ์ฉํ๋ฉด์ ์ด ๋์ ์ฅ์ ์ ๊ฐ์ ธ์ ์ฌ์ฉํ๋ ๋๋์ด ๋ค์๊ธฐ ๋๋ฌธ์ด๋ค. C#์ ์คํ๊ณผ์ ์ ์ด๋ป๊ฒ ๋ ๊น? ๋ค์ ์์ ํ๋ก๊ทธ๋จ์ ๋ณด์ using System class Coldi..
2020.09.10 -
์๋์ฐ ํ๋ก๊ทธ๋๋ฐ - ์ฝ์๊ณผ ์ํผ(C#)
์๋์ฐ ํ๋ก๊ทธ๋๋ฐ- ์ฝ์๊ณผ ์ํผ(C#) ์ค๋์ ์๋์ฐ ํ๋ก๊ทธ๋๋ฐ์์ ๊ฐ์ฅ ๊ธฐ๋ณธ์ด ๋๋ '์ฝ์'๊ณผ '์ํผ'์ ๋ํด์ ์์๋ณผ ๊ฒ์ด๋ค. ์ฝ์ : '๋ช ๋ น์ด ์ธํฐํ์ด์ค'๋ก ์ปดํจํฐ ํค๋ณด๋๋ฅผ ํตํด ๋ฌธ์์ด์ ํํ๋ก ์ถ๋ ฅํ๊ฑฐ๋ ์ ๋ ฅ๋ฐ๋ ๊ฒ์ ๋งํ๋ค. ํํ Run์ด๋ผ๋ ๋ฒํผ์ ๋๋ ์ ๋ ๋์ค๋ ๊ฒ์ ํ๋ฉด์ ์๋ฏธํ๋ค. ์ํผ: ์๋์ฐ ํ๋ก๊ทธ๋จ ๋ชจ์์ผ๋ก ๊ณ์ฐ๊ธฐ๋ ๋ฉ๋ชจ์ฅ๊ฐ์ ์๋์ฐ ํ๋ก๊ทธ๋จ์ ์ฝ๊ฒ ๋ง๋ค ์ ์๊ฒ ๋ง๋ค์ด๋์ 'ํ๊ฒฝ'์ด ์ํผ์ด๋ค. ์ค๋์ ์ฝ์์์์ Hello World๋ฅผ ์ถ๋ ฅํ๊ณ ์ํผ์์ ์ถ๋ ฅ๋ฒํผ๊ณผ ์ข ๋ฃ๋ฒํผ์ ๋ง๋ค์ด ์ถ๋ ฅ์ ๋๋ฅธ๋ค๋ฉด, Hello world๊ฐ ๋จ๋๋ก ๋ง๋ค์ด ๋ณผ ๊ฒ์ด๋ค. 1) ์ฝ์์์์ Hello World -->VisualStudio2017์ ์ ์ -> ํ์ผ->ํ๋ก์ ํธ-> ์ฝ์ ์ฑ(.NET Framewo..
2020.09.04 -
์๋์ฐ ํ๋ก๊ทธ๋๋ฐ Code Convention
์๋์ฐ ํ๋ก๊ทธ๋๋ฐ Code Convention ์ค๋์ ๊ฐ๋จํ๊ฒ ์๋์ฐ ํ๋ก๊ทธ๋๋ฐ์ ์ฝ๋ ๊ด๋ก๋ฅผ ์์ ๋ณผ ๊ฒ์ด๋ค. ์ฌ์ด ๋ด์ฉ์ด๋ ๋๋ฌด ๋ถ๋ด๊ฐ์ง ์๊ณ ๋ดค์ผ๋ฉด ์ข๊ฒ ๋ค. 1) *.Desinger.cs ํ์ผ์ ์์ ํ์ง ๋ง ๊ฒ. - ํด๋น ํ์ผ์ ์์ ํ ์ ํ๋ก๊ทธ๋จ์ด ์๋ํ์ง ์์ ์๊ฐ ์๋ค(๋๋ฒ๊น ์ด ์ด๋ ค์์ง) 2) ํด๋์ค/๋ฉ์๋์ ๋ฐ๋์ ํ์ ์ ์ฌ์ฉ - ํ์ ์๋ public, protected, private์ ๋งํ๋ค. 3) ํด๋์ค/๋ฉ์๋ ์ด๋ฆ์ PascalCasing์ผ๋ก ์์ฑํ๋ค. - PascalCasing : ์ฒซ ๊ธ์๋ ๋๋ฌธ์๋ก ์์, ๊ตฌ๋ถ๋๋ ๋จ์ด์ ์ฒซ ๊ธ์์ ๋๋ฌธ์ ์ฌ์ฉ(๋ค์์คํ์ด์ค๋) 4)๋ณ์ ์ด๋ฆ์ pascalCasing์ผ๋ก ์์ฑํ๋ค - pascalCasing : ์ฒซ ๊ธ์๋ ์๋ฌธ์๋ก ์์, ๊ตฌ๋ถ๋๋ ๋จ์ด..
2020.09.04