0%

닷넷 vs 닷넷프레임워크 차이, .NET vs .NET Framework 차이

dotnet

.NET Framework 란?

한마디로 표현하자면 “윈도 프로그램을 만들기 위한 개발 프레임워크” 입니다.
닷넷 프레임워크(NET Framework)는 웹 기반 애플리케이션,
form 기반 애플리케이션, 웹 서비스를 포함한 윈도 애플리케이션 개발을 위한 소프트웨어 프레임워크 입니다.
프레임워크는 C#, 비주얼 베이직 등과 같은 프로그래밍 언어를 지원하여 모두에 걸쳐 일관된 프로그래밍 모델을 제공합니다.
.NET Framework 는 다음과 같은 아키텍쳐로 구성되어 있습니다.

dotnet

VB(Visual Basic), C++, C#, F# 등 여러 언어로 프로그램을 개발할수 있으나,
대부분 C#을 많이 사용하고 있습니다.

.NET 이란?

한마디로 표현하자면 “cross platform 프로그램을 만들기 위한 개발 프레임워크” 입니다.
사실상 .NET Framework 를 업그레이드한 버전이라고 생각하면 됩니다.
닷넷 (.NET)은 자유 오픈 소스인 크로스 플랫폼 프로그래밍 프레임워크 입니다.
윈도, 리눅스, 맥OS 등 다양한 운영 플랫폼에서 수행할 수 있는 혁신적인 기기와 클라우드,
IoT 애플리케이션 구축을 위해 설계된 microsoft 주도로 개발한 개발framework 입니다.
.NET Framework 와 비슷하게, VB(Visual Basic), C++, C#, F# 등 여러 언어를 지원합니다.

.NET은 원래 2016년 첫 출시에 .NET Core라는 이름이었고, cloud native app을 만들기 위한 Framework였습니다.
하지만, 5.0 버전부터는 .NET이라는 이름을 사용하기 시작하였고, 6.0 부터는 데스크톱 애플리케이션도 개발가능할 수 있도록 하였습니다.
특이사항으로는 .NET 및 .NET Core는 4.0버전이 없는데요,
출시 당시 .NET Framework 4 버전을 사용하는 곳이 많아 헷갈릴 염려가 있어서 3->5로 단번에 버전을 변경했다고 합니다.

.NET vs .NET Framework , .NET와 .NET Framework 비교

.NET과 .NET Framework 를 한마디로 표현하면 아래와 같습니다.

.NET.NET Framework
First version release 20162002
Last major version release2023
OwnershipOpen-source
PerformanceLightweight and efficient
DeploymentHighly adaptable deployment model
CompatibilityWorks on multiple operating systems
Support for WCF ServicesNo native support for WCF services, but Core WCF project enables building WCF services Supports WCF services
Support for MicroservicesBetter support for microservices
SecurityBuilt on robust security principles
Mobile DevelopmentPreferred choice for mobile development
Application TypesSupports console, desktop, web applications, mobile native applications and microservices

무엇을 사용해야하는가? : .NET Framework vs .NET

사용만 가능하다면 가급적 .NET을 사용하는게 좋습니다.
.NET이 좀 더 최신화되고 microsoft에서 좀 더 신경을 많이 쓰는것으로 보이기 떄문입니다.
.NET을 못쓰는 legacy 환경일 경우에는 .NET Framework를 쓰고, 가능한 .NET을 선택하도록 합니다.
.NET의 버전은 2023년에 8버전이 공개될것으로 보이는데요, 6 버전이 stable한 버전인것으로 생각이 됩니다.

총평

개인적으로 네이밍이 별로 맘에 들지는 않습니다.
.NET으로 하니깐 net이라는 의미는 인터넷을 의미하는 단어도 많기 때문입니다.
자료검색이 잘 안 될 수도 있는 부분이 좀 부정적으로 생가하는 부분입니다.
이왕 framework를 전면 개편할것이였으면 이름이 아예 다른 것으로 했으면 어떨까 싶었습니다.
그리고 개인적으로는 .NET 쪽은 윈도 앱 개발 말고는 별로 사용할 일이 없을거 같습니다.
서버측는 linux로도 충분한거 같고, 서버 코드는 java로 작성하는게 레퍼런스가 많아 충분하다고 생각하기 때문입니다.