[C#] Lec 01 - C#프로그래밍의 구조
[C#] Lec 01 - C#프로그래밍의 구조
C#프로그래밍의 구조 (메소드)
- 함수의 선언은 키워드, 네임스페이스 이용
- 문장의 끝에는 ; (semicolon) 붙여줌
1
2
3
using System;
//using : 키워드
//system : 네임스페이스
- 키워드와 선언을 통해 namespace, class를 만들 수 있음
1
2
3
4
5
6
7
8
9
10
11
12
namespace Testproject
{
class program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World");
}
}
}
//namespace, class와 같은 키워드 이후
//Testproject, Program 같은 이름으로 선언
- 객체 지향 언어이므로 모든 소스가 클래스와 메소드의 구성으로 되어 있음
- 시작 지점의 메소드는 반드시 static 한정자로 지정되어 있어야 함 (Main을 의미)
함수 (Method)의 선언
- 한정자 (optional), 반환형(void, int boolean 등), 선언(함수 이름, 시작 메서드는 Main), 매개변수 형 (없어도 됨, Main의 경우 string[] args)
- {} 으로 이루어진 코드 블록으로 감싸 함수의 코드 특정
컴파일러와 인터프리터
컴파일러 (Compiler)
- 고급 언어로 쓰여진 원시 코드가 컴퓨터에서 수행되기 위해서 컴퓨터가 이해할 수 있는 기계어로 변환되어야 함. 원시 코드를 기계어로 변환시켜 목적 코드(object code)로 번역해주는 특수한 프로그램.
- 디스크에 저장, 실행시 모든 문장을 구문적으로 분해, 여러 문장이 다른 문장 참조시 정확히 참조될 수 있도록 연속적 상태에서 목적 코드를 만듦
- 3세대 이후 언어에 적용, Fortran, C, C# 등에 컴파일러 적용
- 원시 코드를 수정하지 않고 반복수행하는 경우 효율적, 일반적으로 실행속도가 빠르며 컴파일러는 디스크에 저장.
인터프리터(interpeter)
- 고급언어로 작성된 원시코드 명령문들을 한 번에 한 줄씩 읽어 들여서 실행.
- 원시 코드의 문장들이 입력되면 인터프리터는 문장들의 기능을 정의하고 그 기능대로 수행함. 이어서 다음 문장 읽어 분석, 실행하는 작업 반복
- 실제적으로 원시코드 내의 많은 에러들이 발견되지 않음. 목적 코드의 생성값이 인터프리터에 의해 직접 수행 → 목적 코드를 위한 디스크 저장공간이 요구되지 않음
- 주기억장치나 ROM에 저장되어있으며, 각 명령을 매번 번역해야하므로 컴퓨터에 기억된 목적 코드에 의해 수행되는 것보다 수행속도가 늦음.
- 대화식 프로그래밍, 고급 명령문을 중간형태로 번역하여 실행, 반복하며, ROM(Read Only Memory)에 주로 저장됨.
This post is licensed under CC BY 4.0 by the author.