Chapter 4. Getting Online
We've seen that adding a little bit of online capability can really hurt our adherence to the offline design principles. By default, most libraries and frameworks don't handle being offline very gracefully, so we need to implement our own handling of these situations. In this chapter, we'll do exactly this.
Caching enables the illusion of being online when you're not. However, there are two types of caching: short-term caching, which is persistent per session, and long-term caching, which is persistent across sessions. In the context of mobile app development, restarting the app will clear the short-term cache but should leave the long-term cache intact. Most apps support short-term caching by default. To enable long-term caching, you'll need to do a bit more work.
Fortunately, solving the long-term caching problem is relatively straightforward. There are a great number of libraries and tools to make this easy. We'll discuss...