c#, .net, winform 질문 드립니다.

안녕하세요.

c# 개발자에 대해 이해하고 싶어서 질문 드립니다!

c#이 java라면
.net은 spring 느낌 이라고 이해하면 될까요?

c#이 javascript라면,
winform과 wpf는
vue, react 정도 라고 이해하면 될까요?

여러 문서를 읽어 보았으나…
직접 써보지 않으니 어떤 느낌인지 확 와닿지가 않네요…

웹 개발에 약간 경력이 있어서…
혹시 이해해도 되는지 여쭤봅니다!

2개의 좋아요

제가 알기론 java에는 .NET이라는 개념이 없습니다.

둘 다 중간언어를 사용하지만(.NET은 IL, Java는 바이트코드) .NET안에 여러 언어가 있습니다.
C# 이 대표적이지만 VB.NET도 .NET이고 C#에서 만든 DLL를 VB.NET에서 C#처럼 가져다 쓸 수 있습니다.
중간에 IL 때문인데요.
Java의 Byte코드랑 똑같은 플랫폼을 따서 다른 언어를 만들어서 그걸 하나로 묶으면 .NET같은 개념이 있다고 볼 수 있겠네요.
코틀린이 자바와 같은 바이트코드를 쓰는 것으로 알고있지만 언어를 만든 회사가 서로 다르다보니 한 플랫폼으로 묶일 수는 없을 거 같습니다. (java는 오라클, 코틀린은 젯브레인즈)

java의 spring으로 .NET에는 aspnet이 있고, spring boot 개념으로 aspnetcore 가 있습니다.

그리고 winform wpf에 대한 비유는 해당 언어로 UI를 만드는 클라이언트 프로그램에 비유하신 것 같은데, 클라이언트라는 비슷한 맥락은 같지만 SPA형태는 아니므로 개념만 같다고 보시고 기술은 다르다고 이해하시면 될 거 같습니다.

웹 개발자시면, aspnetcore mvc / blazor 쪽을 알아보시면 될 거 같습니다.

※ 추가적으로 닷넷에 대해 잘 모르시는 것 같아서 말씀드리는데,
asp는 aspnet,aspnetcore와 다른 기술입니다.
asp는 ms에서 만든 vbscript(javascript와의 경쟁에서 밀림)라는 걸로 웹을 만드는데 jsp 라고 보시면 될 것 같고, MS에서 만들었지만 .NET 기술은 아닙니다.

11개의 좋아요

C#을 java로 비유 한다면…
.NET은 SDK, ASP.NET을 spring으로 볼수 있겠네요…

2개의 좋아요

닷넷은 사실 "닷넷 런타임"을 의미합니다. 그러니까, 닷넷 런타임은 자바 런타임과 동급이 되는 것입니다. 그리고 그 각각의 런타임에서 “BCL” 같은 것도 동일하게 제공하고 있고요, 마찬가지로 언어 역시 닷넷 런타임 위에서 VB.NET, C#, F# 등이 지원되는 것처럼, 자바 런타임 위에서도 Java, Scalar, Kotlin 등의 언어가 지원되는 것입니다.

7개의 좋아요