39
@scruffyfox esson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1 Android Lesson 1 by Callum Taylor

Android Course - Lesson1

Embed Size (px)

DESCRIPTION

Lesson 1 of the Android Course by Callum Taylor Speaker notes here: https://github.com/scruffyfox/AndroidCourse/blob/Lesson-1/pdf/Lesson1-notes.pdf

Citation preview

Page 1: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

AndroidLesson 1 by Callum Taylor

Page 2: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Introduction

• All code and presentation slides can be found over at https://github.com/scruffyfox/AndroidCourse

• Twitter/app.net/github: @scruffyfox

• http://(blog.)callumtaylor.net

Page 3: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Introduction

https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Page 4: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Introduction – Who am I?

Page 5: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Introduction – Who am I?

Page 6: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Introduction – What is this?

Page 7: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Introduction – What is this?

• How to create an app from scratch

• The different technologies available + pros/cons

• The different aspects of an app ranging from text views to list views

Page 8: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Introduction – So, why make an app?

Page 9: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Introduction – So, why make an app?

Source: http://www.jana.com/assets/Mobile-web-vs-desktop-7-13.png

Page 10: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Introduction – Statistics

OVER 1 BILLION

Page 11: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Introduction – Statistics

Page 12: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Introduction – Our apps

Page 13: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Introduction – Our apps

(shameless plug)

Page 14: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Introduction – Ways to develop• Web technologies

Page 15: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Introduction – Ways to develop• Why HTML/JS is BAAAAAAAAAAAD

Page 16: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Introduction – Ways to develop• It’s slow

• It’s expensive

• It doesn’t give a ‘native’ feel

• It’s slow

Page 17: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Introduction – Ways to develop• Native

Page 18: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Oracle – Boo

Page 19: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Introduction – Ways to develop• Native

Page 20: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

OOP – What is OOP?

• Stands for Object orientated programming language

• Often uses an “MVC” Style framework

Page 21: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

OOP – What is OOP?

Page 22: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

OOP – What is OOP?

Page 23: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

OOP – What is OOP?

Page 24: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

OOP – What is OOP?

Page 25: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

OOP – What is OOP?

Page 26: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

OOP – Extending

Page 27: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

OOP – Extending

Page 28: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

OOP – Methods

Page 29: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Android – Fundamentals

Source files

Drawables Layouts

Resources

Resources

Page 30: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Android – Fundamentals

Page 31: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Android – Fundamentals – IDE

Page 32: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Android – Fundamentals

• An Android app is made up of Contexts, mainly Activities and Fragments, and layouts.

• Layouts are made up of Views

Page 33: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Android – Fundamentals

• What is an activity?

A source file with a context which is responsible for displaying and interacting with the UI and UX of an app

Page 34: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Android – Fundamentals

Page 35: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Android – Fundamentals

• What is a View?

Something that is visible to the user and/or displayed on the screen which serves a specific purpose

View • TextView • ImageView • Button • EditText • ListView • GridView • CheckBox • RadioButton • Spinner • VideoView • WebView • ProgressBar • ImageButton • SeekBar

Page 36: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Android – Fundamentals

Page 37: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Android – Fundamentals

• What is a Layout?

An extension of View which can contain one or more child views and arrange them in a specific layout

ViewGroup • FrameLayout • RelativeLayout • LinearLayout • AbsoluteLayout • ScrollView (It should be ScrollLayout…)

Page 38: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Android – Fundamentals

Page 39: Android Course - Lesson1

@scruffyfoxLesson 1 – https://github.com/scruffyfox/AndroidCourse/tree/Lesson-1

Android – Demo