2015-12-07 2 views
0

Я провел сравнение между пустым архивом проекта, написанным в Swift, по сравнению с тем же проектом, написанным в Objective-C. Для получения размеров архивов я использовал локально сохраненные архивные файлы, которые я нашел в Organizer, перейдя в Finder View. Ниже приведены детали:Сравнение пустого архива проекта, написанного в Swift и Objective-C

1) Objective-C проект размер архива = 2,3MB

2) Swift проект размер архива = 101,5MB

Это нормально? Учитывая этот факт, следует ли мне рассмотреть возможность преобразования моих простых проектов Swift в Objective-C?

Спасибо!

ответ

2

В соответствии с этим (правда, от) Swift Blog post,

... Xcode встраивается небольшой Swift библиотеки времени выполнения в пределах пачки вашего приложения.

Вот another blog post (также из 2014), который может оказаться уместным.

Просмотрев один из моих архивных проектов iOS в Finder с «Show Package Contents», я вижу папку SwiftSupport стоимостью ~ 50 МБ. Вероятно, вы найдете подобную настройку.

EDIT: Вот forum post от Форумы разработчиков Apple. Это говорит о том, что разработчики могут использовать приложение Thinning, чтобы уменьшить использование пространства.

+0

Спасибо, однако, когда вы говорите о небольших проектах размером около 2 или 3 МБ, я бы не сказал, что 50 МБ - небольшая библиотека. Как это повлияет на размер приложения в App Store? Является ли Swift подходящим для небольших проектов? –

+0

Помните, что существует разница между архивом проекта и фактическим исполняемым файлом. Что касается пригодности, это субъективный вопрос, сильно зависящий от ваших требований. Если вы создаете меньшее приложение-утилиту, и вы просто не можете нести размер приложения, возможно, Objective-C - это путь. – caseynolan

0

После отключения настройки формы построения битового кода я создал новые архивы из этих 2-х проектов, и я был в состоянии уменьшить чуток эту разницу:

1) Objective-C размер архива проекта = 2,2MB

2) Свифт проект размера архив = 68,3MB

в соответствии с этим post результатов для предполагаемого размера приложений были:

1) размер Objective-C = 163KB

2) Swift size = 17,6MB

По-прежнему существует большая разница, если вы спросите меня, поэтому я думаю, что для небольших проектов Objective-C более подходит.