SlideShare una empresa de Scribd logo
1 de 52
+
UAH Smartphone Programming (CPE 490/590)
Summer 2015
By: Michael T. Shrove
+
Michael T. Shrove (Tommy)
 B.S. Computer Engineering
 M.S. Software Engineering
 *Ph.D. Computer Engineering
 Software Engineering Manager
at COLSA Corp.
 iOS Development (7 yrs)
 Android Development (5 yrs)
 Software Development (11 yrs)
Education Professional
 Certifications:
 Certified Ethical Hacker (CEH)
 Certified Information Security Specialist Professional (CISSP)
 Certified Penetration Tester (CPT)
 Tenable Nessus Certified Auditor (TCNA)
+
Apps I’ve developed
+
Twisted Pair
+
mUAHealth
+
Petwink
www.petwink.com
+
MBMT (My Body My Trainer)
http://www.mybodymytrainer.com
+
About me
Hobbies: Running, Church, Teaching, My Dogs,
Squatchin’
Favorite Platform: iOS
Favorite App: Wunderlist
+
Tell me about yourself
 Name
 Degree (B.S, M.S., or Ph.D)
 Hobbies (Stuff you like to do)
 Mobile Development Experience
 Favorite App
 Favorite Platform
+
Course Overview
+
What will you learn in this course?
How to develop and distribute mobile apps?
Basic knowledge of both iOS and Android
development
Learn Swift and Java
Learn basic UI skills
+
What should I know?
You should be good at object oriented
programming (OOP)
Both Swift and Java are nothing but objects.
You should know pointers if you plan to
develop with iOS.
If you develop in Android, you should know
XML.
+
Fast Paced Class
 A lot of information to cover in 10 weeks.
 Learn 2 platforms in 10 weeks.
 Not information time in class to learn everything in
Mobile development.
 Try to learn outside the course.
 If you want to be taught something, please let me
know.
+
Prerequisites
CPE Students
CPE 212 (Fundamentals of Software
Engineering)
Others
Teacher approval
+
Grading
Labs – 15%
Paper – 5%
Homework – 25%
Project – 40%
Final Presentation – 15%
+
What am I missing?
+
Paper
 1st Assignment
 3-4 Pages long (paper.len > 3 pgs && paper.len < 4 pgs)
 IEEE format
 Pick your topic from three topics (on Canvas)
 Be creative!!!!!
 Due June 6th
+
Homework
2-3 Homework assignments
Each will be developing an app for the
mobile operating system of your choice
(Android or iOS).
I will (try) give you the assignment 2 weeks
before it is due.
+
Choice of Mobile Platform
What do I mean choice of mobile OS of your
choice?
If you choose Android, all equipment to
develop applications will be provided.
If you choose iOS, the school will not provide
equipment for develop. You are responsible
for providing you own equipment.
+
Final Project
The project will be a “semester long project”.
Basically it will be a “4th homework”
assignment of your choice.
You will develop an app of your choice.
Present to me the project before working on
it.
+
Final Presentation
 The presentation will be presenting your app to the
class.
 Project can be group project (1-2 people)
 Graduate students need to incorporate a sensor (ex.
camera, bluetooth, accelerometer, wearable)
 Professor we have app idealist come in to present
their ideas of apps.
+
Quizzes (return !graded;)
 Just want to use mobile tech in the classroom.
 We will use canvas for these quizzes.
 You can also use the canvas app.
+
Office Hours
I do not have official office hours.
Office Hours can be by appointment
Office hours may be provided through
Google+ Hangouts.
+
Questions?
+
Smartphone Videos
 https://www.youtube.com/watch?v=tJckXMELAac
 https://www.youtube.com/watch?v=LjECnGgxAmw
+
Introduction to Smartphone
+
What is Android?
 Android is a linux based
operating system for mobile
devices.
 Introduced by Android Inc.
 Bought by Google in 2005
 Maintained by Android Open
Source Project (AOSP)
 Released in Android 1.0 in
2008
+
Android History
 2.0 - Eclair, Froyo, Gingerbread
 Designed specifically for smartphones
 3.0 - Honeycomb
 Designed for tablets and bigger screen
devices
 4.0 - Ice Cream Sandwich
 Integrated honeycomb features into
smartphones
 4.1 – 4.3 - Jelly Bean
 4.4 – KitKat
 5.0 - Lollipop
https://www.android.com/intl/en_us/history/
+
Android Versions
+
Android Architecture
Kernel base on Linux
kernel
Middle, API, and libraries
 written in C
Application software using
Application Framework
 written in Java
+
Android Architecture
+
Android “App Stores”
 Google Android Market
 Hosted by Google
 Only allows Google “certified” devices.
 Other Markets
 GetJar
 SlideMe
 Appszoom
 CNET
 Amazon Appstore for Android
http://joyofandroid.com/android-app-store-alternatives/
+
What is an Android Emulator?
 The Android SDK includes a mobile
device emulator
 A virtual mobile device that runs on
your computer.
 The emulator lets you develop and
test Android applications without using
a physical device.
 The emulator lets you prototype,
develop and test Android applications
without using a physical device.
http://developer.android.com/tools/devices/emulator.html
+
Install tools for Android
Development
 https://developer.android.com/sdk/index.html
 Install the SDK
 https://developer.android.com/sdk/installing/index.html
 Recommended Installation
 http://developer.android.com/sdk/installing/studio.html
+
What is Android Studio?
 Android Studio is a new Android development environment
based on IntelliJ IDEA.
 Similar to Eclipse with the ADT Plugin, Android Studio provides
integrated Android developer tools for development and
debugging. On top of the capabilities you expect from IntelliJ.
 http://developer.android.com/tools/studio/index.html
+
Android Studio Checklist
 Show the interface
 Creating Emulator
 How to debug
 Create Android Virtual Device (AVD)
 Create first project
+
Questions?
+
What is iOS
 Mobile Operating System
 Created and maintained by
Apple Inc.
 Original called iPhone OS
 OS for iPhone, iPad, iPod
Touches, and Apple TV
 Apple unveiled in January ’07
 Unix-like
+
Version History
 1.0 - iPhone
 2.0 - iPhone, iPod Touch
 introduced App Store
 3.0 - iPhone, iPod Touch, iPad
 4.0 - Introduced the iDevices to Verizon
 5.0 - PC Free, iCloud, iMessaging
 6.0 - Siri, Social Network Integration, iPhone 5 support
 7.0 – New look (moves away from skeuomorphism)
 8.0 – Health focused (Healthkit), iPhone 6 plus, Swift, Apple Watch
+
iOS
+
iOS Design / Architecture
 Kernel is based on Hybrid XNU
 Higher layers are for object-
oriented abstractions for lower
layer constructs
 Lower layers written in C
 Applications layers are written
in Objective-C and Swift
+
iOS Architecture
Cocoa-Touch
API for running applications on iOS devices.
Media
The graphics, audio, and video technologies.
Core Services
Provides the fundamental data types and essential services that
underlie both the Cocoa and Carbon environments for both Mac
OSX and iOS.
Core OS
+
iOS Architecture in-depth
+
Installing Tools for iOS Development
Xcode
Development Tutorials and Help
 http://developer.apple.com/devcenter/ios/index.action
Install Xcode
 http://developer.apple.com/xcode/index.php
 Download from Mac App Store
+
What is Xcode?
 Apple IDE for developing MacOSX and iOS Apps
https://developer.apple.com/xcode/ide/
+
Components of Xcode
 Xcode IDE
 Integrated development environment (IDE) that enables you to
manage, edit, debug your projects.
 iOS Simulator
 Provides a software simulator to simulate an iPhone or an iPad on
your Mac.
 Interface Builder
 Visual editor for designing user interfaces for your iPhone and iPad
applications.
+
iOS Checklist
 Downloading and Installing Xcode
 Xcode
 Simulator
 Creating 1st iOS Project
+
Wearables (Android & iOS)
 Wearables - are clothing and accessories incorporating
computer and advanced electronic technologies
 Examples
 Smart Watches
 Activity Trackers
 Smart Glasses
 Headsets
+
Apple Watch (Wearable)
 Developed by Apple, Inc.
 Fitness tracking, health tracking, and iOS integration
 Released on April 24, 2015
+
Android Wear
 Android Wear is a version of Google's Android operating
system designed for smartwatches and other wearables.
 Released on March 18, 2014
http://www.android.com/wear/
+
Quiz Time!!!
 Use Canvas
 Website: https://uah.instructure.com
 App
+
Questions?

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

IOS vs Android presentation by Saikrishna
IOS vs Android presentation by SaikrishnaIOS vs Android presentation by Saikrishna
IOS vs Android presentation by Saikrishna
 
Android VS IOS VS Windows Phone
Android VS IOS VS Windows PhoneAndroid VS IOS VS Windows Phone
Android VS IOS VS Windows Phone
 
ios vs android.ppt
ios vs android.pptios vs android.ppt
ios vs android.ppt
 
ppt on android vs iOS
ppt on android vs iOSppt on android vs iOS
ppt on android vs iOS
 
iOS vs. Android — In Numbers and Style
iOS vs. Android — In Numbers and StyleiOS vs. Android — In Numbers and Style
iOS vs. Android — In Numbers and Style
 
ios vs android presentation
ios vs android presentationios vs android presentation
ios vs android presentation
 
Andriod vs iOS
Andriod vs iOSAndriod vs iOS
Andriod vs iOS
 
Android vs ios presentation detailed slides
Android vs ios presentation detailed slidesAndroid vs ios presentation detailed slides
Android vs ios presentation detailed slides
 
Android vs iOS
Android vs iOSAndroid vs iOS
Android vs iOS
 
Android vs iOS
Android vs iOSAndroid vs iOS
Android vs iOS
 
Iphone vs android
Iphone vs androidIphone vs android
Iphone vs android
 
Android Vs iOS
Android Vs iOSAndroid Vs iOS
Android Vs iOS
 
Android vs iOS security
Android vs iOS securityAndroid vs iOS security
Android vs iOS security
 
Android vs Ios
Android vs Ios Android vs Ios
Android vs Ios
 
Android vs. IOS: Comparing features & functions
Android vs. IOS: Comparing features & functionsAndroid vs. IOS: Comparing features & functions
Android vs. IOS: Comparing features & functions
 
Ios operating system
Ios operating systemIos operating system
Ios operating system
 
iOS vs Android History
iOS vs Android HistoryiOS vs Android History
iOS vs Android History
 
Iphone vs android
Iphone vs androidIphone vs android
Iphone vs android
 
Research on Comparative Study of Different Mobile Operating System_Part-2
Research on Comparative Study of Different Mobile Operating System_Part-2Research on Comparative Study of Different Mobile Operating System_Part-2
Research on Comparative Study of Different Mobile Operating System_Part-2
 
Android vs. iPhone for Mobile Security
Android vs. iPhone for Mobile SecurityAndroid vs. iPhone for Mobile Security
Android vs. iPhone for Mobile Security
 

Similar a Course overview 1

iOS & Android Application Development - Pee Dee User Group Meeting
iOS & Android Application Development - Pee Dee User Group MeetingiOS & Android Application Development - Pee Dee User Group Meeting
iOS & Android Application Development - Pee Dee User Group Meeting
Jim Tochterman
 
iOS-iPhone documentation
iOS-iPhone documentationiOS-iPhone documentation
iOS-iPhone documentation
Raj Dubey
 
Life cycle of iPhone application
Life cycle of iPhone applicationLife cycle of iPhone application
Life cycle of iPhone application
Siva Prasad K V
 
Mobile app development sylhet it academy
Mobile app development  sylhet it academyMobile app development  sylhet it academy
Mobile app development sylhet it academy
Sylhet IT Academy
 
Ramon Pastor of Rogomi inc on Trends in iOS Development at DevCon Summit 2013...
Ramon Pastor of Rogomi inc on Trends in iOS Development at DevCon Summit 2013...Ramon Pastor of Rogomi inc on Trends in iOS Development at DevCon Summit 2013...
Ramon Pastor of Rogomi inc on Trends in iOS Development at DevCon Summit 2013...
DEVCON
 

Similar a Course overview 1 (20)

MSR iOS Tranining
MSR iOS TraniningMSR iOS Tranining
MSR iOS Tranining
 
Introduction to Mobile Development
Introduction to Mobile DevelopmentIntroduction to Mobile Development
Introduction to Mobile Development
 
Hybrid Mobile App
Hybrid Mobile AppHybrid Mobile App
Hybrid Mobile App
 
Hybrid mobile app
Hybrid mobile appHybrid mobile app
Hybrid mobile app
 
iOS & Android Application Development - Pee Dee User Group Meeting
iOS & Android Application Development - Pee Dee User Group MeetingiOS & Android Application Development - Pee Dee User Group Meeting
iOS & Android Application Development - Pee Dee User Group Meeting
 
Step-by-Step Guide to Developing a Successful iOS App.pdf
Step-by-Step Guide to Developing a Successful iOS App.pdfStep-by-Step Guide to Developing a Successful iOS App.pdf
Step-by-Step Guide to Developing a Successful iOS App.pdf
 
Step-by-Step Guide to Developing a Successful iOS App.docx
Step-by-Step Guide to Developing a Successful iOS App.docxStep-by-Step Guide to Developing a Successful iOS App.docx
Step-by-Step Guide to Developing a Successful iOS App.docx
 
Anuradha_Resume_2016
Anuradha_Resume_2016Anuradha_Resume_2016
Anuradha_Resume_2016
 
Life Cycle of an iPhone App
Life Cycle of an iPhone AppLife Cycle of an iPhone App
Life Cycle of an iPhone App
 
How to decide between iOS and android development
How to decide between iOS and android developmentHow to decide between iOS and android development
How to decide between iOS and android development
 
Day 1 Android: Before Getting Started
Day 1 Android: Before Getting StartedDay 1 Android: Before Getting Started
Day 1 Android: Before Getting Started
 
Native mobile app development pros, cons, alternatives, and cost optimization
Native mobile app development pros, cons, alternatives, and cost optimizationNative mobile app development pros, cons, alternatives, and cost optimization
Native mobile app development pros, cons, alternatives, and cost optimization
 
iOS-iPhone documentation
iOS-iPhone documentationiOS-iPhone documentation
iOS-iPhone documentation
 
Life cycle of iPhone application
Life cycle of iPhone applicationLife cycle of iPhone application
Life cycle of iPhone application
 
Introduction to android mobile app development.pptx
Introduction to android mobile app development.pptxIntroduction to android mobile app development.pptx
Introduction to android mobile app development.pptx
 
Mobile Developer's Guide To The Galaxy No.10
Mobile Developer's Guide To The Galaxy No.10Mobile Developer's Guide To The Galaxy No.10
Mobile Developer's Guide To The Galaxy No.10
 
Mobile app development sylhet it academy
Mobile app development  sylhet it academyMobile app development  sylhet it academy
Mobile app development sylhet it academy
 
Seminar on android app development
Seminar on android app developmentSeminar on android app development
Seminar on android app development
 
Apple WWDC Mobility Review 2014
Apple WWDC Mobility Review 2014Apple WWDC Mobility Review 2014
Apple WWDC Mobility Review 2014
 
Ramon Pastor of Rogomi inc on Trends in iOS Development at DevCon Summit 2013...
Ramon Pastor of Rogomi inc on Trends in iOS Development at DevCon Summit 2013...Ramon Pastor of Rogomi inc on Trends in iOS Development at DevCon Summit 2013...
Ramon Pastor of Rogomi inc on Trends in iOS Development at DevCon Summit 2013...
 

Más de Michael Shrove

Más de Michael Shrove (8)

Android and IOS UI Development (Android 5.0 and iOS 9.0)
Android and IOS UI Development (Android 5.0 and iOS 9.0)Android and IOS UI Development (Android 5.0 and iOS 9.0)
Android and IOS UI Development (Android 5.0 and iOS 9.0)
 
Ui 5
Ui   5Ui   5
Ui 5
 
Swift 3
Swift   3Swift   3
Swift 3
 
Location based services 10
Location based services   10Location based services   10
Location based services 10
 
Sensors 9
Sensors   9Sensors   9
Sensors 9
 
Storage 8
Storage   8Storage   8
Storage 8
 
Java 2
Java   2Java   2
Java 2
 
Basics 4
Basics   4Basics   4
Basics 4
 

Course overview 1

  • 1. + UAH Smartphone Programming (CPE 490/590) Summer 2015 By: Michael T. Shrove
  • 2. + Michael T. Shrove (Tommy)  B.S. Computer Engineering  M.S. Software Engineering  *Ph.D. Computer Engineering  Software Engineering Manager at COLSA Corp.  iOS Development (7 yrs)  Android Development (5 yrs)  Software Development (11 yrs) Education Professional  Certifications:  Certified Ethical Hacker (CEH)  Certified Information Security Specialist Professional (CISSP)  Certified Penetration Tester (CPT)  Tenable Nessus Certified Auditor (TCNA)
  • 7. + MBMT (My Body My Trainer) http://www.mybodymytrainer.com
  • 8. + About me Hobbies: Running, Church, Teaching, My Dogs, Squatchin’ Favorite Platform: iOS Favorite App: Wunderlist
  • 9. + Tell me about yourself  Name  Degree (B.S, M.S., or Ph.D)  Hobbies (Stuff you like to do)  Mobile Development Experience  Favorite App  Favorite Platform
  • 11. + What will you learn in this course? How to develop and distribute mobile apps? Basic knowledge of both iOS and Android development Learn Swift and Java Learn basic UI skills
  • 12. + What should I know? You should be good at object oriented programming (OOP) Both Swift and Java are nothing but objects. You should know pointers if you plan to develop with iOS. If you develop in Android, you should know XML.
  • 13. + Fast Paced Class  A lot of information to cover in 10 weeks.  Learn 2 platforms in 10 weeks.  Not information time in class to learn everything in Mobile development.  Try to learn outside the course.  If you want to be taught something, please let me know.
  • 14. + Prerequisites CPE Students CPE 212 (Fundamentals of Software Engineering) Others Teacher approval
  • 15. + Grading Labs – 15% Paper – 5% Homework – 25% Project – 40% Final Presentation – 15%
  • 16. + What am I missing?
  • 17. + Paper  1st Assignment  3-4 Pages long (paper.len > 3 pgs && paper.len < 4 pgs)  IEEE format  Pick your topic from three topics (on Canvas)  Be creative!!!!!  Due June 6th
  • 18. + Homework 2-3 Homework assignments Each will be developing an app for the mobile operating system of your choice (Android or iOS). I will (try) give you the assignment 2 weeks before it is due.
  • 19. + Choice of Mobile Platform What do I mean choice of mobile OS of your choice? If you choose Android, all equipment to develop applications will be provided. If you choose iOS, the school will not provide equipment for develop. You are responsible for providing you own equipment.
  • 20. + Final Project The project will be a “semester long project”. Basically it will be a “4th homework” assignment of your choice. You will develop an app of your choice. Present to me the project before working on it.
  • 21. + Final Presentation  The presentation will be presenting your app to the class.  Project can be group project (1-2 people)  Graduate students need to incorporate a sensor (ex. camera, bluetooth, accelerometer, wearable)  Professor we have app idealist come in to present their ideas of apps.
  • 22. + Quizzes (return !graded;)  Just want to use mobile tech in the classroom.  We will use canvas for these quizzes.  You can also use the canvas app.
  • 23. + Office Hours I do not have official office hours. Office Hours can be by appointment Office hours may be provided through Google+ Hangouts.
  • 25. + Smartphone Videos  https://www.youtube.com/watch?v=tJckXMELAac  https://www.youtube.com/watch?v=LjECnGgxAmw
  • 27. + What is Android?  Android is a linux based operating system for mobile devices.  Introduced by Android Inc.  Bought by Google in 2005  Maintained by Android Open Source Project (AOSP)  Released in Android 1.0 in 2008
  • 28. + Android History  2.0 - Eclair, Froyo, Gingerbread  Designed specifically for smartphones  3.0 - Honeycomb  Designed for tablets and bigger screen devices  4.0 - Ice Cream Sandwich  Integrated honeycomb features into smartphones  4.1 – 4.3 - Jelly Bean  4.4 – KitKat  5.0 - Lollipop https://www.android.com/intl/en_us/history/
  • 30. + Android Architecture Kernel base on Linux kernel Middle, API, and libraries  written in C Application software using Application Framework  written in Java
  • 32. + Android “App Stores”  Google Android Market  Hosted by Google  Only allows Google “certified” devices.  Other Markets  GetJar  SlideMe  Appszoom  CNET  Amazon Appstore for Android http://joyofandroid.com/android-app-store-alternatives/
  • 33. + What is an Android Emulator?  The Android SDK includes a mobile device emulator  A virtual mobile device that runs on your computer.  The emulator lets you develop and test Android applications without using a physical device.  The emulator lets you prototype, develop and test Android applications without using a physical device. http://developer.android.com/tools/devices/emulator.html
  • 34. + Install tools for Android Development  https://developer.android.com/sdk/index.html  Install the SDK  https://developer.android.com/sdk/installing/index.html  Recommended Installation  http://developer.android.com/sdk/installing/studio.html
  • 35. + What is Android Studio?  Android Studio is a new Android development environment based on IntelliJ IDEA.  Similar to Eclipse with the ADT Plugin, Android Studio provides integrated Android developer tools for development and debugging. On top of the capabilities you expect from IntelliJ.  http://developer.android.com/tools/studio/index.html
  • 36. + Android Studio Checklist  Show the interface  Creating Emulator  How to debug  Create Android Virtual Device (AVD)  Create first project
  • 38. + What is iOS  Mobile Operating System  Created and maintained by Apple Inc.  Original called iPhone OS  OS for iPhone, iPad, iPod Touches, and Apple TV  Apple unveiled in January ’07  Unix-like
  • 39. + Version History  1.0 - iPhone  2.0 - iPhone, iPod Touch  introduced App Store  3.0 - iPhone, iPod Touch, iPad  4.0 - Introduced the iDevices to Verizon  5.0 - PC Free, iCloud, iMessaging  6.0 - Siri, Social Network Integration, iPhone 5 support  7.0 – New look (moves away from skeuomorphism)  8.0 – Health focused (Healthkit), iPhone 6 plus, Swift, Apple Watch
  • 40. + iOS
  • 41. + iOS Design / Architecture  Kernel is based on Hybrid XNU  Higher layers are for object- oriented abstractions for lower layer constructs  Lower layers written in C  Applications layers are written in Objective-C and Swift
  • 42. + iOS Architecture Cocoa-Touch API for running applications on iOS devices. Media The graphics, audio, and video technologies. Core Services Provides the fundamental data types and essential services that underlie both the Cocoa and Carbon environments for both Mac OSX and iOS. Core OS
  • 44. + Installing Tools for iOS Development Xcode Development Tutorials and Help  http://developer.apple.com/devcenter/ios/index.action Install Xcode  http://developer.apple.com/xcode/index.php  Download from Mac App Store
  • 45. + What is Xcode?  Apple IDE for developing MacOSX and iOS Apps https://developer.apple.com/xcode/ide/
  • 46. + Components of Xcode  Xcode IDE  Integrated development environment (IDE) that enables you to manage, edit, debug your projects.  iOS Simulator  Provides a software simulator to simulate an iPhone or an iPad on your Mac.  Interface Builder  Visual editor for designing user interfaces for your iPhone and iPad applications.
  • 47. + iOS Checklist  Downloading and Installing Xcode  Xcode  Simulator  Creating 1st iOS Project
  • 48. + Wearables (Android & iOS)  Wearables - are clothing and accessories incorporating computer and advanced electronic technologies  Examples  Smart Watches  Activity Trackers  Smart Glasses  Headsets
  • 49. + Apple Watch (Wearable)  Developed by Apple, Inc.  Fitness tracking, health tracking, and iOS integration  Released on April 24, 2015
  • 50. + Android Wear  Android Wear is a version of Google's Android operating system designed for smartwatches and other wearables.  Released on March 18, 2014 http://www.android.com/wear/
  • 51. + Quiz Time!!!  Use Canvas  Website: https://uah.instructure.com  App