2011-12-11 55 views
1

AFAIK視圖控制器類應僅用於管理其視圖,IBActions,IBOutlet和其他視圖屏幕相關的東西。這意味着視圖控制器類應該儘可能輕量級,只關心管理它的根和內部視圖。但是,有時我們試圖將代碼留在視圖控制器類中,而不是移動到其他自定義類。目前,我總是爲模型(數據庫表或自定義對象),解析器包裝器,大量計算以及其他大小較大或可能被視爲單獨類的邏輯創建自定義類。然而,很多時候,我會在視圖控制器類中留下一些相對較小的計算,簡單的檢查,簡單的下載和其他小代碼的東西,因爲我很懶(和誰不是?),我不舒服有一個只是因爲理論上,一些代碼語句不屬於某些視圖控制器類。我瞭解到,在其他版本的應用程序中,稍後這些小類可能演變爲更大更真實的類,但是,可能不會。恕我直言,如果你非常關心100%的純度和清潔,你會花更多的時間(至少在應用程序的初始版本中),但你永遠不會知道產品是否會進化或者它是否會發展將被放棄。開發人員總是會面臨一些折衷。將View Controller類拆分爲VC和自定義類的規則是什麼?

聽到這個很有意思,你用什麼內部規則來設計你的類。

回答

1

真的有兩個問題,你應該在什麼時間/哪裏做某件事情,而不管你是否堅持這個模式。 和 如何更清晰地減少,特別是當實用性和實用主義開始在你面前時。

我們傾向於尋找一個簡單的靜態類,例如一個DateUtility類,用於解析和格式化不同格式的日期。

並聚合更大的東西,即下載。

如果你想重用,分離是基本規則,所以只是因爲大的東西不一定意味着不同的類。

1

我個人喜歡有一個嚴格的類分離,如果這意味着有大量的文件:( 每個對象都有其目的,如果我發現了一些真正的通用操作,我更喜歡創建一個「助手」類,其中封裝方法這並不是特定的背景

真正困難的一步是要嚴格你的決定,不要懶惰:)因爲你的問題很明顯,你明白你的代碼嚴格的嚴格程度!

相關問題