Module 1: MOOC Overview-Overview of the Java for Android MOOC
Overview of Java for Android MOOC
()
Responses to Frequently Asked Questions (FAQ) and PDF Versions of Slides
Module 1: MOOC Overview-Module 1 Introduction
Module 1: Overview
()
Module 1: MOOC Overview-MOOC Contents, Organization, and Learning Strategies
MOOC Contents, Organization, and Learning Strategies
()
Module 1: MOOC Overview-Overview of the Java Programming Language
Overview of the Java Programming Language (Part 1)
()
Overview of the Java Programming Language (Part 2)
()
Module 1: MOOC Overview-Module 1 Summary
Overview Summary
()
Module 2: Introduction to Android Studio-Module 2 Introduction
Module 2 Introduction
()
Module 2: Introduction to Android Studio-Installing Java and Android Studio
Installing Android Studio
()
IMPORTANT Installation Note
Module 2: Introduction to Android Studio-Opening Projects
Opening Provided Assignment Projects
()
Notes on Creating & Importing Projects
Creating and Importing Projects
()
Module 2: Introduction to Android Studio-Introducing the Editor
Introducing the Editor
()
Module 2: Introduction to Android Studio-Project File Organization
Project File Organization
()
Module 2: Introduction to Android Studio-Creating and Editing Files
Creating and Editing Source Code and Resource Files
()
Module 2: Introduction to Android Studio-Creating and Running a Virtual Device
IMPORTANT:: Notes on creating an Android Virtual Device
Creating and Running a Virtual Device
()
Module 2: Introduction to Android Studio-Debugging, Syntax Highlighting, and Logcat
Debugging Syntax Errors
()
Logging with Logcat
()
TODO Statements
()
Module 2: Introduction to Android Studio-Self Assessment & Auto-Grading
Running Your Code & Self Assessment Via Unit Tests
()
Submitting Your Code to the Auto-Grader
()
Module 2: Introduction to Android Studio-Module 2 Summary
Module 2 Summary
()
Module 3: Writing a Simple Android App Using Basic Java Features-Module 3 Introduction
Module Introduction
()
Main Components in a Computing System
()
Slide deck
Module 3: Writing a Simple Android App Using Basic Java Features-Variables and types
Variables and Types
()
Expressions
()
Slide deck
Module 3: Writing a Simple Android App Using Basic Java Features-Fundamental components
Printing data
()
Printing slide deck
Note on Printing Data: out vs. mOut
The Math Class
()
Math slide deck
The String Class
()
String slide deck
Module 3: Writing a Simple Android App Using Basic Java Features-Creating and calling (static) methods
Methods
()
Slide deck
Module Conclusion
()
Module 4: Control Flow-Introduction to control flow
Introduction to Control Flow
()
Module 4: Control Flow-Conditional statements: if/else
If-statement Part 1
()
If-statement L1 slide deck
If-statement Part 2
()
If-Statement L2 slide deck
If-statement Code Walkthrough
()
If-statement Code Walkthrough: Code Copy
If-statement Code Walkthrough: Slide Deck
Module 4: Control Flow-Counting loops: for loops
For-loops Part 1
()
Part 1 slide deck
For-loops Part 2
()
Part 2 slide deck
For-loops Part 3
()
Part 3 slide deck
For-loops Code Walkthrough
()
Code walkthrough slide deck
Module 4: Control Flow-Indefinite loops: while loops and do-while loops
Indefinite loops
()
Indefinite loop slide deck
Module 4: Control Flow-Random numbers
Random number generation
()
Slide deck
Module 4: Control Flow-Module Summary
Module Summary
()
Module 5: Structured Data-Introduction to common structured data
Structured Data
()
Slide deck
Module 5: Structured Data-Built-in arrays
Arrays: Part 1
()
Part 1 slide deck
Arrays: Part 2
()
Part 2 slide deck
Arrays: Part 3
()
Part 3 slide deck
Module 5: Structured Data-For-each loops
The for-each loop
()
Slide deck
Module 5: Structured Data-Introduction to the Java Collections Framework
The Collections Framework: Part 1
()
Part 1 slide deck
The Collections Framework: Part 2
()
Part 2 slide deck
Module 5: Structured Data-ArrayLists
ArrayLists
()
Slide deck
Module 5: Structured Data-HashMaps
HashMaps
()
Slide deck
Module 5: Structured Data-Structured Data WrapUp
Structured Data WrapUp
()
Module 6: Classes and Interfaces-An overview of the module
Java: Classes and Objects, an overview
()
Module 6: Classes and Interfaces-Object Oriented Programming concepts
Motivating Classes and Objects
()
Slide deck
Module 6: Classes and Interfaces-Constructing your own class
Building your own Classes and Objects
()
Slide deck
Example files: Account
Module 6: Classes and Interfaces-Refining your class file by applying principles of OOP
Refining your Classes: Part 1
()
Slide deck
Module 6: Classes and Interfaces-Overriding methods to improve your class; making code more readable
Refining your Classes: Part 2
()
Slide deck
Module 6: Classes and Interfaces-Using new objects in old places - arrays and parameter passing
New Objects in Old Places
()
Slide deck
Module 6: Classes and Interfaces-Java Generics
Overview of Java Generics
()
Slide deck
ModuIe 7: Inheritance and Polymorphism-An Overview of the Module
Class Hierarchy and Interfaces: Overview
()
ModuIe 7: Inheritance and Polymorphism-Introduction to Inheritance
Class Hierarchy and Interfaces
()
Slide deck
ModuIe 7: Inheritance and Polymorphism-Continuing with class inheritance
Inheritance at Work
()
Slide deck: Inheritance at Work
Polymorphism
()
Slide deck: Polymorphism
Java Interfaces
()
Slide deck: Java Interfaces
Self-Assessment quiz code
Advanced Class Interface features
()
Slide deck: Advanced Class Interface Features
ModuIe 7: Inheritance and Polymorphism-Exception Handling
Exception Handling
()
Slide deck
Module 8: Android Calculator App Mini-Project Assignment-The Calculator App Mini-Project Assignment
Overview of the Calculator App Mini-Project Assignment
()
Mini-Project Assignment Walkthrough
()