C샵

내위키
Dennis (토론 | 기여)님의 2017년 1월 27일 (금) 00:29 판 (새 문서: C# 마이크로소프트에서 내놓은 프로그래밍 언어로, #의 의미는 두 가지가 있다. * 음악 기호로서 #은 반음 올린다(augmented, 증강)는 의미...)
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)

C#

마이크로소프트에서 내놓은 프로그래밍 언어로, #의 의미는 두 가지가 있다.

  • 음악 기호로서 #은 반음 올린다(augmented, 증강)는 의미를 가지고 있다. 즉 C를 증강시켰다는 의미를 가지고 있다.
  • #을 쪼개 보면 ++++가 된다. 즉 C++보다 더욱 더 진보된 언어라는 의미를 가지고 있다.

원래 MS자바윈도우 운영체제에서 돌릴 수 있는 J++이라는 것을 만든 적이 있었다. 바이트코드가 아닌 윈도우 네이티브 프로그램을 만들 수 있는 기능을 지원했는데, 당시 소유권을 가지고 있던 선마이크로시스템즈에서는 자바의 플랫폼 독립이라는 특성을 훼손한 MS에게 소송을 걸어버렸고 결국 J++을 포기한 MS.NET 프레임워크를 내놓으면서 아예 새로 만든 것이 C#이다.

자바의 단점을 여러 가지로 개선시켰기 때문에 프로그래밍 언어 자체로 보면 장점이 많다. 한편으로는 자바 이후의 객체지향 언어들이 자바의 특징을 많이 이어받았기 때문에 C++의 개념을 많이 받은 C#는 차이점을 보이는데, 예를 들면 자바 계열 언어는 클래스 메소드가 기본적으로 오버로딩을 할 수 있고 메소드를 정의할 때 final 키워드를 줘야 오버로딩을 막을 수 있는 것과는 반대로 C#는 C++처럼 오버로딩이 기본적으로는 안 되고 메소드에 virtual 키워드를 줘야 오버로딩을 할 수 있다.