2015-02-26 12 views
7

Rozmiar pliku wykonywalnego aplikacji Swift jest znacznie większy niż rozmiar aplikacji Objective-C.Rozmiar pliku wykonywalnego Xcode Swift znacznie większy niż plik wykonywalny Objective-C

dla nowego projektu pusty kakao Application:

  • w Objective-C po fazie kompilacji dostaję 65 Kb wykonywalny
  • w Swift, po fazę build, ja pobierz plik wykonywalny 4.2 Mb, 66 razy więcej !!!

Jeśli patrzę na generowanego pakietu, jest tam wiele ram obejmowały:

  • libswiftAppKit.dylib, libswiftCore.dylib (3.2MB), libswiftCoreGraphics.dylib, libswiftDarwin.dylib , libswiftDispatch.dylib, libswiftFoundation.dylib, libswiftObjectiveC.dylib, libswiftQuartzCore.dylib, libswiftSecurity.dylib

Nie znalazłem parametrów projektu do określenia, aby włączyć te biblioteki ...

Jak to się dzieje, że pliki wykonywalne Swift nie są takie same jak w Objective-C?

wersja Xcode używana: 6.1.1

+1

Zerknęłam na moją ponownie napisaną (nie całkowicie identyczną) aplikację i zwiększyła się ona z 2,3 do 9,3 MB. –

Odpowiedz

7

to należy się spodziewać.

Na razie sam Swift żyje w plikach binarnych każdej aplikacji zbudowanej razem z nim. Może się to zmienić, gdy Swift osiągnie wersję, w której Apple może wygodnie łączyć się z iOS, ale na razie jest to coś, z czym musimy żyć. To zachowanie jest powodem, dla którego możesz zbudować aplikację dla systemu iOS 7/8 w Swift 1.0/1.1/1.2 i działa ona tylko podczas budowania i uruchamiania.

Możesz znaleźć więcej informacji na ten temat w this article.

Powiązane problemy