Чому Objective-C працює повільно?

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 Складність навчання та використання.