Java for Android
Description
When you enroll for courses through Coursera you get to choose for a paid plan or for a free plan .
- Free plan: No certicification and/or audit only. You will have access to all course materials except graded items.
- Paid plan: Commit to earning a Certificate—it's a trusted, shareable way to showcase your new skills.
About this course: This MOOC teaches you how to program core features and classes from the Java programming language that are used in Android, which is the dominant platform for developing and deploying mobile device apps. In particular, this MOOC covers key Java programming language features that control the flow of execution through an app (such as Java’s various looping constructs and conditional statements), enable access to structured data (such as Java's built-in arrays and common classes in the Java Collections Framework, such as ArrayList and HashMap), group related operations and data into classes and interfaces (such as Java's primitive and user-defined types, fields, methods,…

Frequently asked questions
There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.
When you enroll for courses through Coursera you get to choose for a paid plan or for a free plan .
- Free plan: No certicification and/or audit only. You will have access to all course materials except graded items.
- Paid plan: Commit to earning a Certificate—it's a trusted, shareable way to showcase your new skills.
About this course: This MOOC teaches you how to program core features and classes from the Java programming language that are used in Android, which is the dominant platform for developing and deploying mobile device apps. In particular, this MOOC covers key Java programming language features that control the flow of execution through an app (such as Java’s various looping constructs and conditional statements), enable access to structured data (such as Java's built-in arrays and common classes in the Java Collections Framework, such as ArrayList and HashMap), group related operations and data into classes and interfaces (such as Java's primitive and user-defined types, fields, methods, generic parameters, and exceptions), customize the behavior of existing classes via inheritance and polymorphism (such as subclassing and overriding virtual methods). 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.
Who is this class for: The intended audience of learners for this MOOC includes those with basic computing skills who have little/no programming experience. This MOOC is intended both for beginners to programming or those switching to Java and/or Android for the first time.
Created by: Vanderbilt University-
Taught by: Dr. Jerry Roth, Professor of the Practice
Electrical Engineering and Computer Science -
Taught by: Dr. Julie L. Johnson, Instructor
EECS -
Taught by: Michael Walker, Instructor - Graduate Student pursuing PhD in Computer Science
EECS -
Taught by: Dr. Douglas C. Schmidt, Professor of Computer Science and Associate Chair of the Computer Science and Engineering Program
Electrical Engineering and Computer Science
Each course is like an interactive textbook, featuring pre-recorded videos, quizzes and projects.
Help from your peersConnect with thousands of other learners and debate ideas, discuss course material, and get help mastering concepts.
CertificatesEarn official recognition for your work, and share your success with friends, colleagues, and employers.
Vanderbilt University Vanderbilt University, located in Nashville, Tenn., is a private research university and medical center offering a full-range of undergraduate, graduate and professional degrees.Syllabus
WEEK 1
Module 1: MOOC Overview
Module 1 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.
6 videos, 1 reading expand
- Video: Overview of Java for Android MOOC
- Reading: Responses to Frequently Asked Questions (FAQ) and PDF Versions of Slides
- Video: Module 1: Overview
- Video: MOOC Contents, Organization, and Learning Strategies
- Video: Overview of the Java Programming Language (Part 1)
- Video: Overview of the Java Programming Language (Part 2)
- Video: Overview Summary
Graded: Module 1 Quiz
Module 2: Introduction to Android Studio
Module 2 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.
13 videos expand
- Video: Module 2 Introduction
- Video: Installing Java and Android Studio
- Video: Creating and Importing Projects
- Video: Introducing the Editor
- Video: Project File Organization
- Video: Creating and Editing Source Code and Resource Files
- Video: Creating and Running a Virtual Device
- Video: Debugging Syntax Errors
- Video: Logging with Logcat
- Video: TODO Statements
- Video: Testing Your Code: Self Assessment Via Unit Tests
- Video: Making Zip File for Uploading Multiple Files At Once
- Video: Module 2 Summary
Graded: Module 2 Quiz
Module 3: Writing a Simple Android App Using Basic Java Features
Module 3 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.
9 videos, 6 readings expand
- Video: Module Introduction
- Video: Main Components in a Computing System
- Reading: Slide deck
- Video: Variables and Types
- Video: Expressions
- Reading: Slide deck
- Video: Printing data
- Reading: Printing slide deck
- Video: The Math Class
- Reading: Math slide deck
- Video: The String Class
- Reading: String slide deck
- Video: Methods
- Reading: Slide deck
- Video: Module Conclusion
Graded: Module 3 Quiz
Graded: Geometry Calculations - Auto Graded
WEEK 2
Module 4: Control Flow
Module 4 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).
11 videos, 10 readings, 2 practice quizzes expand
- Video: Introduction to Control Flow
- Video: If-statement Part 1
- Reading: If-statement L1 slide deck
- Video: If-statement Part 2
- Reading: If-Statement L2 slide deck
- Video: If-statement Code Walkthrough
- Reading: If-statement Code Walkthrough: Code Copy
- Reading: If-statement Code Walkthrough: Slide Deck
- Practice Quiz: Module 4 practice quiz on IF statements
- Video: For-loops Part 1
- Reading: Part 1 slide deck
- Video: For-loops Part 2
- Reading: Part 2 slide deck
- Video: For-loops Part 3
- Reading: Part 3 slide deck
- Video: For-loops Code Walkthrough
- Reading: Code walkthrough slide deck
- Video: Indefinite loops
- Reading: Indefinite loop slide deck
- Practice Quiz: Module 4 practice quiz on indefinite loops
- Video: Random number generation
- Reading: Slide deck
- Peer Review: Drawing ASCII Art - Peer Review Portion
- Video: Module Summary
Graded: Module 4 quiz on FOR loops
Graded: Drawing ASCII Art - Auto Graded Portion
Module 5: Structured Data
Module 5 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.
10 videos, 9 readings expand
- Video: Structured Data
- Reading: Slide deck
- Video: Arrays: Part 1
- Reading: Part 1 slide deck
- Video: Arrays: Part 2
- Reading: Part 2 slide deck
- Video: Arrays: Part 3
- Reading: Part 3 slide deck
- Video: The for-each loop
- Reading: Slide deck
- Video: The Collections Framework: Part 1
- Reading: Part 1 slide deck
- Video: The Collections Framework: Part 2
- Reading: Part 2 slide deck
- Video: ArrayLists
- Reading: Slide deck
- Video: HashMaps
- Reading: Slide deck
- Video: Structured Data WrapUp
Graded: The Birthday Problem - Auto Graded
Graded: Module 5 Quiz
WEEK 3
Module 6: Classes and Interfaces
Module 6 covers Java classes and interfaces, focusing on data types, fields, methods, generic parameters, and exceptions.
7 videos, 7 readings expand
- Video: Java: Classes and Objects, an overview
- Video: Motivating Classes and Objects
- Reading: Slide deck
- Video: Building your own Classes and Objects
- Reading: Slide deck
- Reading: Example files: Account
- Video: Refining your Classes: Part 1
- Reading: Slide deck
- Video: Refining your Classes: Part 2
- Reading: Slide deck
- Video: New Objects in Old Places
- Reading: Slide deck
- Video: Overview of Java Generics
- Reading: Slide deck
- Peer Review: Gate.java
- Peer Review: HerdManager.java
- Peer Review: FillTheCorral.java
Graded: Module 6 quiz on Object Oriented Programing concepts
Graded: Module 6 quiz on methods and classes
Graded: Module 6 quiz on arrays and parameters
Graded: Building your own class pt 1 - Auto Graded
Graded: Building your own Classes pt 2 - Auto Graded
ModuIe 7: Inheritance and Polymorphism
Module 7 examines Java's inheritance and polymorphism features (e.g., extending classes and virtual methods).
7 videos, 7 readings expand
- Video: Class Hierarchy and Interfaces: Overview
- Video: Class Hierarchy and Interfaces
- Reading: Slide deck
- Video: Inheritance at Work
- Reading: Slide deck: Inheritance at Work
- Video: Polymorphism
- Reading: Slide deck: Polymorphism
- Video: Java Interfaces
- Reading: Slide deck: Java Interfaces
- Reading: Self-Assessment quiz code
- Video: Advanced Class Interface features
- Reading: Slide deck: Advanced Class Interface Features
- Video: Exception Handling
- Reading: Slide deck
- Peer Review: Inheritance and Polymorphism Assignment - Peer Review
Graded: Module 7 quiz on inheritance
Graded: Module 7 quiz on code "dissection"
Graded: Inheritance and Polymorphism Assignment - Auto Graded
WEEK 4
Module 8: Android Calculator App Mini-Project Assignment
Module 8 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).
2 videos expand
- Video: Overview of the Calculator App Mini-Project Assignment
- Video: Mini-Project Assignment Walkthrough
Graded: Peer Review: Mini-Project: Calculator App
Share your review
Do you have experience with this course? Submit your review and help other people make the right choice. As a thank you for your effort we will donate $1.- to Stichting Edukans.There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.