我正在開發用於家庭作業管理的Android應用程序。我是大學的資深人士,所以我在大型項目上的經驗非常有限,但我想很好地設計這個應用程序的所有部分,而不是隻是把東西扔在一起。這包括數據存儲的方式。Android應用程序數據存儲設計
我們有兩個主要對象/實體:Task
和Subject
。即使有人在整個時間使用應用程序,他們在大學裏也不會刪除任何東西,但我猜測最多會有幾千個任務和幾百個主題(並非所有主題都會一次顯示)。該應用程序的初始版本不會與服務器同步數據,但這是未來的一個明確的可能性,所以我希望設計這一點。我們也可以選擇讓用戶向對方發送任務。
這裏是我的問題:
- 會SQLite數據庫是用於存儲數據的,我們很可能會擁有量是最好的選擇,還是會像它序列化到XML或JSON然後將其加載到內存何時開始工作?
- 我已經習慣於用物體來思考。這意味着如果我使用一個數據庫並且它有一個任務表和一個主題表,我的第一個直覺就是將每個數據庫表格行轉換成相應的對象以供查看/編輯。 (對象的setter將包含驗證邏輯。)這是一個好的/有用的/必要的思考方式嗎?如果不是,還有什麼選擇?
感謝您的幫助!
我最近問了一個與此有關的問題,並得到了一些很好的回答。在這裏查看 - http://stackoverflow.com/questions/19649395/proper-implementation-of-dboperations-in-async-task –
對於任何人在未來看這個(特別是與問題2),你可能想看看到對象關係映射框架中,這些框架自動處理對象和表之間的轉換。 – ecraig12345