C# - C#๊ณผ .NET์ ์์, ๊ฐ๋ฐ ํ๊ฒฝ ๊ตฌ์ถ๊ณผ Hello World
๐ ์ฑํฐ 1. C# ์๊ฐ์ ๊ฐ๋ฐ ํ๊ฒฝ ์ค์
๐งฉ C# ์ธ์ด์ ๊ฐ์
C#์ ๋ง์ดํฌ๋ก์ํํธ์์ ๊ฐ๋ฐํ ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ด๋ค.
ํ์์ ์๊ฒฉํ๋ฉฐ, ์์ ์ฑ๊ณผ ํจ์จ์ฑ์ ๊ณ ๋ คํ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ถ๊ณ ์๋ค.
C, C++, Java์ ์ ์ฌํ ๋ฌธ๋ฒ์ ๊ธฐ๋ฐ์ผ๋ก ํ๋ฉฐ, ๋ค์ํ ํ๋ซํผ์์ ์คํ ๊ฐ๋ฅํ๋ค.
์ฃผ์ ํน์ง
- ๊ฐ์ฒด์งํฅ ์ค๊ณ: ๋ชจ๋ ๊ตฌ์ฑ ์์๊ฐ ํด๋์ค์ ๊ฐ์ฒด ๊ธฐ๋ฐ์ผ๋ก ์ด๋ฃจ์ด์ง๋ค.
- ๊ฐํ ํ์ ์์คํ : ์๋ฃํ์ ๋ช ํํ ์ ์ธํด์ผ ํ๋ฉฐ, ์ปดํ์ผ ํ์์ ์ค๋ฅ๋ฅผ ๋ฐฉ์งํ ์ ์๋ค.
- ๊ฐ๋น์ง ์ปฌ๋ ์ ์ง์: ๋ฉ๋ชจ๋ฆฌ ํด์ ๋ฅผ ์๋์ผ๋ก ์ฒ๋ฆฌํ๋ค.
- ํ๋ซํผ ๋ ๋ฆฝ์ฑ: .NET ํ๋ซํผ์ ๊ธฐ๋ฐ์ผ๋ก ๋ค์ํ ํ๊ฒฝ์์ ์คํ ๊ฐ๋ฅํ๋ค.
๐ ๏ธ .NET ํ๋ ์์ํฌ
.NET์ C# ํ๋ก๊ทธ๋จ์ด ์คํ๋๋ ๊ธฐ๋ฐ ํ๋ซํผ์ด๋ค.
C#์ผ๋ก ์์ฑ๋ ์ฝ๋๋ ์ค๊ฐ ์ธ์ด(IL)๋ก ๋จผ์ ์ปดํ์ผ๋๋ฉฐ, ์คํ ์์ ์ CLR(Common Language Runtime)์ด ์ด๋ฅผ ๊ธฐ๊ณ์ด๋ก ๋ณํํ์ฌ ์คํํ๋ค.
์ด ๊ณผ์ ์์ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ, ์์ธ ์ฒ๋ฆฌ, ๋ณด์ ๋ฑ์ ๊ธฐ๋ฅ์ ์๋์ผ๋ก ์ ๊ณต๋ฐ์ ์ ์๋ค.
๐ป Visual Studio ์ค์น ๋ฐ ํ๋ก์ ํธ ์์ฑ
Visual Studio๋ C# ๊ฐ๋ฐ์ ๊ฐ์ฅ ๋๋ฆฌ ์ฌ์ฉ๋๋ ํตํฉ ๊ฐ๋ฐ ํ๊ฒฝ(IDE)์ด๋ค.
์ค์น ์ ์ฐจ
- Visual Studio ๊ณต์ ํํ์ด์ง์์ ์ค์น ํ์ผ์ ๋ค์ด๋ก๋ํ๋ค.
- ์ค์น ์ .NET ๋ฐ์คํฌํฑ ๊ฐ๋ฐ ์ํฌ๋ก๋๋ฅผ ์ ํํ๋ค.
- ์ค์น ์๋ฃ ํ ์ด๊ธฐ ์ค์ ์ ์งํํ๋ค.
์ฝ์ ์ฑ ์์ฑ ๋ฐฉ๋ฒ
- Visual Studio ์คํ → ์ ํ๋ก์ ํธ ๋ง๋ค๊ธฐ
- C# ์ฝ์ ์ฑ ์ ํ
- .NET 6.0 ์ ํ + ์ต์์ ๋ฌธ ์ฌ์ฉ ์ํจ ์ค์
- ํ๋ก์ ํธ ์ด๋ฆ ๋ฐ ๊ฒฝ๋ก ์ค์ ํ ์์ฑ
๐จ๏ธ Hello World ์ถ๋ ฅํ๊ธฐ
์๋๋ C#์ผ๋ก ์์ฑํ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ์ฝ์ ์ถ๋ ฅ ํ๋ก๊ทธ๋จ์ด๋ค.
using System;
namespace HelloWorld
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World!");
}
}
}
๊ตฌ์ฑ ์์ ์ค๋ช
- using System;: Console ํด๋์ค ๋ฑ ๊ธฐ๋ณธ ๊ธฐ๋ฅ์ ์ฌ์ฉํ๊ธฐ ์ํ ์ ์ธ์ด๋ค.
- namespace HelloWorld: ์ฝ๋ ์์ญ์ ๊ตฌ๋ถํ๋ ๋ ผ๋ฆฌ์ ๋จ์์ด๋ค.
- class Program: ์คํ ๋ก์ง์ ๋ด๋ ํด๋์ค์ด๋ค.
- static void Main(string[] args): ํ๋ก๊ทธ๋จ์ ์ง์ ์ ์ด๋ค.
- Console.WriteLine(...): ์ฝ์์ ๋ฌธ์์ด์ ์ถ๋ ฅํ๊ณ ์ค๋ฐ๊ฟ์ ํฌํจํ๋ค.
โ๏ธ ์๋์์ฑ๊ณผ ๋ณด์กฐ ๊ธฐ๋ฅ
Visual Studio๋ IntelliSense๋ผ๋ ์๋์์ฑ ๊ธฐ๋ฅ๊ณผ ์ฝ๋ ํ ํ๋ฆฟ ๊ธฐ๋ฅ์ ์ง์ํ๋ค.
์๋์์ฑ
- Tab ํค๋ฅผ ์ฌ์ฉํด ํด๋์ค๋ช ์ด๋ ๋ฉ์๋๋ช ์ ์๋์ผ๋ก ์์ฑํ ์ ์๋ค.
- Ctrl + Space๋ฅผ ๋๋ฅด๋ฉด ์ฌ์ฉ ๊ฐ๋ฅํ ๋ฉ์๋ ๋ชฉ๋ก, ์ค๋ช , ์ธ์ ์ ๋ณด๋ฅผ ํ์ธํ ์ ์๋ค.
์ฝ๋ ํ ํ๋ฆฟ
- for, if, while ๋ฑ ํค์๋ ์ ๋ ฅ ํ Tab์ ๋ ๋ฒ ๋๋ฅด๋ฉด ๊ธฐ๋ณธ ๊ตฌ์กฐ๊ฐ ์๋ ์์ฑ๋๋ค.
๐ฃ ๊ฐ์์์์ ํ์ต ํ๋์ ์กฐ์ธ
๋ฌด์์ ๋ฐฐ์ฐ๋๊ฐ๋ณด๋ค ์ ๋ฐฐ์ฐ๋๊ฐ์ ์ง์คํด์ผ ํ๋ค.
๋ฌธ๋ฒ์ ๋จ์ํ ์ธ์ฐ๊ธฐ๋ณด๋ค๋ ๊ทธ ๋ชฉ์ ๊ณผ ๋งฅ๋ฝ์ ์ดํดํ๋ ๊ฒ์ด ์ฅ๊ธฐ์ ์ธ ์ค๋ ฅ์ผ๋ก ์ด์ด์ง๋ค.
๋ํ, ์๋ฒฝํ ์ฝ๋๋ฅผ ํ ๋ฒ์ ์์ฑํ๋ ๊ฒ๋ณด๋ค ๋น ๋ฅด๊ฒ ์๋ํ๊ณ ์คํจํ๋ฉด์ ์์ ํ๋ ๊ฒฝํ์ด ์ค์ํ๋ค.
๋ง์ด ์จ๋ณด๊ณ , ์ง์ ์๋ฌ๋ฅผ ๊ฒช๊ณ ํด๊ฒฐํ๋ฉด์ ์ฑ์ฅํ ์ ์๋ค.
โ
์ฌ์ค ๊ธฐ์ด๋ ์ด๋ฏธ ์๊ณ ์์ง๋ง ๋ค์ ์๊ธฐ ์ํจ๋ค๋ ๋ชฉ์ ์ผ๋ก ํ๋์ฉ ๋ค์ ๊ณต๋ถํด๋ด์ผ๊ฒ ๋ค. ๊ฐ๋ฐ์๋ ๊ฒธ์ํ ์ ๋ฐ์ ์๋ ์ง์ ์ด๊ธฐ ๋๋ฌธ์ ํญ์ ๊ฒธ์ํ์..