Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

iOS

large data and assets in iOS

What is best practice for handling big data tables on iOS [Swift]?

i have got a table with about 3000 entries. Each of them is a text with additional columns for headline subline etc. as well optional columns for audio file, or image names.

You already guessed it. The user should be able to query through the entries and get the full data on a detail View. At first i thought CoreData was made for such tasks but then i learned, that it is not.

To try things out I did it with a plist and a manager class that returns an array of structs to populate a tableView. The list only had 10 entries though,

This worked fine but I have the feeling that this is not right. Especially when i think about the actual table with it´s 3000 entries.

(I have heard that some people populate a CoreData model with a local plist or json at the first start of an app. Is that good practice?)

Further down the road lurks another question. How to deal with massive asset-catalogues. Of course many apps do not need to have many local resources, games excludes, so i do not really know if just dumping maybe hundreds of pictures and audio-files into asset-folders is adequate.

I'am asking this questions here because I do not know how to prove the research efforts, that stack overflow demands, since this is a 'I-do-not-know-where-to-start-situation'.

Have you considered using SQLite?

i Thought CoreData is SQLite