2017-08-10 50 views
-4

我想部分地將Objective C項目帶到Swift。我尋找最佳實踐。將Objective C項目轉換爲Swift的最佳做法是什麼?

我應該從模態類開始還是從哪裏開始?此外,該項目是一個開放項目,其他開發人員使用和開發該項目。

+0

您是否知道您可以同時使用ObjC和Swift __?沒有必要從ObjC轉換到Swift。 – Sweeper

+0

是的,我知道這一點,我想部分進行。 – slytrkmn

+0

你能解釋一下你的意思嗎? – Sweeper

回答

1

如果你真的必須這樣做,那麼讓我們來看看一些事實:

您將需要轉換的代碼基本上是由文件文件。當一個文件被轉換成Swift時,它將不再可以被Objective-C使用,除非你指定它。你不想指定它,因爲當整個代碼被遷移時,最後不需要它,所以你應該避免兩次在同一個文件上工作。

每個Objective-C文件都可以被Swift使用,只需將其頭部添加到橋接頭中即可。

某些代碼在移植到Swift時可能會發生顯着變化,例如枚舉和類嵌套,但至少在第一階段這不是強制性的。

如何去實現它:

您應該被最少使用你的項目的其他部分類,文件和模塊啓動。看起來iOS將從視圖控制器開始的應用程序。

在您完成了那些最直接的課程後,您可能需要開始將項目分解到每個組儘可能關閉並且儘可能少用其他組的組。此時,您需要將整個團隊完全遷移,以便程序正常工作。

因此,首先針對每個屏幕,然後針對每個組,您將能夠提交併推送更改,以便其他開發人員可以繼續處理該項目。

只是一些想法:

如果這是一個項目,該項目仍處於開發階段,那麼你或許應該排除將最有可能永遠不會被修改的模塊。移植一個寫得很好的代碼沒有任何好處,只移植你希望繼續開發的代碼並希望在Swift中完成。

一旦你轉換整個項目的目標邏輯可能會有所不同,那麼它是在Objective-C中。使用數組,字典,NSNumber,類型轉換將很可能是一個非常痛苦的遷移(取決於你現在如何使用它們)。但即使在遷移之後,您可能會提出無效的代碼,除非您完全重構您的代碼以便Swift友好。

相關問題