C#

공유하기:

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

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

일반적으로 .NET Framework에서 .NET으로의 전환은 대상 변경만큼 간단하지 않다는 점을 고려하면, 대부분 개발자가 적어도 .NET(Core)을 사용한다는 결과는 흥미롭습니다. 또한 상당수의 개발자가 여전히 .NET Framework 4.6 및 그 이전 버전을 대상으로 하는 프로젝트의 유지관리를 수행한다는 점도 놀랍습니다. 해당 버전의 프로젝트를 4.8로 마이그레이션하지 않는 이유가 궁금합니다.

Dennis Dietrich

Microsoft Azure Storage 선임 소프트웨어 엔지니어

점차 많은 개발자가 최신 C# 버전을 사용하는 건 바람직하게 보입니다. 더 많은 기존 앱을 최신 .NET 버전으로 마이그레이션하는지 혹은 새 앱과 시스템을 제작하고 이전 기존 코드는 남겨두는지 궁금합니다.

Chris Woodruff

Rocket Homes 엔제니어링 부서 팀장

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

C#은 .NET 개발자가 가장 많이 선택하는 언어입니다. VB.NET 및 F#도 사용되지만 C#, JS 및 TS와 같은 프런트엔드 언어가 더 자주 사용됩니다.

Maarten Balliauw

JetBrains 개발자 애드버킷

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

C# 개발자 중 .NET Framework 및 .NET Core 사용자는 작년보다 훨씬 감소했습니다(각각 13% 및 23% 감소).

.NET Framework는 아직 사용되고 있습니다. 최신 .NET 버전 사용자의 경우 LTS 버전을 사용하며 .NET 6은 풀 프레임워크와 거의 비등하게 2위를 차지했습니다.

Maarten Balliauw

JetBrains 개발자 애드버킷

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

ASP.NET, Entity Framework 및 Azure가 가장 많이 사용되는 상위 3개 기술로 등극한 것은 놀라운 결과가 아닙니다. 오래된 일부 기술의 사용 비율이 감소하는 것도 바람직합니다.

Joe Guadagno

Rocket Mortgage 테크놀로지 부서 선임 디렉터

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

지난 3년 동안 C# 개발자 중 JetBrains Rider 사용자의 비율은 20%에서 33%로 증가했습니다.

Rider 채택률은 우리 팀의 Rider 사용률 증가 수준과 비교할 때 예상치 못한 결과가 아닙니다. 작년 초까지만 해도 Rider 사용자는 팀의 절반에 불과했으나, 현재 팀 전체에서 Rider를 사용하고 있습니다.

Laurent Kempé

Innoveo 팀장 겸 디스팅귀시드 솔루션 아키텍트

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

응답자의 거의 절반이 기본 Visual Studio를 별도의 설정 없이 사용한다는 점은 흥미로운 결과입니다. 플러그인을 사용하면 더 많은 기능이 지원되며 생산성도 향상됩니다.

Joe Guadagno

Rocket Mortgage 테크놀로지 부서 선임 디렉터

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

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

macOS와 Linux를 사용하는 C# 개발자 수는 놀라울 정도로 많았습니다. Linux 사용자의 경우 일반 Linux (가상)머신과 WSL로 더 세분화된다는 점이 흥미롭습니다.

Dennis Dietrich

Microsoft Azure Storage 선임 소프트웨어 엔지니어

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

이전 SDET로서 유닛 테스트를 작성하지 않는 C# 개발자의 비율은 실망스러운 수준입니다. 지금쯤이면 유닛 테스트의 이점에 대한 공감대가 형성되었길 바랐습니다. 원인을 밝혀낼 수 있다면 흥미로울 겁니다. 개발자들이 유닛 테스트의 이점을 믿지 못하는 걸까요? 교육이나 엔지니어링 문화 부족으로 인한 문제일까요? 경영진이 유닛 테스트에 필요한 단기 투자를 미루고 있는 걸까요?

Dennis Dietrich

Microsoft Azure Storage 선임 소프트웨어 엔지니어

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

현장에서 보낸 20년을 되돌아보고 개인적 경험을 수치와 비교할 때 요즘 성능 분석 및 개선이 간과되고 있다는 결론을 내릴 수 있습니다. 이는 바람직하지 않은 현상입니다. 여러 면에서 이전과 바뀐 점이 없습니다. 과거에는 제한된 메모리와 CPU 리소스가 문제였습니다. 반면 오늘날에는 배터리 수명이 중요한 모바일 기기에서 실행하는 코드를 정기적으로 작성하며, 확장이 필요한 클라우드 솔루션을 사용합니다. 클라우드 솔루션의 컴퓨팅 리소스가 비효율적으로 사용될 경우 매월 필요한 비용보다 수천 달러에 이르는 금액을 더 사용하게 될 수 있습니다.

Dennis Dietrich

Microsoft Azure Storage 선임 소프트웨어 엔지니어

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

상당수의 개발자는 프로파일러가 성능 문제를 개선하는 도구가 아닌 예방하는 도구라는 점을 이해하고 있습니다. 이와 같이 생각하는 개발자 비율은 올해 증가했으나, 아직 지속적인 추세가 형성된 것은 아닙니다.

정기적 프로파일링이 복리와 동일한 혜택을 제공한다고 생각합니다. 은퇴 준비라고 생각해 보시죠. 소액이라도 꾸준히 투자하면 결국 상당한 자금으로 증가합니다. 프로파일링도 마찬가지입니다. 짧은 시간이나마 지속적으로, 꾸준히 성능을 확인하는 데 시간을 투자한다면 전반적으로 상당한 성능 개선을 이룰 수 있습니다. 그렇기에 저는 한 번에 큰 개선을 목표로 하지 않습니다. 탁월한 성능 개선은 꾸준한 반복을 수행하여 달성할 수 있습니다.

Dylan Moonfire

선임 소프트웨어 개발자, @dmoonfire

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

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

JetBrains Rider는 게임 개발(Visual Studio 보다 +18% 우세), 엔터테인먼트(+4%) 및 증강/가상현실(+4%) 부문에서 선호되는 도구입니다.

읽어주셔서 감사합니다!

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

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