Prog Academy
RU UA
Програмування

Що таке C# і платформа .NET?

C# — строго типізована обʼєктно-орієнтована мова програмування від Microsoft. Вона працює на платформі .NET — середовищі виконання зі стандартною бібліотекою та інструментами, на якому будують вебсервіси, десктопні застосунки, ігри на Unity та корпоративні системи.

Розподіл простий: C# — це мова, .NET — платформа, яка виконує написаний нею код і надає готові бібліотеки. Для веброзробки використовують ASP.NET Core, для роботи з базами — Entity Framework, для ігор — рушій Unity.

За будовою C# близький до Java: сувора типізація, збирання сміття, компіляція у проміжний код, схожі принципи ООП. Сучасний .NET кросплатформний — застосунки однаково працюють на Windows, Linux і macOS.

Де застосовується

C# закриває одразу кілька ринків. У корпоративній розробці на ASP.NET Core пишуть вебсервіси та внутрішні системи, особливо в компаніях, які вже живуть на інфраструктурі Microsoft. У геймдеві ним програмують логіку в Unity — це основна мова рушія.

Є й менш очевидні ніші: десктопні застосунки для Windows, інтеграції з 1С та обліковими системами, сервіси обробки документів. Для українського ринку це помітна частина аутсорсингових проєктів, де замовник зі США чи Західної Європи багато років працює на .NET.

Приклад

Компанії потрібен внутрішній портал заявок із ролями, звітами і вивантаженням в Excel. На ASP.NET Core такий проєкт збирається з готових частин: авторизація, робота з базою через Entity Framework, генерація файлів — більшість задач закрита стандартними бібліотеками платформи.

var builder = WebApplication.CreateBuilder(args);
var app = builder.Build();

app.MapGet("/api/orders/{id:int}", async (int id, AppDb db) =>
{
    var order = await db.Orders.FindAsync(id);
    return order is null ? Results.NotFound() : Results.Ok(order);
});

app.Run();
Мінімальний вебсервіс на ASP.NET Core: маршрут, звернення до бази і відповідь у JSON.

Часті запитання

Чим C# відрізняється від .NET?

C# — це мова програмування, набір правил запису коду. .NET — платформа, яка його виконує: середовище виконання, стандартні бібліотеки, інструменти збірки. На .NET працюють і інші мови, наприклад F# і Visual Basic, але C# серед них основна.

Чи працює C# лише на Windows?

Уже давно ні. Сучасний .NET кросплатформний: застосунки однаково запускаються на Windows, Linux і macOS, а в продакшені найчастіше розгортаються в Linux-контейнерах. Обмеження лишилося тільки у старих десктопних технологій на кшталт WinForms.

C# чи Java — що обрати?

Мови дуже близькі за будовою, і перехід між ними займає тижні. Орієнтуйтеся на ринок: Java частіше трапляється в банках і фінтеху, C# — у продуктових компаніях на екосистемі Microsoft і в геймдеві. Вимоги до рівня кандидата зіставні.

Чи підходить C# для розробки ігор?

Так, це основна мова Unity — одного з найпоширеніших рушіїв, на якому виходять мобільні та інді-ігри. Для старту в геймдеві C# у звʼязці з Unity вважається найкоротшим шляхом від перших уроків до власного робочого проєкту.

Повʼязані терміни