Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Android University - Introduction

Caren
December 19, 2018
22

Android University - Introduction

Caren

December 19, 2018
Tweet

Transcript

  1. Why Mobile? Just about everybody owns a smartphone! Smartphones are

    often the number one way people access software today
  2. Why Android? Android is the most popular operating system worldwide

    Android is everywhere: phones, cars, wearables, kitchen gadgets
  3. Why Android? Android is the most popular operating system worldwide

    Android is everywhere: phones, cars, wearables, kitchen gadgets Employment opportunities: every company 
 has/needs an app
  4. Why Android? Android is the most popular operating system worldwide

    Android is everywhere: phones, cars, wearables, kitchen gadgets Employment opportunities: every company 
 has/needs an app
  5. Course Structure Projects
 - 3 projects, first 6 weeks (each

    two parts)
 - worked on during one class meeting, and should 
 be finished at home thereafter Labs
 - supplements projects 
 - worked on during class, submission optional
 
 Group Milestones
  6. Course Structure Projects
 - 3 projects, first 6 weeks (each

    two parts)
 - worked on during one class meeting, and should 
 be finished at home thereafter Labs
 - supplements projects 
 - worked on during class, submission optional
 
 Group Milestones
  7. Course Structure Projects
 - 3 projects, first 6 weeks (each

    two parts)
 - worked on during one class meeting, and should 
 be finished at home thereafter Labs
 - supplements projects 
 - worked on during class, submission optional
 
 Group Milestones
  8. Android Development When you think about the apps on your

    phone, they’re actually all quite similar!
  9. Android Development When you think about the apps on your

    phone, they’re actually all quite similar! The goal is to learn how to build the critical parts of any app
  10. Android Development When you think about the apps on your

    phone, they’re actually all quite similar! The goal is to learn how to build the critical parts of any app Each of the three projects we work on will focus on mastering how to build those critical parts
  11. Android Development When you think about the apps on your

    phone, they’re actually all quite similar! The goal is to learn how to build the critical parts of any app Each of the three projects we work on will focus on mastering how to build those critical parts Flix (feed screen, calling APIs), Twitter (authentication, sending data), Instagram (building custom backend!)
  12. Syllabus 6 weeks of learning Android development through building android

    apps 6-10 weeks of learning and practicing the software engineering development process
  13. Development Process coming up with product ideas documenting feature requirements

    making wireframe drawings scoping project and scheduling work
  14. Development Process coming up with product ideas documenting feature requirements

    making wireframe drawings scoping project and scheduling work collaborating to develop and ship a final product
  15. Syllabus 6 weeks of learning Android development through building android

    apps 6-10 weeks of learning and practicing the software engineering development process In the last week, we will finish things off with a demo day featuring all the apps!
  16. Course Expectations Meet twice a week
 - working on assignment


    - working on labs
 - meeting with group members
  17. Course Expectations Meet twice a week
 - working on assignment


    - working on labs
 - meeting with group members Each week has one ‘deliverable’ that is required to be submitted
 - assignment project
 - group milestones
  18. Course Portal Overview: General summary for the week, videos introducing

    new topics Assignment: Details all the required and optional tasks, video walkthroughs of required features Lab: Guide for more Android development exploration for the week Hints: List of notes to help you save time while working through assignment (how to solve common bugs, etc) Reading: Extra reading material on topics covered during the week
  19. Course Portal Overview: General summary for the week, videos introducing

    new topics Assignment: Details all the required and optional tasks, video walkthroughs of required features Lab: Guide for more Android development exploration for the week Hints: List of notes to help you save time while working through assignment (how to solve common bugs, etc) Reading: Extra reading material on topics covered during the week
  20. Course Portal Overview: General summary for the week, videos introducing

    new topics Assignment: Details all the required and optional tasks, video walkthroughs of required features Lab: Guide for more Android development exploration for the week Hints: List of notes to help you save time while working through assignment (how to solve common bugs, etc) Reading: Extra reading material on topics covered during the week
  21. Course Portal Overview: General summary for the week, videos introducing

    new topics Assignment: Details all the required and optional tasks, video walkthroughs of required features Lab: Guide for more Android development exploration for the week Hints: List of notes to help you save time while working through assignment (how to solve common bugs, etc) Reading: Extra reading material on topics covered during the week
  22. Course Portal Overview: General summary for the week, videos introducing

    new topics Assignment: Details all the required and optional tasks, video walkthroughs of required features Lab: Guide for more Android development exploration for the week Hints: List of notes to help you save time while working through assignment (how to solve common bugs, etc) Reading: Extra reading material on topics covered during the week
  23. Keys to Success 1) Learn how to debug code 2)

    Understand the code you write 3) Ask for help 4) Be familiar with Android Studio
  24. Keys to Success 1) Learn how to debug code 2)

    Understand the code you write 3) Ask for help 4) Be familiar with Android Studio
  25. Debugging Code If you don’t know how to start debugging

    your own code, it’s always going to be an uphill battle
  26. Debugging Code If you don’t know how to start debugging

    your own code, it’s always going to be an uphill battle Android Studio is your friend, don’t ignore the messages it gives you
 Did your app successfully build?
 What are the messages that prints out when your app crashes?
  27. Debugging Code If you don’t know how to start debugging

    your own code, it’s always going to be an uphill battle Android Studio is your friend, don’t ignore the messages it gives you
 Did your app successfully build?
 What are the messages that prints out when your app crashes? At what point does your code ‘stop’ working as expected? 
 Log messages will do wonders

  28. Keys to Success 1) Learn how to debug code 2)

    Understand the code you write 3) Ask for help 4) Be familiar with Android Studio
  29. Understand the Code You Write Avoid blindly copy and pasting

    code that works Take the extra time to understand the purpose of each block
  30. Understand the Code You Write Avoid blindly copy and pasting

    code that works Take the extra time to understand the purpose of each block Write comments in your code to so you can
 1) gain a better understanding of what the code is 
 trying to accomplish
 2) understand what your past-self was trying to do
  31. Keys to Success 1) Learn how to debug code 2)

    Understand the code you write 3) Ask for help 4) Be familiar with Android Studio
  32. Asking for help The key to accelerate learning is by

    leveraging support It’s not worth being stuck for more than an hour: ask your classmates or post for help
  33. Asking for help The key to accelerate learning is by

    leveraging support It’s not worth being stuck for more than an hour: ask your classmates or post for help Help people help you: Don’t say ‘My app doesn’t work’

  34. Asking for help The key to accelerate learning is by

    leveraging support It’s not worth being stuck for more than an hour: ask your classmates or post for help Help people help you: Don’t say ‘My app doesn’t work’
 - specific explanation of what you are trying to do and what happened instead

  35. Asking for help The key to accelerate learning is by

    leveraging support It’s not worth being stuck for more than an hour: ask your classmates or post for help Help people help you: Don’t say ‘My app doesn’t work’
 - specific explanation of what you are trying to do and what happened instead
 - include stack trace if there’s a crash and screenshots of the relevant code

  36. Asking for help The key to accelerate learning is by

    leveraging support It’s not worth being stuck for more than an hour: ask your classmates or post for help Help people help you: Don’t say ‘My app doesn’t work’
 - specific explanation of what you are trying to do and what happened instead
 - include stack trace if there’s a crash and screenshots of the relevant code
 - knowing how and when to ask for help is a vital skill not just in school, but also in the workplace
  37. Keys to Success 1) Learn how to debug code 2)

    Understand the code you write 2) Ask for help 3) Be familiar with Android Studio
  38. Android Studio Don’t be afraid to utilize autocomplete! Sometime the

    problem is as simple as: 
 - restarting the emulator
 - doing a ‘Build -> Clean Project’
 - ‘File -> Invalidate Caches and Restart’