본문으로 바로가기

C# 콘솔 프로젝트 만들기 #2.5 메인 사진

안녕하세요. 애드라이프 입니다.

전 포스팅에서 C# 콘솔 프로젝트를 만들어보고

간단한 프로그램을 작성해서 실행까지 해보았습니다.

 

이번 포스팅에서는 #2편의 프로그램을 심층!? 분석하는 시간을 갖도록 하겠습니다.

C# 콘솔 프로젝트 만드는 법이 궁금하신 분들은 아래 링크를 클릭해주세요.

C# 프로젝트 만들기 <- 링크

 

C# 프로그램 시작하기 - 간단한 콘솔 프로젝트 만들기 #2

안녕하세요. 애드라이프입니다. 이전 포스팅에서는 C# 프로그래밍을 위한 개발 환경 구축을 진행했는데요. 모두 Visual Studio 2017 설치는 마무리 하셨나요? 혹시나 아직 개발 환경 구축을 하지못하신 분들을 위..

increase-life.tistory.com

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
using static System.Console;
 
namespace HellowWorld
{
    class Hellow
    {
        //프로그램 실행부
        /*프로그램 
실행 부*/
        static void Main(string[] args)
        {
            if (args.Length == 0)
            {
                WriteLine("사용방법 : HellowWorld.exe <이름>");
                return;
            }
            WriteLine("안녕하세요. {0}님!\n제 블로그를 방문해주셔서 감사합니다.", args[0]);
        }
    }
}
http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4ftext-decoration:none">Colored by Color Scripter

 

 

< 이전 포스팅의 프로그램 전문입니다. >

 

using System.Console; 부터 한줄한줄 알아가 보도록 하겠습니다.

using System.Console;

가장 첫번째 줄인 using System.Console;은 3가지 요소를 가지고 있습니다.

1. using  | 2. System.Console  |  3. ;(세미콜론)

 

using은 시스템에 미리 역할이 지정되어 있는 키워드를 나타냅니다.

따라서 변수등으로 같은 이름을 쓰게되면 에러가 발생합니다.

영문으로 봐도 얼핏 알수 있지만 뭔가를 사용하겠다는 의미를 가지고 있습니다.

 

System.Console은 C#에서 기본적으로 필요한 클래스를 가진 네임스페이스 입니다.

그중에서 콘솔관련을 특정 짖고 있네요~

클래스와 네임스페이스를 모르시는 분들을 위해 쉽게 말하면

탁자를 만들기 위해 필요한 기본적인 도구(클래스)들이 들어있는

도구함(네임스페이스)이라고 생각하시면 됩니다.

 

;(세미콜론)은 문장의 끝을 알리는 역할을 합니다.

 

namespace HellowWorld{}

앞서 namespace를 도구함에 비유 했듯이 각종 요소들을

특정 이름으로 묶어 두는 것을 의미합니다.

이렇게 해놓는 이유는 수많은 기능들을 하는 부분들을

알아보기 쉬운 이름으로 묶어놓으면 바로바로 찾아 쓰기 편하기 때문입니다.

컴퓨터로 치면 폴더로 비슷한 파일을 묶어두는 방식과 같습니다.

 

구조는

namespace 네임스페이스 이름{ 각종요소 }

 

class Hellow{}

namespace HellowWorld{} 안에 Class Hellow{}라는 클래스가 포함되어있는 구조입니다.

해당 문구는 Hellow라는 이름의 클래스를 생성합니다.

도구함에 들어있는 도구중 하나이며 {}안에 구성에 따라 역할은 천차만별입니다.

 

구조는 

class 클래스 이름{ 데이터 처리부분 }

 

//프로그램 실행부

/*프로그램 

실행 부*/

 

이 부분은 C#에서 지원하는 2가지 주석입니다.

주석은 컴파일러가 인식하지 안고 그냥 넘어가기 때문에 실제 코드가 아니지만

메모 역할로 설명을 적는 기능으로 많이 사용합니다. 

//은 한줄 주석이고 /**/ 멀티라인 주석입니다.

 

static void Main(string[] args){ }

데이터를 처리하는 부분의 메소드입니다.

특히 Main메소드는  프로그램의 시작점을 알리는 메소드이며

반듯이 Main이라는 이름을 가진 메소드 하나를 가지고 있어야합니다.

메소드라는 개념이 어렵다면 C언어의 함수의 개념으로 이해하셔도 됩니다.

 

구조는

static void Main(string[] args){ }

차례대로 Static(한정자), void(반환 형식), Main(메소드 이름), String[] args(매개변수 or 입력 형식)

한정자는 수식하는 보조역할을 수행하며 반환형식은 결과를 돌려주는 형식을 지정합니다.

void는 반환형식이 없다는 뜻으로 어떤 값도 반환하지 않습니다. Main은 메소드 이름이며

매개 변수 부분은 프로그램을 실행 할때 입력하는 방식으로 구성되어 있습니다.

 

이전 포스팅에서 HellowWorld.exe 애드라이프로 프로그램을 실행하면

애드라이프 부분이 args에 입력된 이유가 매개변의 특징 때문입니다.

 

if (args.Length == 0)

프로그램을 실행할 때 같이 썼던(애드라이프) 부분이 없다면 즉

HellowWorld.exe 애드라이프가 아닌 HellowWorld.exe만으로 프로그램을 실행 했을 경우입니다.

            

                WriteLine("사용방법 : HellowWorld.exe <이름>");

                return;

HellowWorld.exe만으로 프로그램을 실행 했을 경우 수행 하는 구문으로

cmd창에 해당 문구를 띄우고 메소드를 종료하는 return을 수행합니다.

 

WriteLine("안녕하세요. {0}님!\n제 블로그를 방문해주셔서 감사합니다.", args[0]);

HellowWorld.exe 애드라이프와 같이 프로그램 실행시 추가문구를 작성 했을 경우

실행되는 구문으로 추가문구와 함께 해당 문자열을 출력합니다.

결과는 이전 포스팅과 같이 아래 사진처럼 출력됩니다.

C# 콘솔 프로젝트 실행 결과

#2와 #2.5까지 거처 간단한 콘솔 프로젝트 만들기에 대해서 진행하였습니다.

궁금한 부분이 있으면 댓글로 남겨주세요~

다음에는 더 유익한 포스팅으로 돌아오겠습니다.

by 애드라이프