Comments 16
Таким образом, эпоха Objective-C со всеми своими недостатками отмирает
Если можно конкретнее о каких недостатках идет речь.
-1
Язык ObjC очень старый, и требует большей внимательности. Компилятор и рантайм Swift берут очень много рутинной работы на себя.
Это, например,
- null-безопасность;
- работа с памятью; в MRC-эпоху ObjC был, действительно, очень требовательным к внимательности и, в целом, к способностям разработчика;
- работа с множественным наследованием протоколов, что было описано в предыдущей статье;
- статистическая типизация помогает значительно уменьшить количество ошибок, по сравнению с динамической;
- качественно улучшенные перечисления в Swift;
- C++ подобный синтаксис и интеграция C++ кода, которая зачастую раньше была обычным делом, в ObjC значительно повышает порог вхождения программиста в понимание того, что происходит;
- качественно иной подход к написанию кода при использовании SwiftUI, и родной Combine, на мой взгляд, должен помочь ускорить разработку, и снять с разработчика достаточно большой объём работы.
Причём, я оставляю за скобками слишком странный и громоздкий синтаксис языка. Тут, как говорится, на вкус и цвет. Но ObjC – не язык 2019 года. У него роль обвязки C++ кода, и то, если это требуется. И, может быть, по мелочи, есть что-то, что ещё не научился Swift.
Да, это, безусловно, требует хорошего компилятора, но команда языка Swift весьма хороша, так что в перспективность этой технологии лично я субъективно верю.
Да, есть моменты падения рантайма Swift, и периодически встречающиеся баги компилятора, но они исправляются, и их количество незначительно.
И, конечно, можно ещё найти какие-то различия и улучшения.
+2
Objective-C является надмножеством С а не С++. Меня не так заботит синтаксис Swift он довольно приемлим сколько скорость его компиляции в Xcode. Если следовать вашей логике Objective-C плох тем что Apple перестала его развивать. Но это решение Apple с которым можно поспорить. Так же зачем вспоминать MRC если это давно было исправлено на ARC. Ведь никто не вспоминает первые версии Swift и их недостатки.
-1
Динамическую типизацию не исправить. Это ограничение языка. Это не является удобным, так как приводит к ошибкам. Я понимаю, что
Objective-C является надмножеством С а не С++., но я не об этом, а о том, что C++ совместно с ObjC++ превращает зачастую код в весьма сложную солянку.
0
Другими словами, основным недостатком ObjC более высокие требования к профессиональным навыкам и компетенции кодера.
-2
UFO just landed and posted this here
А библиотеки Свифтовские то уже в IOS 13 есть в составе ОС или проги «hello world» так и весят по 20 мегабайт?
0
Одним из важных шагов, будет переход ноутбуков на ARM чипы ближайшие годы. Тут будет во всей красе работать приложения написаные для iPadOS запущеные на MacOs ARM без эмуляции.
0
Objective-C — имхо, лучшее, что случалось в программировании. Если, вдруг, его перестанут поддерживать вообще, я, пожалуй, сменю профессию.
0
Sign up to leave a comment.
iOS 13: Что нужно и чего совершенно не нужно делать при разработке под новую ОС