Visual C++은 윈도우 API에 기반한 MFC라는 클래스를 사용하여 프로그램을 만든다. MFC는 매우 잘 만든 라이브러리지만 기반은 윈도우 API이기 때문에 사용하기가 매우 어렵다.
C#은 윈도우 API를 직접 사용하지 않고 JAVA의 버추얼 머신과 비슷한 닷넷프레임을 사용한다. 윈도우와는 닷넷프레임으로 분리되어 있다.
C#은 프로그램 개발이 쉽도록 만들어졌다. C#에서는 코드 한줄이면 될 동작을 Visual C++에서는 수십줄을 복잡하게 코딩해야 하는 경우가 매우 많다. 그래서, C#의 생산성이 몇 배로 높다.
C++도 객체지향 언어이지만 C#은 보다 완성된 객체지향적인 프로그램을 작성할 수 있다.
C#은 Visual C++보다는 Visual Basic과 비슷하다.
Visual C++을 제대로 공부하는데 몇 개월의 시간이 필요하지만, C#은 몇 주면 가능하다. Visual C++을 이미 알고 있다면 몇 일만 공부하면 왠만한 프로그램을 개발할 수 있다. Visual C++을 사용하다 C#을 사용하면 C++에서 어렵게 구현되는 기능이 너무 쉽게 구현되는 것에 놀란다.
화면 구현과 같은 노가다 작업을 Visual C++에서는 매우 어렵게 하지만 C#에서는 매우 쉽게 할 수 있다. C#에서는 핵심 알고리즘 구현에 더 집중할 수 있다.
Visual C++은 윈도우 API를 직접 건드릴 수 있는 장점이 있다.
MS에서도 Visual C++보다는 C#에 더 많은 투자를 하고 밀고 있다.
C#은 현재까지 나온 프로그래밍 언어 중 가장 완성도가 높은 언어이다.
하드웨어를 제어하는 특별한 프로그램이 아니라면 C#으로 개발하는 것이 여러 면에서 좋다.
'컴퓨터공학 > C,C++,C#' 카테고리의 다른 글
C에서 static 사용 (0) | 2017.08.06 |
---|---|
C에서 가장 실수하기 쉬운 버그 (0) | 2017.08.06 |
[C#] 숫자를 16진수 문자로 변환 (0) | 2017.08.01 |
[C#] textBox에 문자 추가하기 (0) | 2017.07.31 |
[C#] string 에서 문자열 찾기 (0) | 2017.07.31 |
댓글