2014-12-09 120 views
1

整個應用程序我真的不知道在哪裏把業務邏輯iOS應用內..你在哪裏把邏輯的迅速

讓說,例如,它必須檢查每5分鐘和 基於用戶位置執行某種行動。 你是否在應用程序委託或其他視圖控制器中執行此操作? 還是在每個視圖控制器?

在此先感謝,我仍然是一個開始的程序員。

回答

1

此問題不依賴於所使用的語言或技術,但它是如何劃分應用程序的責任以實現不同組件之間低耦合的一般問題。所以沒有一個正確和絕對的答案!也許正確的答案是「它取決於」。當你將這個邏輯與技術聯繫起來時,請考慮你提到的組件。應用程序委託和視圖控制器不應該做很多工作。應用程序委託責任是管理應用程序狀態並查看控制器以管理視圖。所以他們應該將其他責任委託給其他組件。但事實上,如果你的應用程序不那麼大,而且你不關心可修改性和內聚性,那麼你可以自由地將邏輯放在任何你想要的地方。

+0

感謝您的回答,我明白。但即使視圖不在應用程序的前臺,每個代碼都會自動運行嗎?比如說:用戶在一個視圖(屏幕A)中輸入一個城市名稱,然後他轉到另一個視圖(屏幕C)。但是,然後應用程序必須根據城市的名稱檢查天氣,並在溫度達到特定水平時顯示另一個屏幕(屏幕B)。你會把這種邏輯放在哪裏?在屏幕B中,還是在所有屏幕中,哪個屏幕位於前景並不重要,它總是會執行相同的代碼? – Nordip 2014-12-10 07:39:02