C#

공유하기:

C#에 관한 질문은 3개의 주요 프로그래밍 언어 중 하나로 C#을 선택한 개발자에게만 표시되었습니다.

공유하기:

어떤 버전의 C#을 주로 사용하시나요?

RowColumnValue
2017년2018년2019년2020년2021년2022년2023년
42%C# 11
50%32%C# 10
30%32%17%C# 9
52%50%33%17%C# 8
28%44%63%48%39%24%13%C# 7
63%44%39%27%27%16%8%C# 6
37%40%35%27%27%5%3%C# 5
10%11%11%6%5%2%2%이전 버전
7%11%8%10%12%10%18%잘 모르겠음
063%

Stefan Pölz

깔끔한 C# 코더 – 테스트 기반 .NET 개발자

대다수의 참여자들이 C#의 문법적 설탕과 의미론적 힘을 활용하기 위해 이 언어의 최신 STS 및 LTS 버전을 발빠르게 도입하고 있는 모습을 볼 때면 한없이 기쁩니다.

.NET 프로젝트에서 어떤 프로그래밍 언어를 사용하시나요?

99%

99%

C#

27%

30%

HTML/CSS

22%

26%

JavaScript

16%

18%

TypeScript

7%

6%

VB.NET

3%

3%

F#

1%

1%

기타

Stefan Pölz

깔끔한 C# 코더 – 테스트 기반 .NET 개발자

저는 BCL이 작성된 언어가 C#이라는 점에서, C#이 가장 많이 사용되는 .NET 언어일 것으로 예상했습니다. 하지만 F#보다 Visual Basic이 여전히 더 많이 사용되고 있다는 사실에 놀랐습니다. F#이 매년 기능 업데이트를 받고 있다는 점을 고려하면 더욱 그렇습니다.

어떤 런타임을 주로 사용하시나요?

RowColumnValue
2017년2018년2019년2020년2021년2022년2023년
38%.NET 7
47%38%.NET 6
33%24%10%.NET 5
96%90%85%75%62%49%45%.NET Framework
37%42%57%68%66%43%35%.NET Core
16%17%14%13%12%10%8%Mono
5%6%잘 모르겠음
096%

이 설문조사는 .NET 8 Preview가 발표되기 직전인 2023년 6월에 실시되었습니다.

Stefan Pölz

깔끔한 C# 코더 – 테스트 기반 .NET 개발자

현재 STS 및 LTS 플랫폼 버전이 서로 적정하게 분할된 모습입니다. 여전히 상당한 수의 .NET Framework 프로젝트가 유지 관리되고 있다는 사실은 라이브러리 및 도구 작성자에게 아직 클래식에 대한 지원을 중단하지 않아야 함을 알려주는 귀중한 정보입니다.

Joseph Guadagno

Microsoft Developer Services MVP, .NET Foundation 이사회 회장

.NET Framework의 사용량이 비록 다소 느리긴 하지만 감소하고 있다는 점은 반가운 일입니다. .NET의 사용은 버전 6과 7 사이에 나누어져 있는 것으로 보이며, 사람들이 앱을 .NET 8로 업데이트하려고 하면서 생긴 결과였으면 좋겠습니다.

어떤 기술과 프레임워크를 사용하시나요?

56%

56%

ASP.NET Core

39%

41%

Entity Framework

34%

ASP.NET

24%

25%

Azure

23%

22%

Unity

어떤 ASP.NET Core 기술을 사용하시나요?

이 질문은 ASP.NET Core를 사용한다고 보고한 응답자에게만 표시되었습니다.

78%

Web API

64%

MVC

40%

Razor Pages

20%

최소한의 API

19%

SignalR

16%

Blazor Server

12%

Blazor WebAssembly

9%

gRPC

2%

기타

F# 개발에 어떤 프레임워크를 사용하시나요?

32%

Giraffe

27%

Fable

21%

Saturn

19%

Fantomas

16%

FAKE

13%

Paket

9%

FParsec

3%

Falco

6%

기타

35%

없음

C# 개발에 어떤 IDE/에디터를 가장 많이 사용하시나요?

RowColumnValue
2020년2021년2022년2023년
65%62%54%48%Visual Studio
20%27%33%32%JetBrains Rider
11%9%10%14%Visual Studio Code
2%2%2%3%Mac용 Visual Studio
0%0%1%MonoDevelop
0%0%0%1%Vim
0%0%0%1%기타
0%65%

C# 개발 환경으로 어떤 운영 체제를 사용하시나요?

79%

80%

Windows

32%

34%

macOS

19%

18%

Linux

Visual Studio와 함께 어떤 플러그인을 사용하시나요?

32%

36%

ReSharper

9%

SonarLint

6%

4%

AWS Toolkit for Visual Studio

6%

8%

CodeMaid

5%

5%

ReSharper C++

어떤 Visual Studio Code용 플러그인을 사용하시나요?

52%

66%

C# Extensions

46%

55%

Visual Studio Code용 C#

38%

33%

.NET Core Tools

25%

GitHub Copilot

23%

23%

NuGet Package Manager

어떤 버전의 Visual Studio를 가장 많이 사용하시나요?

76%

56%

VS 2022

19%

38%

VS 2019

3%

3%

VS 2017

0%

2%

VS 2015

1%

1%

VS 2013

Joseph Guadagno

Microsoft Developer Services MVP, .NET Foundation 이사회 회장

점차 더 많은 개발자가 IDE를 항상 최신 상태로 유지하고 있다는 사실은 상당히 고무적입니다.

어떤 유닛 테스트 프레임워크를 주로 사용하시나요?

19%

16%

C#에 대한 유닛 테스트를 작성하지 않음

7%

5%

유닛 테스트를 작성하지만 프레임워크를 사용하지 않음

37%

39%

xUnit

36%

38%

NUnit

14%

14%

MSTest/Visual Studio 유닛 테스트 프레임워크

Stefan Pölz

깔끔한 C# 코더 – 테스트 기반 .NET 개발자

유닛 테스트를 작성하지 않는 C# 개발자의 비율이 늘어나고 있는 모습을 보니 안타깝습니다. 하지만 최신 버전의 JetBrains 도구가 뛰어난 유닛 테스트 기능 세트를 통해 이 수치를 높일 수 있을 것으로 기대합니다.

어떤 성능 또는 진단 도구를 주로 사용하시나요(사용하는 경우)?

20%

Visual Studio 기본 제공 디버거 진단 도구

21%

Visual Studio 기본 제공 성능 프로파일러

22%

17%

dotMemory

21%

20%

dotTrace

12%

13%

Unity Profiler

일반적으로 프로파일링 또는 진단 도구를 얼마나 자주 사용하시나요?

73%

74%

문제가 발생할 때 이따금

18%

19%

정기적: 문제를 예측하기 위해 매일/매주/스프린트마다 사용

9%

6%

상시: 계속 실행되는 백그라운드 프로세스임

0%

1%

기타

프로젝트에서 프로파일 수행 또는 진단은 누가 담당하나요?

31%

28%

본인이 혼자 책임을 짐

30%

35%

몇몇 다른 개발자와 책임을 분담

26%

24%

프로젝트 내 모든 개발자가 공동으로 책임을 짐

13%

10%

프로젝트 내 누구도 책임을 지지 않음

0%

2%

기타

Visual Studio 및 JetBrains Rider로 개발하는 소프트웨어 유형

55%

53%

웹사이트

42%

40%

유틸리티

30%

15%

게임

30%

20%

라이브러리/프레임워크

27%

35%

데이터베이스/데이터 저장소

57%

55%

웹사이트

46%

46%

유틸리티

34%

25%

라이브러리/프레임워크

31%

16%

게임

28%

39%

데이터베이스/데이터 저장소

JetBrains Rider에는 MS SQL Server뿐 아니라 거의 모든 유형의 데이터베이스를 지원하는 뛰어난 도구가 있음에도 불구하고 많은 개발자가 데이터베이스 프로젝트 작업을 위해 별다른 고민 없이 Visual Studio를 선택하는 것으로 보입니다.

그러나 게임 개발에서는 JetBrains Rider가 최고의 선택으로 인정받고 있는데, 그 이유는 의심의 여지 없이 Unity, Unreal Engine, Godot와 같은 엔진과의 상호 운용성 때문입니다.

읽어주셔서 감사합니다!

이 보고서가 여러분에게 도움이 되었기를 바랍니다. 이 보고서를 친구와 동료에게 공유하세요.

질문이나 제안이 있으면 surveys@jetbrains.com으로 연락해 주세요.