Используя язык C# можно создавать следующие программы:
- Настольные (Desktop) приложения – это программы, которые пользователь устанавливает на свой ПК и все процессы программы происходят на нём. Примеры таких приложений: Microsoft Word, Paint, Telegram Desktop, Skype Desktop и т.д.;
- Web-приложения – это программы, которые пользователь не устанавливает на свой ПК, а работает с ними через браузер (интерфейс программы интегрируется в браузер), все процессы программы происходят на сервере (удалённо). Примеры таких приложений: Office 365, Telegram Web, Skype for Web и т.д.;
- Сервисы – это приложения предоставляющие пользователю услуги (например, по передаче данных, установке связи через интернет и т.д.). Данный вид программ имеет две части: одна установлена на сервере, а вторая у пользователей. Примеры таких приложений: Telegram, Skype, Viber, WhatsApp и т.д;
- Программы для мобильных устройств;
- Игровые программы;
- Решения для бизнеса – это программы решающие задачи в бизнесе, зачастую это CRM (Customer Relationship Management) системы.
Нужно подметить несколько фактов о написании программ для мобильных устройств и игровых программы:
- на чистом C# писать приложения для мобильных устройств можно было только для мобильной операционной системы Windows Phone, а для написания приложений под Android или iOS нужно использовать платформу Xamarin;
- зачастую игровые приложения со сложным пользовательским интерфейсом не пишут на чистом C#, а используют несколько языков (например, при разработке игр используя игровой движок Unity 3D можно отдельные части игры написать на C#). Это связанно с тем, что C# работает медленнее чем другие языки (что является в данном случаи критическим фактором).
Выше были перечислены лишь виды программ, которые создают чаще всего, но это далеко не полный список. И на самом деле намного проще сказать какой вид программ не можно разработать с помощью языка C# - это драйвера устройств.
При разработке C# Microsoft в основном ориентирован на разработку языка, который будет использоваться для написания программ решений для бизнеса.
Источник: видеоурок Александра Шевчука "ЗНАКОМСТВО С ЯЗЫКОМ C#"