2011-09-13 36 views
6

因爲我不想劫持另一個線程,所以我的問題是關於映射。把對象映射放在哪裏(在RestMark中)

首先閱讀:Where's the best place to put object mappings in RestKit

我敢肯定的答案布雷克水域放棄的意志可能是非常正確的,因爲他是一個非常聰明和有經驗的傢伙比我,但對我的邏輯告訴我把在每個模型中映射:如果您在模型中更改了某些內容,則只需滾動一下即可更改映射。

在我的AppDelegate中,我會在每個模型中調用initMappings(或任何你想調用它的)。

回答

1

我也是把我的模型映射的粉絲。我通過爲每個模型添加一個類方法來實現,以便隨時隨地獲取映射。

0

我選擇了創建類別的路線並將其放在那裏。我已經在我的應用程序委託類而不是映射提供程序上創建了它。

我認爲在模型中使用它的問題就像在其他線程中描述的一樣,如果你有可能以循環引用結束的關係。

0

我相信,這是很自然的認爲你做的方式,它具有意義,因爲你必須在代碼和它的清潔更多的控制權,但你必須非常小心,因爲很多人說,這個問題用循環引用可能是一個很大的麻煩。

關於這個問題的一個解決方案是,當你有一個A實體引用B,B到A時,那麼在兩個實體中的一箇中,你將不得不選擇不直接映射實體,否則你會以循環結束。

當你在同一個作用域上的所有東西都定義循環引用變得不可行時,因爲你需要B的初始定義來將它的引用添加到A上,所以我剛纔提到的解決方案就是用這種方法實現它的自然方式。

這取決於你和你的應用你想使用哪種方法,這對你和你的團隊來說更適合採用。你必須在清潔的代碼之間選擇可能的錯誤。