SE 3020: iOS Application Development
Assignment: Project Three
Requirements
Create an iOS application for phones and/or tablets, starting from scratch, that is of your own creative design. Demonstrate the components and features of the iOS SDK by including the following in your project:
Logic to consume data from a web service, using a representative data model to structure and store the parsed data from the API.
- Be careful when choosing an API to implement. Some APIs are more difficult to work with than others.
- Choose an API that provides data in JSON format. Avoid XML-formatted data, for simplicity.
- Choose an API that uses an API key for authentication (or no authentication). Avoid OAuth, for simplicity.
- Do NOT choose an API that only returns a single record per response. You must retrieve and display a collection of data.
- In considering whether or not to move forward with an API, read its documentation and experiment before deciding.
- If you don’t have an API in mind, consider referring to a list such as this one or this one for inspiration.
A visual representation of the data retreived from the web service, by using one of the following:
A
UITableView
that uses a customUITableViewCell
subclass to display its rows.A
UICollectionView
that uses a customUICollectionViewCell
subclass to display its items.
Use Auto Layout constraints effectively to create flexible layouts within your storyboard scenes.
Before you start writing the code for your application, it is prudent to first generate an idea for the application you want to create, and then translate your idea into a visual representation of the application by creating wireframes and mockups, either on paper or using software.
Your application should be styled (using appropriate color, images, layout, typography, etc.) to look professional. You will be graded based on the effort you apply to create an application that is presentable to a client or customer.
Your application should be implemented using Xcode and the iOS SDK, and following the appropriate coding and naming conventions, software design and architectural patterns, and standards and principles suggested by the iOS SDK (all as discussed in class and throughout the textbook).
While working on your project, you may leverage concepts and techniques from online tutorials and other resources, but the idea that you implement should originate from your own creative process. Your idea should differ significantly from any class or textbook example.
You may submit an out-of-class project for this assignment, provided that: 1) the project is developed independently by you, within the timeframe of this current semester, and 2) the project is not submitted for credit for any other assignment, in any other course, in any past, present, or future semester. Violating one or more of these conditions constitutes cheating.
Submission
- Submit your project using Git and GitHub. Start by creating a repo for this assignment here.
- Show your completed assignment to the instructor during class or office hours to receive credit.
Last Updated 11/11/2024