What is persistency?
First, let’s define the word persistency. Persistency is the ability of application data to survive between successive runs of an application. As is typical of the Apple ecosystem, there are many ways to achieve persistency of data, and each way has different use cases, advantages, and disadvantages.
If you just store application data in volatile memory – that is, RAM – then data won’t survive across different launches of the same application; each launch would be “a new beginning,” starting from scratch.
Although this approach might suit a handful of specific scenarios, such as projects where there’s no requirement to retain information between launches (e.g., basic utility calculations such as unit conversions), you will need the capability to save data to non-volatile memory in most cases. Furthermore, apart from retrieving it, you’ll often need to perform additional operations. The usual tasks you...