2016-08-15 41 views
0

我開始開發一個新的應用程序,沒有現有的代碼庫可以重複使用。我對Objective-C很滿意,但是想要在Swift中構建應用程序,因爲這是未來。但在此之前,我有幾個問題:在Mac應用程序中使用Swift有什麼優點和缺點?

Mac App Store是否接受用Swift編寫的應用程序?

Swift 3不是二進制兼容的,這是否意味着下一個macOS版本可能會破壞我的應用程序?可能最終會出現一種情況,我必須爲不同版本的macOS維護兩個二進制文件?

是否所有可用於Objective-C的Xcode調試工具都可用於Swift?

是否還有其他因素與此決定有關?

+0

這是沒有意義的聲稱這個問題是基於意見的。我在問題中提出的四個問題都有客觀的答案。 –

+0

您的問題被擱置的原因是因爲整體問題。你應該單獨詢問/研究這些問題。詢問利弊主要是基於意見的。 – penatheboss

+0

如果你考慮基於觀點的利弊,那很好,但他們不是。你認爲重要的因素是基於意見的因素,而不是因素本身。例如,接受的答案表明,Xcode中的重構僅適用於Objective C.這是事實,而非意見。 –

回答

1

我沒有看到任何關於Swift應用程序的限制。它們被Mac App Store所接受,無論您使用哪種版本的Swift,它們都可以兼容最新和未來的macOS版本。調試工具也適用於Swift。

話雖如此,有優點和缺點:

優點:

  • 現代語言,優於Objective-C的
  • 由蘋果公司完全致力於
  • 可以輕鬆地與目標混合-C(例如與第三方庫)

缺點:

  • 更大的應用程序,因爲所有的應用程序都需要與Swift Runtime庫捆綁在一起。
  • 目前尚不可能在Swift中創建二進制庫。他們必須在源代碼中分發。
  • XCode中的重構僅適用於Objective-C。
  • 該語言仍在不斷髮展。儘管如果語言改變XCode有助於升級,但仍然需要手動工作和重新測試。
相關問題