Android Development For Beginners

Thank you for signing up for the course! We look forward to working with you and hearing your feedback in our forums.


Need help getting started?


Contents


Course Resources

Additional Documentation

  1. The Android XML Visualizer
  2. Common Android Views Cheat-sheet
  3. Java Data Types Cheat-Sheet
  4. Layout Cheat-Sheet
  5. Vocabulary Words
  6. Android Developers Website
  7. The Material Design Specification

Downloadable Materials

You can download Supplemental Materials, Lesson Videos and Transcripts from Downloadables (bottom right corner of the Classroom) or from the Dashboard (first option on the navigation bar on the left hand side).

The final code for the course is freely available in three Github repositories. Github is a website that facilitates sharing code online. Code on Github is organized via the Git version control system. To learn more about Git and Github, consider taking our version control course.

  1. Code for Happy Birthday
  2. Code for Just Java
  3. Code for Court Counter

Course Syllabus

Lesson 1: Building Layouts

In this lesson you'll learn about various Views and ViewGroups used to make layouts for your Android apps. Topics include:

  • Writing XML
  • TextViews and ImageViews
  • Styling your views
  • Positioning your views with ViewGroups
  • LinearLayout weight
  • Using RelativeLayout to position views relative to each other

Following Lesson 1 is Practice Set 1, where you will:

  • Download Android Studio
  • Make a Hello World Application and run it on your phone
  • Create a Birthday Card Application
  • Create your own custom card and video for the Make Your Own Card showcase!

Happy Birthday App

Lesson 2: Making an App Interactive

In this lesson you'll start learning Java by creating the JustJava coffee ordering app seen below:

Just Java App

Topics include:

  • Making a button click execute code
  • Having the app evaluate math expressions
  • Declaring, initializing and using variables
  • Variable scope
  • Nested layouts
  • The String datatype
  • Combining Strings, ints and variables with concatenation

Following Lesson 2 is Practice Set 2, where you will:

  • Identify incorrect variable declarations and initializations
  • Determine program output
  • Determine whether variables should be local or global
  • Build the CourtCounter basketball scoring app seen below:

Court Counter App

Lesson 3: Work with the Android Framework and Control Flow

In this lesson you'll finish the JustJava coffee ordering app by adding more coffee ordering options and nuanced control flow. You'll learn about object oriented programming so that you can harness several features of the Android Framework. Topics include:

  • Method declaration and calling
  • Parameters and return values
  • An introduction to Object Oriented Programming
  • Changing the attributes of your views dynamically
  • Creating conditional logic using if/else statements

Following Lesson 3 is the course's final project 5 Things. For the final project you will create an educational app that teaches the user five things. During this project you will:

  • Plan out your app design prior to coding, based on user feedback and needs
  • Take an app layout from drawing to XML code
  • Create, position, and style views
  • Create interactivity through button clicks and Java code

Students enrolled in the class for pay can submit the final project for review. To learn more about the final project, click here.

Acknowledgements

Instructor: Katherine Kuan
Course Developers: Kunal Chawla, Lyla Fujiwara
Production Lead: Kagure Kabue

Director: Anthony Veneziale
Video Editors: Larry Madrigal, Ira Torrey, Kim Dryden, Geoff Norman
Project Managers: Jennie Kim Eldon, Jay Harman
QA and Student Support: Ophir Silverman, Brynn Claypoole, Jessica Lin, Jeremy Silver
Vocab Word Glossary: Mark Meretzky, Omoju Miller, Neto Marin
Case studies and Googlers' Montage: Liza Patnoe, Liz Cabrera, Gabe Pannell, Nilesh Bell-Gorsia, Isidoro Cosentino, Arthur Lee, Ray Tarara, Kyung Lee, Cara Barry, Michael Berwick, Anna Lena Isaksson
Interviewees: Kirill Grouchnikov, Alice Yang, Gene Gurkoff, Richard Price, Andrew Bastawrous, Jason Titus, Shailen Tuli, Angela Navarro, Elena Kon
Course Advisors: Natalie Villalobos, Peter Lubbers, Stuart Frye, Reto Meier, Jocelyn Becker, Laura Weitzel, Amy Sitaram, Sarah Clark
Beta Testers: Alex Kang, Shanea King-Roberson, Dylin Martin, Sarah Tsui, Elizabeth Padilla, Katherine Miller, Melissa Powel, Melissa Daniels

And a special thanks to Ben Jaffe, for building the truly awesome Android XML Visualizer just for this course!