프로그래밍 언어 | |
---|---|
언어 이름 | C# |
개발 주체 | 마이크로소프트 |
표준안 |
ECMA-334 ISO/IEC 23270 |
패러다임 | 객체지향적 |
C#은 마이크로소프트에서 개발하고 실행시 JRE를 필요로 하는 Java와 같이 실행시 .NET Framework를 필요로 하는 객체지향적 프로그래밍 언어로 윈도우 프로그램, 웹 프로그램, 웹 서비스 등을 개발할 수 있다.[1]
C# 프로그램은 실행시에 컴파일된다.
프로그래밍 언어의 명세는 ECMA-334 표준이다.
특징
- 객체지향 패러다임이다. (class, struct, interface등의 개념이 있다.)
- 클래스 다중 상속은 불가능하다. (다만 인터페이스 다중 상속은 가능)
- 기존에 만들어진 여러 클래스들 (e.g. System.XML.XMLDocument)을 쉽게 사용할 수 있어 생산성이 높다.
- 가베지 콜렉터가 있어 메모리 관리에 신경 쓸 필요가 적다.
- unsafe 블럭 내에서 포인터 연산을 할 수 있다. (다만 권장되진 않는다.)
Mono
C# 및 VB.NET 등 .NET 계열 언어로 만들어진 프로그램들은 보통 윈도우에서 구동되지만 Java과 같은 중간 언어 (CIL, MSIL로 불리기도 한다.)를 가지기에 리눅스에서도 mono를 사용하면 CIL로 작성된 프로그램(C# 또는 VB.NET으로 작성된 프로그램) 구동할 수 있다.
다만 오류가 날 수도 있고 윈도우 플랫폼에서만 작동되는 코드[DllImport]가 있을 수 있기에 모든 C# 프로그램들을 안정적으로 돌릴 순 없다.
안드로이드/iOS 어플리케이션 개발
Xamarin을 설치하여 개발할 수 있다, 하지만 부분 유료화이고 특히 무료 사용자는 Visual Studio랑 연동 불가능하다.(30일 체험판 제외) 닥치고 무조건 Xamarin Studio다.
개발 프로그램
- Visual Studio
- MonoDevelop / Xamarin Studio
프로그래밍 관련 정보 |
|||||||||
---|---|---|---|---|---|---|---|---|---|
문자 인코딩 | |||||||||
문자 집합 |
|
||||||||
프로그래밍 언어 | |||||||||
마크업 언어 | |||||||||
표준과 API와 규격 | |||||||||
라이브러리 | |||||||||
프레임워크 | |||||||||
개발 소프트웨어 | |||||||||
튜토리얼 |