![article thumbnail image](https://blog.kakaocdn.net/dn/pZL0J/btrNb9vjglN/KbpFvlwP1x5J2IfJMrKxB0/img.png)
C# 기본구조
자바스크립트의 데이터 타입은 크게 자료형과 참조형으로 나눠져있다.
이처럼 C#에도 데이터 타입이 존재하는데,
C#을 포함한 모든 .NET 프로그래밍 언어는 .NET의 Common Type System에 정의된 .NET 데이터 타입을 사용한다.
무슨말이냐면,
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
int num = 0;
long bigNum = 500000000000L;
short shortNum = 200;
byte byteNum = 40;
bool logic = true;
char chr = '나';
string myName = "seo";
float num2 = 35.1F;
double num3 = 35.235D;
Console.WriteLine(num3);
}
}
}
맨 윗줄에 using System이라는 키워드가 보일 것이다.
이 system은 '네임스페이스'이다.
네임스페이스?
뭔데요? 😥
네임스페이스는 데이터들이 어떤 층위에 속해 있는지를 이름을 지어 구분하는것으로
여러 클래스가 모여 하나의 네임스페이스를 이루는것을 말한다.
(네임스페이스 안에 또 네임스페이스가 존재할수도 있음!)
필요한 상황을 구체적으로 이해해보자.
만약 다른사람과 같이 협업을 하고 결과물을 합칠때 클래스 안에서 변수,함수 이름이 겹치면 큰 문제가 된다.
이때 네임스페이스를 이용하면 이름이 같은 데이터(변수,함수)라도 층위에 따라 다른 의미를 가지게 해주기 때문에
구분짓기에 아주 용이하다는 점👍
주의해야할 점은
네임스페이스 안에있는 class를 쓰기 위해서는 반드시
usnig 키워드를 통해 명시해주어야한다.
맨위에 생성한
using System..using System.Collections.Generic...몇줄이 기본으로 추가되어있는데
이게 바로 그 네임스페이스를 참조하겠다는 뜻이다.
이 줄 덕분에 우린 기본적으로 만들어진
클래스(System.Console,System.Collections 등등) 를 사용할 수 있었다는 사실!📍
C#의 데이터 타입에 대해서도 알아보자.
데이터타입에대해서는 자바스크립트와 큰 차이점은 없다.
단지 앞에 데이터타입을 꼭 '명시' 해줘야한다는 점.
정수형
int -2,147,483,648이상 ~ 2,147,438,647이하만 저장 가능하며
은행관련업무 또는 돈관련 업무시 범위를 초과할 수 있으며,
초과시 랜덤한 값이 들어가거나 오류가난다.
long -9,223,372,036,854,775,808이상 ~ +9,223,372,036,854,775,807이하만 저장 가능.
short -32,768~32,767
byte 0~255
논리형
bool true,false라는 참 거짓의 상태를 저장
문자형
char 1개의 문자를 저장.
문자열형
string 여러 문자를 저장.
실수형
float,double 소수점이있는 실수를 저장 할 수 있다.
마지막으로 C#에서는 console.log("num"); 를 사용하지않고
Console.WriteLine("num"); 를 사용해서 데이터를 호출한다.
System 네임스페이스의 Console클래스의 WriteLine메서드를 호출한다는 뜻이다.