Core Data or .Plist? [closed] - ios

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 9 years ago.
Improve this question
I would like to create an application that stores 3 informations:
the patient's name (string)
the test result (int) and
the date of testing.
In the first UIView, a TableView will show up with a list of patients. By clicking on any cell in the UIView, the list of tests with dates that the patient performed is shown. I'm just starting on Objective-C and have not found the best way to do this. Using Core Data and SQLite? Using a .Plist file? And for arrays? I will create 3 arrays?
My first idea was to create an NSMutableArray of patients and each associate a test, but in this case for a patient to carry out various tests, his name will shown repeated in the list of patients. I couldt find thought how could filter theNSMutableArray` (with predicate?) To display the test data for a single patient in the next screen. Any ideas?

Your question is a bit too generic to answer it properly.
But if you save patient information you should definitely consider encrypting the data.
CoreData sounds a bit overkill if you save a very limited amount of data and you don't want to worry about data management, schemas and migrations.
A PLIST storage sounds like a perfectly reasonable solution.
Regarding your data structure.
You have an array of patients in your first view. When you select a cell to get to the next view, you'll pass the selected patient to the next view.

Related

IOS Backend for User Data [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 6 months ago.
Improve this question
I am brand new to ios development and am looking for some advice on the best way to structure my user data and access it throughout my app.
Data is retrieved via HTTPS requests that query a database for the desired information. There are separate calls for the different tables containing information of interest. The returned data is formatted as nested dictionaries where the outermost key is the column and the subsequent dictionary is key-value pairs of the index and the table value. Example:
{"column1":{"0":"value1-1", "1":"value1-2", "2":"value1-3"},"column2":{"0":"value2-1", "1":"value2-2", "2":"value2-3"}...}
My primary requirement is that I will need to be able to filter this data by the innermost values (some will be dates, some will be numbers, etc). I would like to have the data in a format that will make this simple to do and will not cause delays as there is no limit on the number of possible rows.
I have looked into reconstructing a user-specific SQLite database with the information and querying that throughout the app as necessary. I have also explored dataframes as this app was originally developed in python - don't ask - and relied on pandas dataframes.
I know this decision will impact me heavily and am trying to do my best to make an informed decision. I appreciate any feedback and am happy to give more useful context that might be missing.
TIA
You can use SQLite database for persistent storage. This is ideal for your main requirement of filtering the data. You should also create a structure or a class modelled on your data to store and use during runtime. You can refer this for deciding between a class or structure.

Store data frame each day [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 3 years ago.
Improve this question
I make an application which receives data via bluetooth. I would like to store this data received at regular intervals to make a history and store it in the application.
I would like to know what to use (Core Data, UserDefaults, ...) ?
Thanks
It depends on amount of data but mostly what you want to do with that data.
Core data will take most of time to implement but you can do a whole lot of things with that data. You can search and filter items for instance by date and even put them into sections. NSFetchedResultsController can be very helpful here.
User defaults are probably not very appropriate as they are designed to hold small (or at least finite) amount of data variables like some settings, flags...
The other that comes to mind is simply saving them into file. Probably the easiest would be using JSON. JSONSerialization should be able to encode or decode your data from concrete objects to Data and back. Also there are some nice tools now that can greatly speed up the process. Check into Codable. Data in the end can be saved directly into files which may then be created in documents directory of your application.
You should evaluate how will these data be accessed. If you are targeting for instance showing charts on monthly, daily and hourly basics, have ability to remove entries and such then I would go with Core Data. If you just need to open some old logs and look into them then saving to disk is probably a more fitting solution.

Creating a database in Xcode [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
I want to create a searchable database in Xcode - for example, of different trees. The database would consist of the tree name, two images, price, and a short description. What is the best and most efficient way of creating such a database?
I am aware of: Core Data, SQLite3, and Parse. I am leaning towards SQLite3 but have not found a good place to learn how to implement this. Any suggestions?
Seeing as you are new to Objective-C and I doubt this will evolve into something need direct SQL I would suggest using CoreData. Although it is not technically a data base it is an object graph, it is built for exactly what you are wanting to do. Apple was even nice enough to build wrappers for everything you want to do.
CoreData to store your tree name, two images, price, and a short description.
NSFetchedResultsController for grabbing it.
UISearchBarController for letting the user search.
You would want to use Parse if you wanted to save your data to a server. If your doing everything locally I wouldn't worry about Parse. CoreData is what you want.

Core Data Object Model has become quite bloated [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
My Core Data object has become bloated with properties (10 in total, 2 BOOL, 5 NSString, 3 NSDate)
and now I want to add yet another few properties. This object is the central data object for my entire app, so it's required a lot of properties. I read somewhere that some people separate out a single object into 2 or more Core Data Entities. What's best practice?
Unless you can prove me otherwise, 10 properties is not a problem at all.
You can bloat your single Core Data Entity with as many properties and relations. Core Data works on retrieving data via lazy loading and is automatically managed by itself. Hence, don't worry you will not run into memory scarcity issue. :)
In "edit scheme..." select left run app and in the right "Arguments passed on launch" add "-com.apple.CoreData.SQLDebug 1" it will show you sqlite query time in your log.
you just want optimize sqlite query not about core data, just use explain to analyze it
just focus on query time and optimize it
Core data not only store data and query ,also provide PersistentStore.
I think core data is framework , sqlite like mysql , PersistentStore like small memcache , you
get once from sqlite, and crud in the PersistentStore

The best storage choice for iPhone navigation based application? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 7 years ago.
Improve this question
I'm confused about what would be the best data storage (plists, SQLite, Core Data etc.) for my iPhone app that is navigation based and has all kinds of lists and info. I'm very new to this and the multiple types get me confused.
For example, first view is a table view for type of recipe (Ex. Cookie Recipes), second view is also a table view for all kinds of cookie recipes (Ex. Chocolate Cookies), third view would be the recipe for the Chocolate Cookie (numbers, text etc. stored).
It would be a non-static app, that would make the USER create the table cell "Cookie Recipes" and then create the "Chocolate Cookies" and also input the info for the chocolate cookies.
Property lists are very handy when you have static data. There's a structured editor built right into Xcode and they show up in code as instances of NSArray and NSDictionary. But they aren't really designed for managing changing data, they are just a serialisation format.
If the user is editing complex data, you're better off using Core Data or SQLite. Core Data is a higher level interface designed to be used with Cocoa. SQLite would do the job as well, but I'd probably suggest only using that if you are already familiar with it.

Resources