Цель-C ++ постепенно сокращается? [закрыто]

10

Apple постепенно отказывается от поддержки target-c ++? Обратите внимание на следующее:

  • В руководстве по языку Objective-C был раздел, посвященный смешиванию Objective-C и C ++. Этот раздел сейчас отсутствует.
  • Ссылки на статьи по Objective-C ++ на веб-сайте Apple для разработчиков, кажется, не работают и теперь перенаправлены, например, на эту , которую я нашел в этом вопросе stackoverflow .
  • Поиск c ++ на веб-сайте Apple Dev очень мало влияет на текущую информацию.

Должен ли я быть обеспокоен использованием c ++ для разработки под iOS?

Роб Лахлан
источник

Ответы:

19

Нет, я бы не волновался об этом.

Во-первых, два основных компилятора Apple (gcc и clang) продолжают поддерживать его. Фактически, главная страница для clang неоднократно указывает на то, что поддержка Objective C ++ является «целью проекта Clang».

Во-вторых, в отличие от MSDN, Apple часто меняет свою техническую документацию в Интернете, и ссылки на статьи на их веб-сайте для разработчиков сильно ломаются. Это своего рода боль в шее - я держу кучу документации по QuickTime API на своем жестком диске, потому что мне надоело искать его онлайн.

История Apple за 27 лет, в течение которых я программировал для Mac, заключалась в том, что, когда они планируют отказаться от API, они очень об этом говорят заранее и, как правило, уведомляют за пять или более лет в форме публичных объявлений. или хотя бы предупреждения компилятора. Поэтому я был бы удивлен, если бы они просто осудили язык программирования, на который полагаются многие, многие тысячи разработчиков.

Боб Мерфи
источник
2

Objective-C подходит для работы с определенной частью вашего приложения. Это делает разработку программы с графическим интерфейсом действительно простой. С ++, с другой стороны, необходим там, где вам нужна переносимость и / или больший контроль над тем, что вы делаете.

Вы когда-нибудь пытались разработать приложение, которое опирается на OpenGL с Objective-C? Ваш код превратится в неприятный беспорядок (особенно если вам нужно много заниматься векторной математикой, поскольку Objective-C не поддерживает перегрузку операторов).

Многие библиотеки для OS X и iOS полагаются на C ++, поэтому я бы не стал беспокоиться о том, что Apple откажется от поддержки C ++ (даже Apple полагается на нее).

Рафаэль
источник
Речь идет об Objective-C ++, а не C ++
альтернатива
1
@mathepic - это не сам язык, а функция компилятора для компиляции кода Objective-C и C ++.
Рафаэль
1

Абсолютно нет ответа. Большая часть среды выполнения Objective-C и многие частные части общедоступных платформ и частных платформ, обеспечивающих программное обеспечение Apple, сегодня написаны на Objective-C ++, и это вряд ли изменится.

Они используют его, чтобы использовать преимущества существующих библиотек программного обеспечения с открытым исходным кодом, а также STL, где это имеет смысл. Clang написан на C ++

Ох, и все IOKit является C ++

Xcode во многом написан на Objective-C ++

C ++ для вещей, для которых это имеет смысл, Objective-C для API и пользовательского интерфейса. (другими словами, предоставьте отличный стабильный API, который поддерживается C ++, где это имеет смысл)

uchuugaka
источник