title: Is it good practice to work directly with core data whenever I need to manipulate my business objects?
body: <p>For example. if I have a chat app that uses objects like: <code>ChatRoom</code> and <code>ChatMessage</code>.    (both subclasses of <code>NSManagedObject</code>)<br>
  And throughout the app I need to: search chat rooms / add massages / create chat rooms and messages / and any other manipulate.<br>
  Is it ok if I do everything directly with core data? I mean every time I need to search a chat room or something like that, to do it with NSFetchRequest or NSFetchedResultsController.</p>