Front-end Developer

0%

출력, 상수

1
2
3
4
5
6
7
8
9
10
11
12
13
using system;

namespace HelloWorld
{
class Program
{
// 메인 함수
static void Main(string[] args)
{
Console.WriteLine("Hello world!");
}
}
}

메인 함수

  • 시작점(entry point)
  • c# 프로그램은 반드시 어떤 함수에서부터 실행되어야 한다.
  • 어떤 함수가 바로 Main함수이다. (또는 메서드라고 표현한다.)
  • exe 파일을 실행하면 Main 함수가 자동으로 실행된다.

Main 함수 앞의 static

  • c#은 OOP 언어라서 기본적으로 static을 안쓰지만 Main 함수는 진입점, 프로그램에 딱 하나만 있는 것. 따라서 프로그램의 진입점은 딱 하나만 있기 때문에 static을 넣어서 정적이라고 표현.
  • 전역 함수가 된다.

string[] args

  • 메인 함수가 외부로부터 받는 데이터
  • 함수 인자 또는 메서드 인자라고 부른다.
  • 커맨드 라인으로부터 인자를 받는다.
    • 커맨드 라인: exe 파일을 실행할 때 추가적으로 넣는 정보
    • e.g. HelloWorld.exe Hi C# is fun 는 Hi, C#, is, fun 총 네 개의 인자가 들어간다.
    • 이 인자들이 args 배열에 저장된다.

void

  • 반환형
  • 모든 함수는 반환형이 존재한다.
  • 실제로 값을 반환할 수도 있고, 반환하지 않을 수도 있다.
  • 함수가 어떤 형태의 데이터를 반환하는지.
  • 반환값이 없다는 의미.

반환형의 역할

  • 커맨드 라인이 반환형을 받아서 exe 프로그램이 올바르게 실행되었는지 여부를 알 수 있다.
    • 0: 성공을 의미
    • 0이 아닌 값: 오류 코드

메인 메서드의 정수값 반환

  • 정수를 반환할 때 int를 사용한다.
  • 실제로 값을 반환할 때는 return 키워드를 사용한다.
1
2
3
4
static int Main(string[] args)
{
return 0; //0을 돌려보낸다.
}

using System;

  • using은 c#에서 지시어라고 부른다.
  • 이것을 없애고 빌드하면 오류가 발생한다.
  • using 지시어 다음에는 사용할 라이브러리(Console.WriteLine처럼 함수를 모아 놓은 것) 이름을 넣는다.
  • 프로그램에서 사용할 함수들이 들어있는 네임스페이스를 코드 맨 위에 using 지시어를 사용해서 컴퓨터에게 알린다.

컴파일

  • 소스코드를 기계 또는 VM이 이해할 수 있는 언어로 변경하는 행위
  • 컴파일러라는 프로그램을 사용(커맨드 라인, IDE)
  • 오류 또는 경고가 발생할 수 있다.

컴파일 오류

  • 작성한 코드가 프로그래밍 언어의 규격에 위반된다.
  • 오류가 있으면 exe 파일이 생성되지 않는다.
  • 프로그램 실행 중 문제를 발견하는 것보다 낫다
  • 오류 목록 창에서 오류를 파악하기 어려울 때는 출력창에서 찾아도 된다.
  • 경고는 프로그래머의 실수처럼 보이는 것을 컴파일러가 찾아준다.

디버그 빌드, 릴리즈 빌드

디버그 빌드

  • 개발자가 개발 중에 사용하는 실행파일
  • 디버깅에 유용한 정보가 많다.
  • 최적화는 거의 되어 있지 않다.

릴리즈 빌드

  • 디버깅을 위한 정보가 적다.
  • 최적화가 잘 되어 있다.
  • 성능이 디버깅 모드보다 훨씬 빠르다.

여러값을 출력하기

화면에 글자를 출력할 때 사용하는 함수

  • Console.WriteLine : 줄바꿈
  • Console.Write : 같은 줄

구문

  • 한 줄짜리 코드: 보통 ; 가 코드 끝에 있다.
  • 블록: 여러 줄의 코드로 이루어졌다.
  • 블록은 범위라고도 부르고, 코드를 ({}) 로 감싼다.
  • 주석: 코드와 관련된 내용을 메모할 때 사용, 컴파일할 때 무시되는 문장.
    • 코드와 마찬가지로 계속 관리해야한다. (바뀐 내용이 있다면 업데이트 필요)
    • 너무 많이 쓰지 않도록 한다. 코드 자체가 그 자체로 이해되도록 작성할 것.

상수

  • 절대 변하지 않는 값, 매직 넘버.
  • 숫자, 문자 등을 포함
  • int 형, double형, float형, bool형, char형

선언과 대입(정의)

  • 선언: 변수, 상수의 자료형과 이름을 컴퓨터에게 알려줌
  • 대입: 변수, 상수의 실제 값을 컴퓨터에게 알려줌.
  • 선언과 대입은 동시에 할 수 있다.
  • const 변수는 선언과 대입이 항상 동시에 일어난다.
    • 한번 값을 대입 한 후 값을 바꾸고 싶지 않을 때 사용한다.
    • 선언과 대입이 이루어진 후 값을 변경하면 컴파일 오류가 발생한다.
1
2
3
4
5
6
7
8
9
10
// 선언
float number;
//대입
number = 1.5;

//선언과 대입을 동시에
float number = 1.5;

//const를 쓰는 경우
const float NUMBER = 1.5;

References
실무 프로그래밍 입문(C#)