Date Topic Notes/Reading
Week 1 (1/24) Introduction, Platforms, GitHub Mobile development 101: What you need to know
Things I wish I had known before starting iOS development Part 1,Part 2
What I Wished I Knew Before I Jumped Into iOS Part 1,Part 2
Week 2 (1/31)* Work on iOS App Introduction to iOS 11, Xcode 9 and Swift 4
MVCs
Week 3 (2/7) iOS (Swift)
Project 0 (GitHub) Due
Start Developing iOS Apps
App Programming Guide for iOS
Getting Started with iOS videos
Week 4 (2/14) iOS (Swift) Views Model View Controller Swift Playgrounds
Week 5 (2/21) Android (Java)
Project 1 (iOS) Due
Intro to Android
Android Studio
Building Your First App
Week 6 (2/28)* Work on Android App Ray Wenderlich Android Tutorials
Material Design To Do List Tutorial
Week 7 (3/7) Android (Java) / Hybrid (JavaScript) Android Activities
React native
React Native - Learn The Basics
Week 8 (3/14) Spring Break Expo Snack IDE
Week 9 (3/21) Hybrid (JavaScript)
Project 2 (Android) Due
Building the TaskList App in React Native
Week 10 (3/28) Data Persistence
Project 4 (choice) Proposal Due
Building the TaskList App in React Native
Android - Data and File Storage
iOS - Persist Data
Week 11 (4/4) Server Side Adding Redux to the React Native TaskList App
Firebase
React Native and Firebase
Flux - Video
Week 12 (4/11) User Interface
Project 3 (Hybrid) Due
iOS Human Interface Design Guidelines
Android Design Patterns
Inspired UI
W3C Accessibility Guidelines
Week 13 (4/18) Design Fluid UI Wireframing
Planning Screens and Their Relationships
Week 14 (4/25) Sensors and Hardware  
Week 15 (5/2) Advanced Platform, AR/VR  
Finals Week (5/9) Presentations
Project 4 (choice) Due
 

Please refer to the Syllabus for more details on the course, grading, schedule, etc.. This page is meant only as a summary and quick-reference.


Course Matierials

  • Project 3 - React Native Task List

    Specification

    For this project, you are going to build a simple Task List app. Users will be able to open your app and add items to their todo list of things that they want to get done. Each item will have a name, a description, and a way to record whether it has been completed or not. Since we have not yet covered data storage, the app should pre-populate with just a few example items at start up and work as intended while in use, but it does not have to remember the state of the list from run to run.

  • 5 - iOS Views (slides)

  • 4 - iOS Model View Controller (slides)

  • 6 - Android Basics (slides)

  • Project 2 - Android Task List

    Specification

    For this project, you are going to build a simple Task List app. Users will be able to open your app and add items to their todo list of things that they want to get done. Each item will have a name, a description, and a way to record whether it has been completed or not. Since we are early in the semester and have not yet covered data storage, the app should pre-populate with just a few example items at start up and work as intended while in use, but it does not have to remember the state of the list from run to run.

  • Project 1 - iOS Task List

    Specification

    For this project, you are going to build a simple Task List app. Users will be able to open your app and add items to their todo list of things that they want to get done. Each item will have a name, a description, and a way to record whether it has been completed or not. Since we are early in the semester and have not yet covered data storage, the app should pre-populate with just a few example items at start up and work as intended while in use, but it does not have to remember the state of the list from run to run.

  • 3 - iOS Basics (slides)

  • 2 - Mobile Devices (slides)

  • 1 - Introduction (slides)

  • Project 0 - GitHub Basics

    Your first assignment for this course is to become accustomed to how GitHub and GitHub Classroom works because we will be using it extensively in the class for your projects and for assignment submission. There are two parts to the assignment and you need to complete both of them to receive credit.

  • COS 470 Mobile Application Development

    USM Course Catalog: Topics to be covered may include philosophy of computers, history of computers, computers and society, simulation, graphics, and other advanced topics. Prerequisite: COS 285 or permission of the instructor. Cr 3.

    This course is about developing mobile applications. Students will develop for iOS with Swift, Android with Java, and Cross-platform with JavaScript/HTML/CSS. The course is almost entirely project oriented and will rely on students being well prepared in their reading, research, and development skills.

subscribe via RSS