티스토리 뷰

SW/C#

C#_1. 기본 틀 이해하기

김아진 2018. 3. 13. 22:16

1. 기본 틀 이해하기

using System; 

namespace BrainCSharp
{
	class Project
	{ // 프로그램 실행이 시작하는 곳
		static void Main(string[]args)
		{
			Console.WriteLine("Hello, World!");
		}
	}
}

1. using System {  }

 

 using은 C#의 키워드[각주:1] 중 하나이고, System은 텍스트로 같은 데이터를  다룰 수 있는 기본적인 데이터 처리 클래스를 비롯한 C# 코드가 기본적으로 필요로 하는 클래스[각주:2]를 담고 있는 네임스페이스[각주:3]이다. 

 즉, using System은 System 네임스페이스 안에 있는 클래스를 사용하겠다고 컴파일러에 알리는 역할이다. 

 

 

2. namespace BrainCSharp {  }

 

 namespace BrainCSharp은 BrainCSharp이라는 네임스페이스를 만들고, 그 뒤에 따라오는 괄호에는 BrainCSharp 네임스페이스에 Project 클래스를 담는다. 

 

다른 네임스페이스에서 Project 클래스를 사용할려면,

  1. using BrainCSharp;을 이용해서 BrainCSharp 네임스페이스를 참조하거나,
  2. BrainCSharp.Project처럼 클래스가 소속되어 있는 네임스페이스와 클래스의 이름을 붙여줘야 한다. 

 

3. static void Main(string[]args) {  }

 

 이 메소드는 프로그램의 진입점으로, 프로그램을 시작하면 실행되고, 이 메소드가 종료되면 프로그램도 종료된다. 

즉, 모든 프로그램은 반드시 Mian이라는 이름을 가진 메소드를 하나 가지고 있어야 한다. 

 

 static는 한정자(modifier)[각주:4]로 메소드나 변수를 수식한다. C# 프로그램의 각 요소는 코드가 실행되는 시점에 비로소 메모리에 할당되지만, static 키워드로 수식되는 코드는 프로그램이 처음 구동될 때부터 메모리에 할당된다는 특징이 있다. 프로그램 실행 시, CLR(Common Language Runtime)[각주:5]은 프로그램을 메모리에 올린 후 프로그램의 진입점을 찾는다. 

 

 void는 메소드의 변환 형식이다. 영어로는 "비어 있는"이라는 뜻으로, 어떤 결과도 돌려주지 않을 것이라는 것을 컴파일러에게 알려주는 기능이다. 마지막으로 Main은 메소드의 이름이고, 그 뒤에 있는 괄호와 그 사이에 있는 코드는 메소스에 입력되는 매개 변수들이다. 

  1. C# 언어의 규격에 미리 정의되어 있는 특별한 단어 [본문으로]
  2. C# 프로그램을 구성하는 기본 단위로 데이터와 데이터를 처리하는 기능, 즉 메소드(Method)로 이루어져 있다. [본문으로]
  3. 비슷한 클래스, 구조체, 인터페이스, 델리게이트, 열거 형식, 등을 하나의 이름 아래 묶는 일을 한다. [본문으로]
  4. 프로그래밍 언어에서 사용되는 다른 요소들을 꾸며주는 역할 [본문으로]
  5. C#으로 만든 프로그램을 실행시켜주는 또 다른 프로그램 [본문으로]
댓글