$29
School of Electrical Engineering and Computer Science
CptS 479 Mobile Application Development
Homework 11
1
General Instructions: Put the entire app directory into one zip file and submit as an attachment
under Content → Assignments → Homework 11 for this course on Blackboard Learn by the above
deadline. Note that you may submit multiple times, but only the most recent entry submitted before
the above deadline will be graded.
This homework builds on the HW5
2
capabilities by adding Core Data to persistently store the
quotation information. Specifically,
1. Ensure your app has all HW5 capabilities, including a table view to list and delete the
quotations, an add quotation view to add quotations, and a detail view to view the quotation
details.
2. If you start with a New Project, then be sure to check the “Use Core Data” option. If you
work from an existing project, you can still create a new project using Core Data and copy
over the Core Data Stack code from AppDelegate.swift. You will also need to add a Core
Data Model to the project.
3. In the Core Data Model, add an Entity called Quotation with the attributes “quote” and
“author” both of type String.
4. Implement Core Data functionality for inserting, deleting and fetching quotations from the
database. Additions and deletions to the table should be made to the Core Data store as
well as reflected in the table. Whatever state the table is in when the app is terminated, the
app should return to that state when rerun by fetching the quotations stored in Core Data.
5. Do not preload any quotations. The table should be initially empty.
6. Test your app using the iPhone 11 simulator, which is the same simulator we will use to
grade your app.
7. Be sure that auto layout constraints are set so that all view elements are appropriately
displayed with no overlap or trimming regardless of device orientation.
1 Note this homework is due a week later, because your project proposals are due April 7.
2 My solution to HW5 is available on Blackboard Learn. You may use it, or your own, as a starting
point for this homework.