I am writing an application that consists of business logic and UI parts. There is quite big amount of data to be stored and accessed/modified by both BL and UI. In most of the cases changes to the stored data should be reflected by UI immediately.
How do I decide whether I should or should not use direct DB access? content provider?
I have done some reading on the subject (1, 2) and I understand the difference between these two options.
Please share your thoughts on other aspects of the problem, such as performance, difficulty level of code development and maintainability, etc.