Swift derleyici kullanılmayan işlevleri derliyor mu yoksa bunları yoksayıyor mu?Swift derleyici kullanılmayan işlevleri dikkate almıyor mu?
7
A
cevap
3
Kullanılmayan işlevler programınızı büyütür.
Bu, testi oldukça kolaydır. Tek bir Görünüm Uygulaması (iOS) olarak yeni bir Swift uygulaması oluşturuldu. Oluşturulan ViewController.swift'de bir işlev ekleyin. Bir yapı (Command-B) yapın ve ürünün derleme klasörünü kontrol edin. Bu genellikle geçerli:
~/Library/Developer/Xcode/DerivedData/
<AppName>-<IDString>/Build/Products/Debug-iphoneos/
<AppName>.app/
Kontrol <AppName> dosya boyutu.
İşlevden bahsedin ve yeniden derleme yapın. Dosya boyutu daha küçük olacaktır.
Ben SwiftSandbox adlı bir uygulamayla oluşturulan ve bu ekledi:-rwxr-xr-x 1 test staff 142992 Apr 27 11:33 SwiftSandbox*
: dışarı yorumladı fonksiyonu ile
-rwxr-xr-x 1 test staff 213648 Apr 27 11:33 SwiftSandbox*
:
func doSomething() -> NSString {
var v: NSMutableString = NSMutableString(string: "MyString is Funny")
v.replaceCharactersInRange(NSMakeRange(3, 3), withString: "World")
return v
}
bu işlevle bina
, ben bash gördümXcode'ta herhangi bir en iyileştirme ayarını değiştirmediğimi unutmayın, bu yüzden hangi etkiden emin olamam. Bu olurdu.
İlgili konular
- 1. Can Roxygen kullanıcı dışı işlevleri dikkate almıyor mu?
- 2. PHP file_get_contents zaman aşımını dikkate almıyor mu?
- 3. Öznitelik yönlendirme fiili dikkate almıyor mu?
- 4. Chrome/Safari sıfırlama kurallarını dikkate almıyor mu?
- 5. Java sertifika doğrulamasını dikkate almıyor
- 6. Swift 2 kullanılmayan sabit uyarı
- 7. Neden Instragram API'sı isteğim için min_id parametresini dikkate almıyor?
- 8. Visual Studio Nesne Tarayıcısı XML yorum biçimlendirmesini dikkate almıyor
- 9. ObjectContext'te DbContext işlevleri bulunmuyor mu?
- 10. TypeScript derleyici yavaş olur mu?
- 11. Bir MATLAB-Simulink projesinde kullanılmayan değişkenleri ve işlevleri bulun
- 12. Kullanılmayan yöntem parametresi için uyarı gösteriliyor mu?
- 13. Swift - UIViewController içindeki UITableView, UITableView işlevleri
- 14. Swift 2 MKMapViewDelegate rendererForOverlay derleyici uyarısı
- 15. Önek uzantısı işlevleri
- 16. Kullanılmayan Javascript işlevlerini bulun?
- 17. Neden kullanılmayan değişkenler bozuk?
- 18. Google Closure derleyici * bazı işlevleri * satır içi yapmak mümkün mü?
- 19. GLSL: derleyici işlevleri sürekli argümanlar ile değerlendirecek mi?
- 20. Excel işlevleri olarak .net yöntemleri gösteriliyor mu?
- 21. Azure işlevleri, dağıtım yuvalarını destekliyor mu?
- 22. Dialyzer anonim işlevleri analiz ediyor mu?
- 23. ES6 ok işlevleri prototip üzerinde çalışmıyor mu?
- 24. Firebase için Cloud İşlevleri zamanında tetikleniyor mu?
- 25. Swift NSUserDefaults, Dictionary'i kaydetmiyor mu?
- 26. Swift nesneler kullanılıyor mu? veya?
- 27. Google Calendar API: TimeZone google server tarafından dikkate alınmıyor mu?
- 28. bootstrap-responsive.css özelleştirilmiş önyükleme sürümünde yer almıyor mu?
- 29. Servlet Arabirimi kullanılarak oluşturulan ServletProgram çıktısı beklendiği gibi almıyor mu?
- 30. Visual Studio, Microsoft Symbol Server önbellek hatalarını önbelleğe almıyor mu?
Bu, derleyici değil, bağlayıcıyla ilgili bir soru olabilir. Derleyici, tüm program bağlanana kadar bir işlev kullanılıp kullanılmadığını bilemez. –
Bence dahil edilmeleri gerekiyor, çünkü linker, Objective-C ile performeo-array: ',' NSInvocation' vb. Ile dinamik olarak çağrılıp yapılamayacaklarını bilemeyecekler. Sadece spekülasyon olsa da, bunu düzeltmek için hiçbir dokümüm yok. . –
Ayrıca ilginç ama tam olarak şu soruya cevap vermiyor: [Dinamik Sevk Azaltılması ile Performansı Artırma] (https://developer.apple.com/swift/blog/?id=27) –