CS F314 Software Development for Portable Devices
Table of Contents
Introduction
In the current offering of the course, we will focus on developing apps for Android platform using Java. Reasonable proficiency in Java, version controling, UML, and software engineering principles is assumed. Students will be guided through setting up Android Studio and related tools. Through sample apps, students will be exposed to basic concepts of Android apps like Activities and Fragments. Then, building upon those concepts, we will introduce handling data, networking, sensors, etc. Alongside, we will also talk about addressing enterprise requirements in mobile applications, like performance, scalability, testability, accessibility.
Syllabus
Course modules
We will add modules as the semester progresses.
Assignments
Introduction
Java/OOP Overview
Android Studio Basics
App Basics
Testing
Accessibility
Activity Lifecycle
Intents
Persistent Data
Fragments and Navigation Component
Services and Background Tasks
UI
Firebase
Miscellaneous Topics
Crossplatform Development
FAQs
What are the prerequisites?
Reasonable proficiency in Java, git, UML, and software engineering principles.
If you believe you are not proficient in one or more of these, please talk to me ASAP.
Is this course offered every semester?
No. It may be offered once a year.
Do we need a specific OS or environment for the assignments?
Android apps can be developed on Windows, macOS, or Linux machines. You can test your apps using device emulators - a physical android device is recommended but not required.
Can I audit this course?
According to the Academic Undergraduate Studies department: “[This] is not an audit course. A student can attend the lectures etc. but no grade or entry in the Transcript will be made.”
All lectures are available on the course website. Students can watch those as and when they like.