Android Course - Lesson1

Preview:

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

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

AndroidLesson 1 by Callum Taylor

@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

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

Introduction

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

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

Introduction – Who am I?

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

Introduction – Who am I?

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

Introduction – What is this?

@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

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

Introduction – So, why make an app?

@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

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

Introduction – Statistics

OVER 1 BILLION

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

Introduction – Statistics

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

Introduction – Our apps

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

Introduction – Our apps

(shameless plug)

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

Introduction – Ways to develop• Web technologies

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

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

@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

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

Introduction – Ways to develop• Native

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

Oracle – Boo

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

Introduction – Ways to develop• Native

@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

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

OOP – What is OOP?

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

OOP – What is OOP?

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

OOP – What is OOP?

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

OOP – What is OOP?

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

OOP – What is OOP?

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

OOP – Extending

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

OOP – Extending

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

OOP – Methods

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

Android – Fundamentals

Source files

Drawables Layouts

Resources

Resources

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

Android – Fundamentals

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

Android – Fundamentals – IDE

@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

@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

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

Android – Fundamentals

@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

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

Android – Fundamentals

@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…)

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

Android – Fundamentals

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

Android – Demo