Learners will apply these Java features in the context of core Android components (such as Activities and basic UI elements) by applying common tools (such as Android Studio) needed to develop Java programs and useful Android apps. Learners will work on several hands-on projects throughout the MOOC, i.e., each week will require learners to write solutions to programming assignments that reinforce the material covered in the lecture videos. There will be roughly 4-6 hours of student engagement time per week, including video lectures, quizzes, and programming assignments.
Course 1 of 5 in the Android App Development Specialization
Module 1: MOOC Overview
Summarizes the organization of the MOOC and the topics it covers. It also discusses the MOOC prerequisites, workload, and learning strategies needed to complete the MOOC successfully. It then presents an overview of key features in the Java language, outlining its support for object-oriented programming concepts that guide the development of Android apps.
Module 2: Introduction to Android Studio
Provides an overview of Android Studio, explaining how to install it and apply it to develop a simple app using basic Java and Android features presented in this MOOC.
Module 3: Writing a Simple Android App Using Basic Java Features
Shows how to write a simple Android app that defines variables using primitive Java data types, shows how to assign values to those variables, and output them to the Android display using Java classes and methods.
Module 4: Control Flow
Covers Java’s looping constructs (e.g., for loops, while loops, and do/while loops), as well as its conditional statements (e.g., if/else statements).
Module 5: Structured Data
Provides more detail on common data structures supported by Java, including built-in arrays, as well as core classes in the Java Collections Framework, such as ArrayList and HashMap.
Module 6: Classes and Interfaces
Covers Java classes and interfaces, focusing on data types, fields, methods, generic parameters, and exceptions.
ModuIe 7: Inheritance and Polymorphism
Examines Java's inheritance and polymorphism features (e.g., extending classes and virtual methods).
Module 8: Android Calculator App Mini-Project Assignment
Guides learners through the creation of an Android app that implements a simple calculator, which provides features for adding, subtracting, multiplying, and dividing numbers input by various means (e.g., via numbers and buttons on the Android user interface).