본문 바로가기
C#/c# 기초

1. C# 소개와 특성 및 닷넷생태계

by le_piee 2021. 2. 17.

소개

  • 마이크로소프트에서 만든 개체 지향 프로그래밍 언어
  • 2000년 7월에 처음 발표
  • 마이크로소프트 최고 엔지니어 개발자인 앤더슨 헤일스버그(Anders Hejlsberg)가 디자인 함

 

특징

  • 마이크로소프트의 닷넷 플랫폼을 기반으로 함
  • 절차적 언어와 개체 지향적 언어의 특징, 그리고 함수형 프로그래밍 스타일을 제공하는 다중 패러다임 언어
  • C, C++, 자바, 자바스크립트와 기본 문법이 비슷
  • 자동으로 메모리 관리를 함
  • 컴파일 기반 언어
  • C 나 자바스크립트와 달리 전역 함수나 변수가 없고, 모두 클래스 안에서 생성
  • 제네릭과 LINQ의 편리한 기능을 제공
  • 일반적인 프로그래밍 영역을 모두 다룸
    • 데스크톱 응용 프로그램
    • 웹 응용 프로그램
    • 모바일 응용 프로그램
    • 데이터베이스 응용프로그램
    • 게임 프로그램
    • 클라우드 프로그램
    • IoT 프로그램

 


 

닷넷 간단 정리

  • 무료, 오픈소스, 크로스 플랫폼 개발 환경
  • 런타임 엔진(여러 명령어 집합)
  • 여러 언어 제공 : C#, 비주얼 베이직, F#
  • 내부적으로 구분
    • CLR(Common Language Runtime) - 런타임 엔진으로 닷넷의 모든 소프트웨어를 돌리는 엔진 역할
    • FCL(Framework Class Library) - 닷넷 개발에 필요한 필수 라이블리 클래스의 집합

닷넷 생태계

 

닷넷 프레임워크

  • 윈도우 기반 운영체제에 설치됨
  • ASP.NET, Windows Forms, WPF 등이 포함
  • C#은 닷넷 프레임워크의 일부로, 닷넷 프레임워크는 실행환경이라고 생각하면 됨

닷넷 코어

  • 크로스 플랫폼을 지원
  • ASP.NET Core, Blazor, Windows Forms, WPF 등이 포함
  • 서로 다른 버전을 머신 하나에서 함께 실행 가능
  • 닷넷 프레임워크 기반보다 성능 향상에 중점을 두고 있음

 

자마린

  • C#의 모바일 응용 프로그램 제작 프레임워크
  • 자마린을 활용하여 IOS, 안드로이드 기반 모바일 응용 프로그램을 C#과 XAML로 개발 가능

 

닷넷 스탠다드

  • 닷넷프레임워크, 닷넷코어, 자마린 영역에서 공통으로 사용할 코드를 모아 프로젝트 하나로 관리 할 수 있음
  • 이것을 닷넷 스탠다드라고 함

 

유니티

  • 닷넷 생태게에 직접 포함은 안됨
  • 게임 엔진인 유니티에서 많이 사용하는 언어가 C#
  • 유니티 스크립트는 C#언어를 사용

'C# > c# 기초' 카테고리의 다른 글

7. C# 함수 오버로드와 재귀함수  (0) 2021.02.24
5. C# 제어문  (0) 2021.02.18
4. C# var 형식과 dynamic 형식  (0) 2021.02.18
3. C# Convert를 이용한 형식 변환  (0) 2021.02.18
2. C# 변수와 상수  (0) 2021.02.17