SlideShare a Scribd company logo
1 of 36
Download to read offline
Arif Akbarul Huda
● Android Developer di qiscus
● Penulis buku “Livecoding! 9 Aplikasi Android
Buatan Sendiri”
● omayib@gmail.com (email) | @omayib
(Twitter)
“jika pelukis memilki kanvas untuk mencurahkan imajinasinya,
Maka programmer punya RAM yang bisa di manipulasi sesuai
imajinasi”
Good reference
● javatpoint.com/java-oops-
concepts
● oodesign.com
● c4learn.com
● Livecoding! 9 Aplikasi
Android Buatan Sendiri
Kinds of Software engineer
Ref : http://blog.backand.com/frontend-backend-dev/
Front end vs backend
Build amazing app that
customer love to use
philosophy Build sterling
architechture and
working infrastructure
“dude, it is all about UX
and has to look good
Quoted saying If this approach doesnt
work, lets try another
Angular,CSS,HTML5,
Javascripte,Jquery,Bootst
rapp, ionic
Favorite touls PHP, C#, Ruby, py,
MySQL,
Node.js, MongoDB
Creative,
imaginative,innovative,
driven, emphaty,Curiosity,
Personability
Strength Logical, analitical,flexible,
organized,detail-oriented,
handle complexity
Kinds of Software engineer
Mobile developer?
World-wide Mobile Smartphone Sales
http://www.forbes.com/sites/louiscolumbus/2013/01/17/2013-roundup-of-mobility-forecasts-and-market-estimates/
Mobile developer distribution
Mobile tech
Good Application should...
● Scalable
● Maintenable
● Reliable (no error)
● Good UI & UX
What is java?
1)Java is a high level, robust, secured and object-
oriented programming language.
2)Platform: Any hardware or software environment
in which a program runs, is known as a platform.
Since Java has its own runtime environment (JRE)
and API, it is called platform.
Where is java used?
● Desktop Applications such as acrobat reader, media player,
antivirus etc.
●
Web Applications such as irctc.co.in, javatpoint.com etc.
● Enterprise Applications such as banking applications.
●
Mobile
● Embedded System
●
Smart Card
●
Robotics
●
Games etc.
Types of Java Applications
1) Standalone Application
It is also known as desktop application or window-based application. An
application that we need to install on every machine such as media player,
antivirus etc. AWT and Swing are used in java for creating standalone
applications.
2) Web Application
An application that runs on the server side and creates dynamic page, is called
web application. Currently, servlet, jsp, struts, jsf etc. technologies are used for
creating web applications in java.
3) Enterprise Application
An application that is distributed in nature, such as banking applications etc. It
has the advantage of high level security, load balancing and clustering. In java,
EJB is used for creating enterprise applications.
4) Mobile Application
An application that is created for mobile devices. Currently Android and Java ME
are used for creating mobile applications.
Java Environment
● JDK
● JRE
● JVM
● Dalvik VM (for android)
Java Environment
JVM (Java Virtual Machine) is an
abstract machine. It is a specification
that provides runtime environment in
which java bytecode can be executed.
JVMs are available for many
hardware and software platforms.
The JVM performs following main
tasks:
● Loads code
● Verifies code
● Executes code
● Provides runtime environment
Java Environment
JRE is an acronym for Java
Runtime Environment.It is used to
provide runtime environment.It is
the implementation of JVM.It
physically exists.It contains set of
libraries + other files that JVM uses
at runtime.
Implementation of JVMs are also
actively released by other
companies besides Sun Micro
Systems.
Java Environment
JDK
JDK is an acronym for Java
Development Kit.It physically exists.It
contains JRE + development tools
Java-some things that must be understood
● Object Oriented Programming Concept
● (software) design pattern
● (software architecture)
Java-OOP
● Object
● Class
● Inheritance
● Polymorphism
● Abstraction
● Encapsulation
Ref: http://www.javatpoint.com/java-oops-concepts
Java-OOP-Object
An object has three characteristics:
state: represents data (value) of an object.
behavior: represents the behavior (functionality) of an object such as deposit, withdraw etc.
identity: Object identity is typically implemented via a unique ID. The value of the ID is not
visible to the external user. But,it is used internally by the JVM to identify each object
uniquely.
.
Object is an instance of a class. Class is a template or blueprint from which objects are
created. So object is the instance(result) of a class
Object : Pencil
State
- name : Stadler
- color : white
- thicknes : 2B
Behavior : drawing
Java-OOP-Class
A class is a group of objects that has common properties.
It is a template or blueprint from which objects are
created. A class in java can contain:
● data member
● method
● constructor
● block
● class and interface
Contoh Object dan Class
class Student1{
int id;//data member (also instance variable)
String name;//data member(also instance variable)
public static void main(String args[]){
Student1 s1=new Student1();//creating an object of Student
System.out.println(s1.id);
System.out.println(s1.name);
}
}
Contoh Object dan Class
class Rectangle{
int length;
int width;
void insert(int l,int w){
length=l;
width=w;
}
void calculateArea()
{System.out.println(length*width);}
public static void main(String args[]){
Rectangle r1=new Rectangle();
Rectangle r2=new Rectangle();
r1.insert(11,5);
r2.insert(3,15);
r1.calculateArea();
r2.calculateArea();
}
}
Java-OOP-Inheritance
When one object acquires all the properties and behaviours of parent object i.e. known as inheritance. It provides
code reusability. It is used to achieve runtime polymorphism.
Java-OOP-Polymorphism
When one task is performed by different ways i.e. known as polymorphism. For example: to convense the customer
differently, to draw something e.g. shape or rectangle etc.
Another example can be to speak something e.g. cat speaks meaw, dog barks woof etc.
Java-OOP-Abstraction
Hiding internal details and showing functionality is known as
abstraction. For example: phone call, we don't know the internal
processing.
Java-OOP-Encapsulation
Binding (or wrapping) code and data together into a single unit is
known as encapsulation.
For example: capsule, it is wrapped with different medicines.
Android Application Component
Activity
User interface yang bisa berinteraksi dengan user
Android Application Component
Views
 Button
 Textview
 EditText
Android Application Component
Intent
Explicite : asking someone to do something
Implicit : Asking the system who can do something
Contoh :
oPindah halaman/activity
oPanggil contact
oPanggil Gallery
oCall
Android Application Component
broadcastreceiver
Contoh :
oBatteray low
oPower off
oBoot completed
oPhone state
Listen to event
Android Application Component
 Push notification
 Widget on home screen
 Live walpaper
 Animation & styling
 Multitouch
 Canvas/openGL
Android has Rich of Capabilites
Supporting different device
 Sharedpreference
 File
 SQLite database
Saving data

More Related Content

What's hot

What's hot (20)

Introduction To Java.
Introduction To Java.Introduction To Java.
Introduction To Java.
 
Constructors in java
Constructors in javaConstructors in java
Constructors in java
 
Learning typescript
Learning typescriptLearning typescript
Learning typescript
 
Introducing TypeScript
Introducing TypeScriptIntroducing TypeScript
Introducing TypeScript
 
Core Java Tutorial
Core Java TutorialCore Java Tutorial
Core Java Tutorial
 
A seminar report on core java
A  seminar report on core javaA  seminar report on core java
A seminar report on core java
 
Introduction to basics of java
Introduction to basics of javaIntroduction to basics of java
Introduction to basics of java
 
1 java programming- introduction
1  java programming- introduction1  java programming- introduction
1 java programming- introduction
 
JDD 2017: Kotlin for Java developers (Tomasz Kleszczyński)
JDD 2017: Kotlin for Java developers (Tomasz Kleszczyński)JDD 2017: Kotlin for Java developers (Tomasz Kleszczyński)
JDD 2017: Kotlin for Java developers (Tomasz Kleszczyński)
 
Gof design patterns
Gof design patternsGof design patterns
Gof design patterns
 
Learn Java with Dr. Rifat Shahriyar
Learn Java with Dr. Rifat ShahriyarLearn Java with Dr. Rifat Shahriyar
Learn Java with Dr. Rifat Shahriyar
 
Introducing type script
Introducing type scriptIntroducing type script
Introducing type script
 
Java script ppt
Java script pptJava script ppt
Java script ppt
 
Introduction to java
Introduction to javaIntroduction to java
Introduction to java
 
Dart the Better JavaScript
Dart the Better JavaScriptDart the Better JavaScript
Dart the Better JavaScript
 
Spring presentation
Spring presentationSpring presentation
Spring presentation
 
Java Programming for Designers
Java Programming for DesignersJava Programming for Designers
Java Programming for Designers
 
Java & advanced java
Java & advanced javaJava & advanced java
Java & advanced java
 
Dart presentation
Dart presentationDart presentation
Dart presentation
 
OO Design and Design Patterns in C++
OO Design and Design Patterns in C++ OO Design and Design Patterns in C++
OO Design and Design Patterns in C++
 

Viewers also liked

CAANF Meeting 2 Presentation 21 06-2011
CAANF Meeting 2 Presentation 21 06-2011CAANF Meeting 2 Presentation 21 06-2011
CAANF Meeting 2 Presentation 21 06-2011Colledges
 
CAANF Conference Presentation 21-02-2011
CAANF Conference Presentation 21-02-2011CAANF Conference Presentation 21-02-2011
CAANF Conference Presentation 21-02-2011Colledges
 
28 July 2009 Automotive Accountants' Forum
28 July 2009 Automotive Accountants' Forum28 July 2009 Automotive Accountants' Forum
28 July 2009 Automotive Accountants' ForumColledges
 
Automotive Accountants' Forum Presentation: 22 June 2010
Automotive Accountants' Forum Presentation: 22 June 2010Automotive Accountants' Forum Presentation: 22 June 2010
Automotive Accountants' Forum Presentation: 22 June 2010Colledges
 
May 2009 Automotive Accountants' Forum
May 2009 Automotive Accountants' ForumMay 2009 Automotive Accountants' Forum
May 2009 Automotive Accountants' ForumColledges
 
Auteur Presentation
Auteur PresentationAuteur Presentation
Auteur Presentationoliviabere
 
Automotive Accountants' Network Forum, 20 April 2010
Automotive Accountants' Network Forum, 20 April 2010Automotive Accountants' Network Forum, 20 April 2010
Automotive Accountants' Network Forum, 20 April 2010Colledges
 
Listview and Adapter
Listview and AdapterListview and Adapter
Listview and AdapterArif Huda
 
Android Livecoding Series
Android Livecoding SeriesAndroid Livecoding Series
Android Livecoding SeriesArif Huda
 
Android (software) Design Pattern
Android (software) Design PatternAndroid (software) Design Pattern
Android (software) Design PatternArif Huda
 
Seminar nasional internet of things 2016
Seminar nasional internet of things 2016Seminar nasional internet of things 2016
Seminar nasional internet of things 2016Arif Huda
 
Pemanfaatan Teknologi Android
Pemanfaatan Teknologi AndroidPemanfaatan Teknologi Android
Pemanfaatan Teknologi AndroidArif Huda
 
Persitance Data with sqlite
Persitance Data with sqlitePersitance Data with sqlite
Persitance Data with sqliteArif Huda
 
Logika dan Algoritma pemrograman
Logika dan Algoritma pemrogramanLogika dan Algoritma pemrograman
Logika dan Algoritma pemrogramanArif Huda
 
Beacon bluetooth low energy
Beacon bluetooth low energyBeacon bluetooth low energy
Beacon bluetooth low energyArif Huda
 

Viewers also liked (19)

CAANF Meeting 2 Presentation 21 06-2011
CAANF Meeting 2 Presentation 21 06-2011CAANF Meeting 2 Presentation 21 06-2011
CAANF Meeting 2 Presentation 21 06-2011
 
CAANF Conference Presentation 21-02-2011
CAANF Conference Presentation 21-02-2011CAANF Conference Presentation 21-02-2011
CAANF Conference Presentation 21-02-2011
 
Vintage 2.0
Vintage 2.0Vintage 2.0
Vintage 2.0
 
28 July 2009 Automotive Accountants' Forum
28 July 2009 Automotive Accountants' Forum28 July 2009 Automotive Accountants' Forum
28 July 2009 Automotive Accountants' Forum
 
Automotive Accountants' Forum Presentation: 22 June 2010
Automotive Accountants' Forum Presentation: 22 June 2010Automotive Accountants' Forum Presentation: 22 June 2010
Automotive Accountants' Forum Presentation: 22 June 2010
 
May 2009 Automotive Accountants' Forum
May 2009 Automotive Accountants' ForumMay 2009 Automotive Accountants' Forum
May 2009 Automotive Accountants' Forum
 
Auteur Presentation
Auteur PresentationAuteur Presentation
Auteur Presentation
 
Bill Moore Slide Show
Bill Moore Slide ShowBill Moore Slide Show
Bill Moore Slide Show
 
Automotive Accountants' Network Forum, 20 April 2010
Automotive Accountants' Network Forum, 20 April 2010Automotive Accountants' Network Forum, 20 April 2010
Automotive Accountants' Network Forum, 20 April 2010
 
Listview and Adapter
Listview and AdapterListview and Adapter
Listview and Adapter
 
Climographs L2 Geo
Climographs L2 GeoClimographs L2 Geo
Climographs L2 Geo
 
Android Livecoding Series
Android Livecoding SeriesAndroid Livecoding Series
Android Livecoding Series
 
Android (software) Design Pattern
Android (software) Design PatternAndroid (software) Design Pattern
Android (software) Design Pattern
 
Seminar nasional internet of things 2016
Seminar nasional internet of things 2016Seminar nasional internet of things 2016
Seminar nasional internet of things 2016
 
Pemanfaatan Teknologi Android
Pemanfaatan Teknologi AndroidPemanfaatan Teknologi Android
Pemanfaatan Teknologi Android
 
Persitance Data with sqlite
Persitance Data with sqlitePersitance Data with sqlite
Persitance Data with sqlite
 
Logika dan Algoritma pemrograman
Logika dan Algoritma pemrogramanLogika dan Algoritma pemrograman
Logika dan Algoritma pemrograman
 
Beacon bluetooth low energy
Beacon bluetooth low energyBeacon bluetooth low energy
Beacon bluetooth low energy
 
Nitrogen
NitrogenNitrogen
Nitrogen
 

Similar to Introducing Android Programming

JavaClassPresentation
JavaClassPresentationJavaClassPresentation
JavaClassPresentationjuliasceasor
 
Elements of Java Language
Elements of Java Language Elements of Java Language
Elements of Java Language Hitesh-Java
 
Unit1 introduction to Java
Unit1 introduction to JavaUnit1 introduction to Java
Unit1 introduction to JavaDevaKumari Vijay
 
Session 02 - Elements of Java Language
Session 02 - Elements of Java LanguageSession 02 - Elements of Java Language
Session 02 - Elements of Java LanguagePawanMM
 
Object oriented programming-with_java
Object oriented programming-with_javaObject oriented programming-with_java
Object oriented programming-with_javaHarry Potter
 
Object oriented programming
Object oriented programmingObject oriented programming
Object oriented programmingJames Wong
 
Object oriented programming
Object oriented programmingObject oriented programming
Object oriented programmingLuis Goldster
 
Object oriented programming-with_java
Object oriented programming-with_javaObject oriented programming-with_java
Object oriented programming-with_javaHoang Nguyen
 
Object oriented programming-with_java
Object oriented programming-with_javaObject oriented programming-with_java
Object oriented programming-with_javaTony Nguyen
 
Object oriented programming
Object oriented programmingObject oriented programming
Object oriented programmingYoung Alista
 
Object oriented programming
Object oriented programmingObject oriented programming
Object oriented programmingFraboni Ec
 
Bledar Gjocaj - Java open source
Bledar Gjocaj - Java open sourceBledar Gjocaj - Java open source
Bledar Gjocaj - Java open sourceOpen Labs Albania
 
Setting Up Java Environment | PDF
Setting Up Java Environment | PDFSetting Up Java Environment | PDF
Setting Up Java Environment | PDFGeekster
 
What is java
What is javaWhat is java
What is javajavaicon
 
Android development orientation for starters v2
Android development orientation for starters v2Android development orientation for starters v2
Android development orientation for starters v2Joemarie Amparo
 
Java fundamentals
Java fundamentalsJava fundamentals
Java fundamentalsOm Ganesh
 
Android development orientation for starters v4 seminar
Android development orientation for starters v4   seminarAndroid development orientation for starters v4   seminar
Android development orientation for starters v4 seminarJoemarie Amparo
 

Similar to Introducing Android Programming (20)

JavaClassPresentation
JavaClassPresentationJavaClassPresentation
JavaClassPresentation
 
Elements of Java Language
Elements of Java Language Elements of Java Language
Elements of Java Language
 
Unit1 introduction to Java
Unit1 introduction to JavaUnit1 introduction to Java
Unit1 introduction to Java
 
java slides
java slidesjava slides
java slides
 
Session 02 - Elements of Java Language
Session 02 - Elements of Java LanguageSession 02 - Elements of Java Language
Session 02 - Elements of Java Language
 
unit1.pptx
unit1.pptxunit1.pptx
unit1.pptx
 
Object oriented programming-with_java
Object oriented programming-with_javaObject oriented programming-with_java
Object oriented programming-with_java
 
Object oriented programming
Object oriented programmingObject oriented programming
Object oriented programming
 
Object oriented programming
Object oriented programmingObject oriented programming
Object oriented programming
 
Object oriented programming-with_java
Object oriented programming-with_javaObject oriented programming-with_java
Object oriented programming-with_java
 
Object oriented programming-with_java
Object oriented programming-with_javaObject oriented programming-with_java
Object oriented programming-with_java
 
Object oriented programming
Object oriented programmingObject oriented programming
Object oriented programming
 
Object oriented programming
Object oriented programmingObject oriented programming
Object oriented programming
 
Bledar Gjocaj - Java open source
Bledar Gjocaj - Java open sourceBledar Gjocaj - Java open source
Bledar Gjocaj - Java open source
 
Setting Up Java Environment | PDF
Setting Up Java Environment | PDFSetting Up Java Environment | PDF
Setting Up Java Environment | PDF
 
Android Dev Study Jam.pptx
Android Dev Study Jam.pptxAndroid Dev Study Jam.pptx
Android Dev Study Jam.pptx
 
What is java
What is javaWhat is java
What is java
 
Android development orientation for starters v2
Android development orientation for starters v2Android development orientation for starters v2
Android development orientation for starters v2
 
Java fundamentals
Java fundamentalsJava fundamentals
Java fundamentals
 
Android development orientation for starters v4 seminar
Android development orientation for starters v4   seminarAndroid development orientation for starters v4   seminar
Android development orientation for starters v4 seminar
 

More from Arif Huda

Spotify Recommender System
Spotify Recommender SystemSpotify Recommender System
Spotify Recommender SystemArif Huda
 
Startup Tanpa Mentor, Bisa?
Startup Tanpa Mentor, Bisa?Startup Tanpa Mentor, Bisa?
Startup Tanpa Mentor, Bisa?Arif Huda
 
Introducing Startup 101
Introducing Startup 101Introducing Startup 101
Introducing Startup 101Arif Huda
 
Solusi Mencegah Coding Ruwet
Solusi Mencegah Coding RuwetSolusi Mencegah Coding Ruwet
Solusi Mencegah Coding RuwetArif Huda
 
Bedah Teknologi Semacam Gojek
Bedah Teknologi Semacam GojekBedah Teknologi Semacam Gojek
Bedah Teknologi Semacam GojekArif Huda
 
Rahasia Mendapatkan Investasi Milyaran Rupiah Sebelum Usia 30 Tahun
Rahasia Mendapatkan Investasi Milyaran Rupiah Sebelum Usia 30 TahunRahasia Mendapatkan Investasi Milyaran Rupiah Sebelum Usia 30 Tahun
Rahasia Mendapatkan Investasi Milyaran Rupiah Sebelum Usia 30 TahunArif Huda
 
Membuat Media Edukasi Daring
Membuat Media Edukasi DaringMembuat Media Edukasi Daring
Membuat Media Edukasi DaringArif Huda
 
Single responsibility pattern
Single responsibility patternSingle responsibility pattern
Single responsibility patternArif Huda
 
5 jalan rahasia mewujudkan ide startup
5 jalan rahasia mewujudkan ide startup5 jalan rahasia mewujudkan ide startup
5 jalan rahasia mewujudkan ide startupArif Huda
 
programmersworld
programmersworldprogrammersworld
programmersworldArif Huda
 
5 Langkah Jitu Melejitkan Ide Bisnis Startup
5 Langkah Jitu Melejitkan Ide Bisnis Startup5 Langkah Jitu Melejitkan Ide Bisnis Startup
5 Langkah Jitu Melejitkan Ide Bisnis StartupArif Huda
 
getting started startup in millenial era
getting started startup in millenial eragetting started startup in millenial era
getting started startup in millenial eraArif Huda
 
Fingertip Detection
Fingertip DetectionFingertip Detection
Fingertip DetectionArif Huda
 
Protocol oriented programming
Protocol oriented programmingProtocol oriented programming
Protocol oriented programmingArif Huda
 
an implementation of repository pattern for mobile application
an implementation of repository pattern for mobile applicationan implementation of repository pattern for mobile application
an implementation of repository pattern for mobile applicationArif Huda
 
Inovasi Teknologi Berkemajuan
Inovasi Teknologi BerkemajuanInovasi Teknologi Berkemajuan
Inovasi Teknologi BerkemajuanArif Huda
 
Git workflow
Git workflowGit workflow
Git workflowArif Huda
 
Media pembelajaran audio untuk tunanetra
Media pembelajaran audio untuk tunanetraMedia pembelajaran audio untuk tunanetra
Media pembelajaran audio untuk tunanetraArif Huda
 
Tobe a superstar programmer
Tobe a superstar programmerTobe a superstar programmer
Tobe a superstar programmerArif Huda
 
clean code for high quality software
clean code for high quality softwareclean code for high quality software
clean code for high quality softwareArif Huda
 

More from Arif Huda (20)

Spotify Recommender System
Spotify Recommender SystemSpotify Recommender System
Spotify Recommender System
 
Startup Tanpa Mentor, Bisa?
Startup Tanpa Mentor, Bisa?Startup Tanpa Mentor, Bisa?
Startup Tanpa Mentor, Bisa?
 
Introducing Startup 101
Introducing Startup 101Introducing Startup 101
Introducing Startup 101
 
Solusi Mencegah Coding Ruwet
Solusi Mencegah Coding RuwetSolusi Mencegah Coding Ruwet
Solusi Mencegah Coding Ruwet
 
Bedah Teknologi Semacam Gojek
Bedah Teknologi Semacam GojekBedah Teknologi Semacam Gojek
Bedah Teknologi Semacam Gojek
 
Rahasia Mendapatkan Investasi Milyaran Rupiah Sebelum Usia 30 Tahun
Rahasia Mendapatkan Investasi Milyaran Rupiah Sebelum Usia 30 TahunRahasia Mendapatkan Investasi Milyaran Rupiah Sebelum Usia 30 Tahun
Rahasia Mendapatkan Investasi Milyaran Rupiah Sebelum Usia 30 Tahun
 
Membuat Media Edukasi Daring
Membuat Media Edukasi DaringMembuat Media Edukasi Daring
Membuat Media Edukasi Daring
 
Single responsibility pattern
Single responsibility patternSingle responsibility pattern
Single responsibility pattern
 
5 jalan rahasia mewujudkan ide startup
5 jalan rahasia mewujudkan ide startup5 jalan rahasia mewujudkan ide startup
5 jalan rahasia mewujudkan ide startup
 
programmersworld
programmersworldprogrammersworld
programmersworld
 
5 Langkah Jitu Melejitkan Ide Bisnis Startup
5 Langkah Jitu Melejitkan Ide Bisnis Startup5 Langkah Jitu Melejitkan Ide Bisnis Startup
5 Langkah Jitu Melejitkan Ide Bisnis Startup
 
getting started startup in millenial era
getting started startup in millenial eragetting started startup in millenial era
getting started startup in millenial era
 
Fingertip Detection
Fingertip DetectionFingertip Detection
Fingertip Detection
 
Protocol oriented programming
Protocol oriented programmingProtocol oriented programming
Protocol oriented programming
 
an implementation of repository pattern for mobile application
an implementation of repository pattern for mobile applicationan implementation of repository pattern for mobile application
an implementation of repository pattern for mobile application
 
Inovasi Teknologi Berkemajuan
Inovasi Teknologi BerkemajuanInovasi Teknologi Berkemajuan
Inovasi Teknologi Berkemajuan
 
Git workflow
Git workflowGit workflow
Git workflow
 
Media pembelajaran audio untuk tunanetra
Media pembelajaran audio untuk tunanetraMedia pembelajaran audio untuk tunanetra
Media pembelajaran audio untuk tunanetra
 
Tobe a superstar programmer
Tobe a superstar programmerTobe a superstar programmer
Tobe a superstar programmer
 
clean code for high quality software
clean code for high quality softwareclean code for high quality software
clean code for high quality software
 

Recently uploaded

W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceanilsa9823
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 

Recently uploaded (20)

W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 

Introducing Android Programming

  • 1. Arif Akbarul Huda ● Android Developer di qiscus ● Penulis buku “Livecoding! 9 Aplikasi Android Buatan Sendiri” ● omayib@gmail.com (email) | @omayib (Twitter) “jika pelukis memilki kanvas untuk mencurahkan imajinasinya, Maka programmer punya RAM yang bisa di manipulasi sesuai imajinasi”
  • 2. Good reference ● javatpoint.com/java-oops- concepts ● oodesign.com ● c4learn.com ● Livecoding! 9 Aplikasi Android Buatan Sendiri
  • 3. Kinds of Software engineer Ref : http://blog.backand.com/frontend-backend-dev/
  • 4. Front end vs backend Build amazing app that customer love to use philosophy Build sterling architechture and working infrastructure “dude, it is all about UX and has to look good Quoted saying If this approach doesnt work, lets try another Angular,CSS,HTML5, Javascripte,Jquery,Bootst rapp, ionic Favorite touls PHP, C#, Ruby, py, MySQL, Node.js, MongoDB Creative, imaginative,innovative, driven, emphaty,Curiosity, Personability Strength Logical, analitical,flexible, organized,detail-oriented, handle complexity Kinds of Software engineer
  • 6. World-wide Mobile Smartphone Sales http://www.forbes.com/sites/louiscolumbus/2013/01/17/2013-roundup-of-mobility-forecasts-and-market-estimates/
  • 9. Good Application should... ● Scalable ● Maintenable ● Reliable (no error) ● Good UI & UX
  • 10. What is java? 1)Java is a high level, robust, secured and object- oriented programming language. 2)Platform: Any hardware or software environment in which a program runs, is known as a platform. Since Java has its own runtime environment (JRE) and API, it is called platform.
  • 11. Where is java used? ● Desktop Applications such as acrobat reader, media player, antivirus etc. ● Web Applications such as irctc.co.in, javatpoint.com etc. ● Enterprise Applications such as banking applications. ● Mobile ● Embedded System ● Smart Card ● Robotics ● Games etc.
  • 12. Types of Java Applications 1) Standalone Application It is also known as desktop application or window-based application. An application that we need to install on every machine such as media player, antivirus etc. AWT and Swing are used in java for creating standalone applications. 2) Web Application An application that runs on the server side and creates dynamic page, is called web application. Currently, servlet, jsp, struts, jsf etc. technologies are used for creating web applications in java. 3) Enterprise Application An application that is distributed in nature, such as banking applications etc. It has the advantage of high level security, load balancing and clustering. In java, EJB is used for creating enterprise applications. 4) Mobile Application An application that is created for mobile devices. Currently Android and Java ME are used for creating mobile applications.
  • 13. Java Environment ● JDK ● JRE ● JVM ● Dalvik VM (for android)
  • 14. Java Environment JVM (Java Virtual Machine) is an abstract machine. It is a specification that provides runtime environment in which java bytecode can be executed. JVMs are available for many hardware and software platforms. The JVM performs following main tasks: ● Loads code ● Verifies code ● Executes code ● Provides runtime environment
  • 15. Java Environment JRE is an acronym for Java Runtime Environment.It is used to provide runtime environment.It is the implementation of JVM.It physically exists.It contains set of libraries + other files that JVM uses at runtime. Implementation of JVMs are also actively released by other companies besides Sun Micro Systems.
  • 16. Java Environment JDK JDK is an acronym for Java Development Kit.It physically exists.It contains JRE + development tools
  • 17. Java-some things that must be understood ● Object Oriented Programming Concept ● (software) design pattern ● (software architecture)
  • 18. Java-OOP ● Object ● Class ● Inheritance ● Polymorphism ● Abstraction ● Encapsulation Ref: http://www.javatpoint.com/java-oops-concepts
  • 19. Java-OOP-Object An object has three characteristics: state: represents data (value) of an object. behavior: represents the behavior (functionality) of an object such as deposit, withdraw etc. identity: Object identity is typically implemented via a unique ID. The value of the ID is not visible to the external user. But,it is used internally by the JVM to identify each object uniquely. . Object is an instance of a class. Class is a template or blueprint from which objects are created. So object is the instance(result) of a class Object : Pencil State - name : Stadler - color : white - thicknes : 2B Behavior : drawing
  • 20. Java-OOP-Class A class is a group of objects that has common properties. It is a template or blueprint from which objects are created. A class in java can contain: ● data member ● method ● constructor ● block ● class and interface
  • 21. Contoh Object dan Class class Student1{ int id;//data member (also instance variable) String name;//data member(also instance variable) public static void main(String args[]){ Student1 s1=new Student1();//creating an object of Student System.out.println(s1.id); System.out.println(s1.name); } }
  • 22. Contoh Object dan Class class Rectangle{ int length; int width; void insert(int l,int w){ length=l; width=w; } void calculateArea() {System.out.println(length*width);} public static void main(String args[]){ Rectangle r1=new Rectangle(); Rectangle r2=new Rectangle(); r1.insert(11,5); r2.insert(3,15); r1.calculateArea(); r2.calculateArea(); } }
  • 23.
  • 24. Java-OOP-Inheritance When one object acquires all the properties and behaviours of parent object i.e. known as inheritance. It provides code reusability. It is used to achieve runtime polymorphism.
  • 25. Java-OOP-Polymorphism When one task is performed by different ways i.e. known as polymorphism. For example: to convense the customer differently, to draw something e.g. shape or rectangle etc. Another example can be to speak something e.g. cat speaks meaw, dog barks woof etc.
  • 26. Java-OOP-Abstraction Hiding internal details and showing functionality is known as abstraction. For example: phone call, we don't know the internal processing.
  • 27. Java-OOP-Encapsulation Binding (or wrapping) code and data together into a single unit is known as encapsulation. For example: capsule, it is wrapped with different medicines.
  • 28.
  • 30. Activity User interface yang bisa berinteraksi dengan user Android Application Component
  • 31. Views  Button  Textview  EditText Android Application Component
  • 32. Intent Explicite : asking someone to do something Implicit : Asking the system who can do something Contoh : oPindah halaman/activity oPanggil contact oPanggil Gallery oCall Android Application Component
  • 33. broadcastreceiver Contoh : oBatteray low oPower off oBoot completed oPhone state Listen to event Android Application Component
  • 34.  Push notification  Widget on home screen  Live walpaper  Animation & styling  Multitouch  Canvas/openGL Android has Rich of Capabilites
  • 36.  Sharedpreference  File  SQLite database Saving data