본문 바로가기

노력을 이기는 재능은 없고
노력을 외면하는 결과도 없다.
- 이창호 9단

S T U D Y/C#

[Study C#] C# 프로그래밍 언어 이해하기

  Junesker   2021. 10. 1.
반응형

1부 C#준비 프로그래밍 언어 이해하기

항상 새로운 언어를 접할때면 뭔지 모를 어려움이 있었다. 원래 익숙하게 사용하고 공부했던 언어가 아니라서 그런지 습득하는데에 굉장히 불편함과 어려움이 있었는데 먼저 언어를 이해하려고 하고 시작하게되면 그렇게 받아들이는데에도 습득하는데에도 굉장히 스무스해졌던 경험이 있다. 그래서 C#교과서에서도 제일 먼저 프로그래밍 언어 이해하기를 제일 첫번째 순서로 정했나보다.

 

 

 

 


 

 

 

 

 

C# 프로그래밍 언어 이해하기

 

 

 

 

1.  C# 소개하기

 

C#은 마이크로소프트에서 만든 개체 지향 프로그래밍 언어다. C# 프로그래밍 언어를 사용하면 데스크톱, 웹, 모바일, 게임 프로그램, 콘솔, 응용프로그램 등 분야를 가리지 않고 프로그램을 작성할 수 있다. 2000년 7월에 발표했으며, 전 세계 개발자가 오랫동안 사용하고 있는 프로그래밍 언어 중 하나이다.

 

마이크로소프트에서 C# 선전포고

관련기사 링크

 

 

 

 

 

C# 프로그래밍 언어

 

C#은 소프트웨어, 즉 응용 프로그램을 만드는 프로그래밍 언어이다. C# 프로그래밍 언어만으로도 데스크톱 프로그램 및 웹 프로그램, 모바일과 게임 프로그램 등을 제작할 수 있다. 따라서 강력하고 재사용 가능한 응용 프로그램을 쉽게 만들 수 있다. 마이크로소프트의 최고 엔지니어 개발자인 앤더스 헤일스버그가 디자인했으며, 주기적으로 버전을 업데이트한다. 

 

앤더스 헤일스버그

이미지 참고

 

C# 5.0 버전까지는 버전마다 변화가 많았지만, 6.0 버전부터는 작지만 개발자들에게 도움을 주는 기능을 다수 추가하는 방식으로 업데이트 하고 있다.

 

 

 

 

 

C# 프로그래밍 언어 특징

 

  • C#은 .NET(닷넷)을 위한 많은 언어 중 하나로, 마이크로소프트의 닷넷 플랫폼을 기반으로 한다.
  • 절차적 언어와 개체 지향적 언어의 특징, 그리고 함수형 프로그래밍 스타일을 제공하는 다중 패러다임 프로그래밍 언어이다.
  • C#은 C,C++,Java,Javascript와 기초 문법이 비슷하다.
  • C#은 자동으로 메모리를 관리한다.
  • C#은 컴파일 기반 언어이다.
  • C#은 C나 자바스크립트와 달리 전역 함수나 변수가 없고, 모두 클래스 안에서 생성된다.
  • C#은 강력한 형식의 언어이다.
  • C#은 제네릭과 LINQ의 편리한 기능을 제공한다.

 

 

 

 

 

C# 프로그래밍 영역

  • 데스크톱 응용 프로그램
  • 웹 응용 프로그램
  • 모바일 응용 프로그램
  • 데이터베이스 응용 프로그램
  • 게임 프로그램
  • 클라우드 프로그램
  • IoT 프로그램

C#의 독특한 특징 중 하나는 100% 하위 호환성으로 1.0버전부터 8.0 그 이상의 버전까지 낮은 버전에서 지원하던 기능이 높은 버전으로 올라가면서 없어진 것이 단 하나도 없다는 것이다. (버전이 높을수록 낮은 버전의 모든 기능을 사용할 수 있다는 장점이 있는것 같다.)

 

 

 

 

 

2.  닷넷 생태계

 

닷넷(.NET)은 소프트웨어 프레임워크로, 응용 프로그램의 개발 속도를 높이는 데 도움이 되는 API 및 서비스 모음이다. 닷넷 프레임워크, 닷넷 코어, 닷넷 스탠다드처럼 닷넷으로 시작하는 용어들은 모두 닷넷 생태계에 포함된다. C#은 닷넷 생태계의 모든 영역에서 사용할 수 있는 프로그래밍 언어이다. C#을 가장 많이 사용하는 이유도 닷넷의 모든 영역에서 사용할 수 있고 LINQ 기능으로 쉽게 프로그래밍할 수 있기 때문이다. (확장성이 좋은 듯하다.)

 

 

 

 

 

닷넷 프레임워크

 

닷넷 프레임워크는 응용 프로그램을 만드는 또 다른 종류의 소프트웨어이다. 윈도 기반 운영 체제에 설치되고 ASP.NET, Windows Forms, WPF 등 기술을 포한한다. C#은 이러한 닷넷 프레임워크의 일부로, 닷넷 프레임워크는 실행 환경이라고 생각하면 된다.

 

Windows Forms과 WPF는 현재 클라이언트, 서버를 개발하는데에도 사용하고 WPF로 서비스를 주고받을때에도 사용하고 있다.

 

 

 

닷넷 코어

 

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

 

Blazor는 처음들어보는것 같다. 나중에 이것도 찾아보고 내걸로 만들어둬야겠다.

 

 

 

자마린

 

C# 프로그래밍 언어를 사용하여 모바일 응용 프로그램을 제작할 수 있다. 이때 사용할 수 있는 기술이 자마린이다. 자마린을 사용하면 iOS, 안드로이드 기반 모바일 응용 프로그램을 C#과 XAML기술로 만들 수 있다.

 

자마린? 이라는 용어와 개념은 난생 처음이다. 위와 같은 설명처럼 그렇다고 한다. 가볍게 알고만 있자.

 

 

 

닷넷 스탠다드

 

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

 

 

 

 

 

유니티

 

닷넷 생태계에 직접적으로 포함되지는 않지만, 유명한 게임 엔진인 유니티에서 많이 사용하는 언어 중 하나가 C#이다. 유니티 스크립트는 C# 프로그래밍 언어를 사용한다.

 

유니티는 게임 개발하는 친구들을 통해서 익히 알고 있는 개념이라 그런지 익숙하다.

 

 

 

닷넷은 내부적으로 CLR(런타임 엔진으로 닷넷의 모든 소프트웨어를 돌리는 엔진 역할), FCL(닷넷 개발에 필요한 필수 라이브러리 클래스의 집합)로 구분할 수 있다.

 


기초에서 활용까지! 기본기를 탄탄하게 다지는 C# 입문서 - 'C#교과서'의 내용을 참고하여 작성하고 있음을 알려드립니다. 
반응형

댓글