Objective-C трохи повільніший, ніж прямі виклики функцій C через пошуки, пов’язані з його динамічною природою. Я відредагую цю відповідь з більш детальною інформацією про те, як це працює пізніше, якщо ніхто інший не додасть подробиць. Однак, що важливіше, ви передчасно оптимізуєтеся.
Однак, як і багато в чому в житті, у цієї медалі є зворотний бік. Покажчики в C і Objective-C здобули певну популярність у спільноті програмістів завдяки своїй потенційна вразливість до помилок і проблем безпеки.
Але головна проблема полягала в наступному: під час виконання Objective-C забезпечує качиний тип. Тобто ви можете передавати будь-який тип об’єкта будь-якому методу будь-якого іншого типу об’єкта, і все працюватиме, якщо код був написаний для цього. Так напр. існує лише один тип масиву, який може містити будь-який змішаний список об’єктів.
Порівнюючи Swift і Objective-C, розробка програм за допомогою Swift відбувається швидше. чому Використання Swift загальних і функцій вищого порядку призводить до чистішого коду, який можна використовувати багаторазово, тоді як опції та визначення типу передають відповідальність за безпеку коду від програміста до компілятора.
2. Недоліки Objective-C
- 2.1 Складний і застарілий синтаксис. …
- 2.2 Нижча продуктивність порівняно зі Swift. …
- 2.3 Відсутність нових удосконалень. …
- 2.4 Відсутність безпеки. …
- 2.5 Занепад спільноти. …
- 2.6 Складність навчання та використання.