본문 바로가기

Programming/.NET

[C#] C# 이란, C#의 특징

C#

C#이란?

C#은 기존 C++를 한 단계 더 업그레이드했다는 의미로 C#이라는 이름이 붙었습니다.
그만큼 C#의 기반은 C++라고 보는 것이 맞을 것입니다.

C#은 Java와 많이 비교되지만 개인적인 생각으로는 객체지향에 따른 느낌과

Java의 장점을 가져온 언어이기에 그런 것이라 생각합니다.


사실 C++를 공부한 사람들이라면 C#은 C++의 문법이 정리되어 사용하기 쉽게

되어있다는 느낌을 받을 수 있습니다.
(C++ 역시 객체지향을 지원하지만 절차지향과 일반화 프로그래밍까지 지원하기에

C++를 그냥 객체지향 언어라고 설명하기에는 뭔가 약간 부족한 느낌입니다.)

이러한 C#은 .Net의 개발과 함께 개발된 언어로 .Net의 특징이 곧 C#의 특징이라고 할 수 있습니다.

 

C#의 특징

C#의 특징으로는 당연히 객체지향 언어라는 것과 .Net을 가장 직접적으로 반영하고 강하게 의존한다는 점입니다.


그 외에도 
  - unsafe키워드를 이용하여 C의 포인터를 사용할 수 있다.
  - 기존의 COM 컴포넌트도 사용할 수 있다.
  - garbage collection 기능
이렇게 3가지가 제가 느끼는 가장 큰 특징이었습니다.

 

C#을 사용하면서

저는 주로 C#을 이용하는 개발자입니다.
고객사의 요청에 따라 간혹 C나 MFC로 별도의 프로그램을 구성하기는 하지만 

C# 다루는 만큼 다루지는 못하는 것이 사실입니다.
지금 저와 같이 C#을 공부하던 친구들을 보면 아직도 C#을 쓰는 사람이 저 하나인 듯합니다.
그만큼 C#을 사용하는 분야가 제한적이라고 설명할 수 도있습니다.
그래도 Windows 프로그래밍에서는 가장 강력한게 C# 아닐까 합니다.

참고: https://en.wikipedia.org/wiki/C_Sharp_(programming_language)
상단 이미지 출처: https://en.wikipedia.org/wiki/C_Sharp_(programming_language)