코딩을 모르는 사람도 들어봤을만한 프로그램 "Hello, World" 를 만들어보자.
using System;
Hello, World 라는 문장을 출력하기 위해서는 Console의 WriteLine 함수를 사용해야한다.
하지만 이 함수는 다른 개발자가 System이라는 공간에서 개발한 함수이기 때문에 System을 참조하겠다고 컴퓨터에게 말할 필요가 있다.
namespace ConsoleApp2{}
우리는 System에서 불러온 console 함수를 사용해 개발한 공간을 만들어야한다.
이때 namespace는 독자적인 개발 공간을 의미하고 위의 코드는 ConsoleApp2이라는 공간을 새롭게 정의하고 해당 공간에서 개발을 할 것이라고 컴퓨터에게 말해주는 것이다.
internal class Program{}
namespace에서 새롭게 개발을 진행한다고 했을 때 어떤 것을 개발해야할지 정해야한다.
이때 개발할 주체를 새롭게 정의할 필요가 있고 이 형식을 class라고 한다.
위의 코드는 Program이라는 주체를 정의하고 이에 대해 다룰 것임을 컴퓨터에게 말해주는 것이다.
static void Main(string[] args)
int a = 2;
int b = 3;
int add(int a,int b)
{
int sum = a+b;
return sum;
}
위의 예시를 보면 add() 메서드의 반환형은 int인 것을 알 수 있다.
마찬가지로 void 또한 반환형이며, 다만 어떠한 값도 반환하지 않을 때 사용한다.
Main 메서드 실행 이후에는 반환할 데이터가 없거나, 반환할 필요가 없기 때문에 void를 사용한다.
결과적으로 작성한 코드를 해석하면 다음과 같다.
나는 개발자들이 System에서 만든 Console 함수를 사용하려고 해
ConsoleApp2이라는 곳에서 Program을 만드는데 사용할거야
우선 Console 함수 중에 Console.WriteLine 이라고 작성된 문장을 출력하는 함수가 있거든?
그걸로 Hello, World 출력하고 프로그램은 종료해줘.
Hello, World는 단순히 문자열을 콘솔창에 출력하는 프로그램이 아닌, using의 의미부터 Console 함수의 사용까지 Visual Studio에서 C#이 구동되는 전반적인 원리를 이해하기 위한 프로그램으로 볼 수 있다.
이것만큼은 꼭 지키자!
\를 사용하면 뒤에 나오는 문구를 특수 처리할 수 있다.
Console.WriteLine("나는 철수에게 "경고" 했다.")
철수에서 특별한 경고를 하기 위해서 경고 양 옆에 "를 붙인 채로 출력을 하고 싶지만, 위의 코드를 보면 컴퓨터가 제대로 인식하지 못 하는 것을 볼 수 있다.
Console.WriteLine("나는 철수에게 \"경고\" 했다.")
이때 이런 식으로 출력하고 싶은 " 앞에 \를 작성하면 컴퓨터는 출력해야하는 대상으로 인식을 해주는 것을 알 수 있다. 이렇게 특수처리를 해주는 +char 를 Escape Sequence 라고 한다.
Console.WriteLine("오크이(가) 10의 데미지로 공격합니다");
string name;
int attack;
name = "오크";
attack = 10;
Console.WriteLine("{0}이(가) {1}의 데미지로 공격합니다",name,attack);
위의 두 코드는 동일한 문장을 출력한다. 겉으로 보기에는 아래보다는 위의 코드가 더 간결하므로 위를 사용하는 것이 좋아보이나, 아래 코드의 진가는 정의해야 할 몬스터가 굉장히 많을 때 발휘된다.
자리표시자를 사용함으로써 반복적인 작업을 줄일 수 있고, 실수를 줄일 수 있다.
string argument = "안녕하세요"
int a = 2;
int a;
a = 2;
위의 코드처럼 변수 선언과 함께 값을 지정할 수 있다. 다만 개체가 많을 경우 변수 선언만 하고 개체 별로 값을 새롭게 설정하는 것이 더 편하고 가시성이 좋다.
const double Pi = 3.14;
프로그램에서 값을 변경할 수 없도록 하는 데이터로, 변수 선언문 앞에 const를 입력하고 값을 반드시 설정해줘야한다. 보통 게임 개발에서는 값이 바뀌면 안 되는 경우 상수로 설정한다.
위에서 배운 것들을 활용해서 나의 소개를 하자면 다음과 같다. 막상 다 하고나니까 진짜로 다 들어가있어서 신기하네.