你應該把 Objective-C 的代碼轉為 Swift 嗎?"

作者:Thomas Hanning,原文鏈接,原文日期:2015-11-23
譯者:王亞珂;校對:千葉知風;定稿:千葉知風

你應該把 Objective-C 的代碼轉為 Swift 嗎?

未來是 swift 的,但是這就意味著你需要把 Objective-C 的代碼都轉為 Swift 嗎?

選擇一:不轉代碼堅持使用 Objective-C

乍一看這似乎是最簡單的方法了。既然你已經(jīng)有了一個 Objective-C 編寫的項目,繼續(xù)用OC寫下去肯定不是問題。不過。這會產(chǎn)生一些問題:

未來可能不會有很多優(yōu)秀的 Objective-C 開發(fā)者,因為會有許多 iOS 開發(fā)者將注意力放在了 Swift 上面。如果你的項目依賴于其他的開發(fā)者,未來你想要繼續(xù)維持純粹的 Objective-C 的項目恐怕不是一件容易的事兒。

但是即使你自己可以維護一個項目,這種方法也有害處。如果你沒有 Swift 方面的實踐,你可能會錯失許多蘋果通過 iOS SDK 引入的最新的開發(fā)技術。如果你想跟得上時代的步伐,你不得不學習 Swift

選擇二:將 Objective-C 的代碼轉為 Swift

這是最激進的一種方法。但是想要將一個完整的項目從 Objective-C 轉為 Swift 意味著要寫一個新的項目了。雖然 Objective-CSwift 有很好的互操作性,但是他們的編程規(guī)范是完全不同的。所以如果你想要將 Objective-C 轉為 Swift ,使用錯誤的編程范式是很危險的。

你還需要投入大量的時間和金錢。所以如果你不打算重寫你的項目,這個方法就有點太夸張了。

選擇三:將新的代碼用 Swift 來寫

這是一種不錯的折中辦法。由于 Objective-CSwift 之間的互用性很好,你可以用 Swift 來創(chuàng)建你新的類并讓它們與你已有的 Objective-C 的代碼交互。

使用這種方法你可以將你的項目一步步轉為 Swift 而不需要投入過多的時間和金錢。更多的是這對于學習的過程也是很好的。與其重寫一個完整的項目,不如將注意力集中在應用的某些部分。

并且這個方法的風險也小得多。如果采取這種方法你可能會發(fā)現(xiàn)自己一點兒都不喜歡 Swift (盡管不太可能會發(fā)生這種情況),你完全可以再回到 Objective-C 并且不會損失過多的時間和金錢。

結論

雖然有些情況下值得你將 Objective-C 的代碼轉為 Swift ,但最好的折中的辦法就是將新代碼用 Swift 來寫并與你舊的 Objective-C 的代碼進行交互。

參考:Should You Use Objective-C or Swift?

本文由 SwiftGG 翻譯組翻譯,已經(jīng)獲得作者翻譯授權,最新文章請訪問 http://swift.gg

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容