Открыть сервисСервис

C# — язык программирования от Microsoft

C# (читается «си-шарп») — объектно-ориентированный язык программирования, разработанный компанией Microsoft под руководством Андерса Хейлсберга. Является частью платформы .NET и предназначен для создания разнообразных приложений: настольных, веб-, мобильных, облачных, игровых и научных. Синтаксис C# близок к C и C++, но лишён ряда сложных конструкций последних (например, множественного наследования классов и прямого указателя на память в обычном коде). Основной компилятор — Roslyn, основная реализация — открытое .NET-окружение Mono и .NET (ранее .NET Framework), кроссплатформенное с 2016 года.

История

Работа над языком началась в 1999 году в группе Microsoft под руководством Андерса Хейлсберга (ранее создавшего Delphi и Turbo Pascal в Borland). Первая публичная демонстрация состоялась в 2000 году на конференции PDC, релиз .NET Framework 1.0 и C# 1.0 произошёл в 2002 году.

Ключевые версии языка:

ВерсияГодОсновные нововведения
1.02002Базовый синтаксис, классы, делегаты
2.02005Обобщения (generics), анонимные методы, nullable-типы
3.02007LINQ, лямбда-выражения, анонимные типы, автоматические свойства
4.02010Динамическое программирование, именованные аргументы
5.02012Асинхронное программирование (async/await)
6.02015Интерполяция строк, оператор ?.
7.02017Кортежи, pattern matching, out-переменные
8.02019Ссылочные типы nullable, асинхронные потоки
9.02020Записи (records), top-level statements
10.02021Глобальные using, улучшения record
11.02022Raw string literals, generic math
12.02023Коллекционные выражения, primary constructors

С 2016 года, после приобретения Xamarin, и особенно после релиза .NET Core, C# стал кроссплатформенным: компиляция и запуск возможны на Windows, Linux и macOS.

Основные характеристики

C# относится к статически типизированным языкам: тип переменной проверяется во время компиляции. Язык поддерживает:

Пример простой программы:

```csharp using System;

class Program { static void Main() { Console.WriteLine("Hello, World!"); } } ```

Платформа .NET

C# компилируется в промежуточный байт-код Common Intermediate Language (CIL), который выполняется в среде Common Language Runtime (CLR). Это обеспечивает кроссплатформенность, безопасность типов и интеграцию с другими языками .NET (F#, VB.NET). Современная платформа .NET (начиная с .NET 5, 2020) объединила ранее раздельные ветки .NET Framework и .NET Core.

Применение

  • Веб-разработка — фреймворк ASP.NET Core, один из самых производительных серверных фреймворков по бенчмаркам TechEmpower.
  • Игры — движок Unity, один из самых распространённых движков для инди- и мобильной разработки, использует C# как основной скриптовый язык.
  • Десктопные приложения — WPF, WinForms, MAUI.
  • Мобильная разработка — Xamarin и .NET MAUI для iOS и Android.
  • Облачные сервисы — Azure SDK, микросервисы.
  • Научные и инженерные расчёты — ML.NET, интеграция с F# для функциональных сценариев.

Восприятие и статистика

По данным ежегодных опросов Stack Overflow Developer Survey, C# стабильно входит в пятёрку-десятку самых используемых языков. В России C# широко применяется в корпоративной разработке, банковском секторе и игровой индустрии. Язык преподаётся в ряде технических вузов.

Интересные факты

  • Изначально язык назывался «C-like» и «Cool», но первое название конфликтовало с товарным знаком, а второе — с внутренним кодовым названием проекта Microsoft.
  • Андерс Хейлсберг отмечал, что при проектировании C# учитывались как сильные стороны C++ и Java, так и их недостатки.
  • C# является основным языком для разработки расширений в Visual Studio.

Источники: официальная документация Microsoft Learn по C#; ежегодный Stack Overflow Developer Survey; «The C# Programming Language» (А. Хейлсберг и др., Addison-Wesley); история .NET на официальном блоге Microsoft.

Заметили ошибку или не согласны с информацией в статье? Напишите нам support@bfometr.ru