Vitya Ekcardt
январь 2017.
5537

Для чего нужны языки: С; С++; С#; Objektive - C?

Ответить
Ответить
Комментировать
1
Подписаться
1
2 ответа
Поделиться

Вопрос таки в том, "для чего нужны?"

Для того, чтобы писать программы, как очевидно бы это не звучало. А вот область применения - вещь отдельная.

Си - это не только драйвера и низкоуровневые программы, но ещё и GNOME, и графического (и не очень) прикладного софта для никсов. Везде, где приложение становится performance-critical, применяют Си. Или плюсы. О них ниже.

Плюсы были задуманы как "усовершенствованный Си с ООП и безопасными типами". Разрозненность сообщества, ввиду отсутствия (и невозможности создать) гетерогренной среды, и, как следствие, отсутствие даже намёка на вменяемые единые style guidelines, выродили язык в нечто неописуемо прекрасное в своей гениальной уродливости. Язык популярен и развивается, на него существует множество библиотек и фреймворков разного качества, от "помыть руки после использования" (вспомним MFC, гори он в аду, мразь), до более-менее приемлемого (Qt, boost). От себя скажу, что я рад, что мне не приходится его использовать.

Шарп долгое время был "одним из" языков для .NET-платформы Microsoft, по сути являясь "улучшенной Джавой". После того, как в MS окончательно открестились от всяких бредовых решений типа Visual Basic.NET, стал де-факто стандартным языком платформы. Язык общего назначения, однако видно, что ориентировался изначально на GUI-приложения (поддержка ивентов на уровне языка, вот это всё). Много полезных фич - language-level асинхронность, неймспейсы вместо пакетов, etc. Периодически метит в Энтерпрайз и Веб, но в первом до сих пор Java, а во втором и без шарпа хватает. Позже расширился на мобильные приложения, монополизировал Unity и стал опенсорсным, что позволяет уверенно пророчить рост популярности - язык-то хороший.

Objective-C был языком для яблочных продуктов. В теории является "Си с классами", на практике - странная каша из непонятного синтаксиса. Постепенно вытесняется Swift.

3
-2

Спасибо!!!

-1
Ответить
Прокомментировать

Си - обычно драйвера и низкоуровневые программы

С++ - для всего

С# - корпорация зла решила создать свой язык С++ но с четырьмя плюсами. В итоге получилось что-то между С++ и Java. Унаследовал все минусы си и Java. Нужен разработчикам под windows либо для написания скриптов для Unity 3D. Отсюда такая лаги в 7dtd и пр игр с большими массивами.

Objective-C для продукции Apple, чистый си но с ООП.

2
-4

слишком много про с#

+2
Ответить

С# - хороший язык. Поддерживался бы на всех платформах - был бы лучше Java.

+1
Ответить

да все языки хорошие =))

0
Ответить
Ещё 2 комментария

С# теперь поддерживается на всех платформах, луркайте Xamarin. Автор ответа - вмест Лурка как авторитетного источника почитайте лучше спецификацию 7 стандарта C#, и откроется вам.

+1
Ответить

Унаследовал все минусы си и Java.
^^ Я бы сказал -- поправил плюсы Java :) Не сразу(сразу еще то сырье вышло), конечно, но со временем вполне.

Нужен разработчикам под windows либо для написания скриптов для Unity 3D. Отсюда такая лаги в 7dtd и пр игр с большими массивами.
^^ Юнити с некоторыми платформами топорно работает. В принципе. С тем же андроидом, как самый яркий пример.
Здесь проблема не в языке.

А в целом согласен.

+2
Ответить
Прокомментировать
Ответить
Читайте также на Яндекс.Кью
Читайте также на Яндекс.Кью