prog 38448 mobile java application development prog 38448 mobile java application development course...

24
PROG 38448 Mobile Java Application Development Course Introduction & Overview Software Install Demonstrations

Upload: sarah-owen

Post on 16-Dec-2015

244 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: PROG 38448 Mobile Java Application Development PROG 38448 Mobile Java Application Development Course Introduction & Overview Software Install Demonstrations

PROG 38448

Mobile Java Application Development

PROG 38448

Mobile Java Application Development

Course Introduction & Overview

Software Install

Demonstrations

Page 2: PROG 38448 Mobile Java Application Development PROG 38448 Mobile Java Application Development Course Introduction & Overview Software Install Demonstrations

04/18/23 Wendi Jollymore, ACES 2

Professor InformationProfessor Information

Wendi [email protected]. 8797Office: S401

(top of stairs near Second Cup)Social Networking:

Pthhh :P

Page 3: PROG 38448 Mobile Java Application Development PROG 38448 Mobile Java Application Development Course Introduction & Overview Software Install Demonstrations

04/18/23 Wendi Jollymore, ACES 3

Office HoursOffice Hours

Office: S401Hours:

Monday11am to 2pm

Tuesday1pm to 3pm

Wednesday12pm to 2pm

Friday9am to 11am

Page 4: PROG 38448 Mobile Java Application Development PROG 38448 Mobile Java Application Development Course Introduction & Overview Software Install Demonstrations

04/18/23 Wendi Jollymore, ACES 4

About PROG 38448About PROG 38448

Course OutlineCourse Coverage:

IDEsMobile device guidelines and best practicesUI Design and DevelopmentThreads, Background AppsNetworked AppsData StorageOther stuff

Page 5: PROG 38448 Mobile Java Application Development PROG 38448 Mobile Java Application Development Course Introduction & Overview Software Install Demonstrations

04/18/23 Wendi Jollymore, ACES 5

Course EvaluationCourse Evaluation

In-Class Exercises or Quizzes 25%

Take-home Assignments 20%

Mid Term Test 25%

Final Exam 30%

Total 100%

You must have an average of 50% onboth exams in order to pass this course!You must have an average of 50% on

both exams in order to pass this course!

Page 6: PROG 38448 Mobile Java Application Development PROG 38448 Mobile Java Application Development Course Introduction & Overview Software Install Demonstrations

04/18/23 Wendi Jollymore, ACES 6

Required ResourcesRequired Resources

SLATE: some RIM MaterialsTextbooks in PDF format

Books24x7 books, specificallyBeginning BlackBerry Development by Anthony RizkISBN: 9781430272250

BlackBerry Developer’s Zonehttp://us.blackberry.com/developers/

Page 7: PROG 38448 Mobile Java Application Development PROG 38448 Mobile Java Application Development Course Introduction & Overview Software Install Demonstrations

04/18/23 Wendi Jollymore, ACES 7

Software RequiredSoftware Required

Eclipse with BlackBerry plug-inBlackBerry JDE (various versions)BlackBerry Email and MDS Services SimulatorMaybe some other stuff later in the course e.g. SqlLite, additional BB simulators, etc

Page 8: PROG 38448 Mobile Java Application Development PROG 38448 Mobile Java Application Development Course Introduction & Overview Software Install Demonstrations

04/18/23 Wendi Jollymore, ACES 8

Questions?Questions?

Any questions so far?

Page 9: PROG 38448 Mobile Java Application Development PROG 38448 Mobile Java Application Development Course Introduction & Overview Software Install Demonstrations

04/18/23 Wendi Jollymore, ACES 9

Developing for Mobile DevicesDeveloping for Mobile Devices

Resources: Intro to Developing Apps (RIM)

See today’s lesson:Introduction to Developing Mobile applications

Book 1 - Intro to Mobile Application Development - Module 01 Intro to Developing Applications

Page 10: PROG 38448 Mobile Java Application Development PROG 38448 Mobile Java Application Development Course Introduction & Overview Software Install Demonstrations

04/18/23 Wendi Jollymore, ACES 10

Developing for Mobile DevicesDeveloping for Mobile DevicesExercise 1

to be done in groups, with discussion following:1. Identify and describe the differences between mobile applications and typical desktop applications. 2. Identify and describe a user's needs and expectations of mobile applications.

Page 11: PROG 38448 Mobile Java Application Development PROG 38448 Mobile Java Application Development Course Introduction & Overview Software Install Demonstrations

04/18/23 Wendi Jollymore, ACES 11

Developing for Mobile DevicesDeveloping for Mobile DevicesExercise 1.1:

Mobile devices are MOBILE! Desktops are not!Mobile devices have smaller storage capacity than desktops.Mobile devices have lower memory capacity than desktops.Limited power on mobile devices; desktops can run continuously without worrying about power and can run power-intensive apps.Smaller and varying screen size on mobile apps.Mobile apps – different input methods; desktops = touch-typing.Desktops can display multiple app screens at the same time; mobile apps display only a single app screen at a time.Mobile devices use wireless, so slower data transfer rates and less reliable.

Page 12: PROG 38448 Mobile Java Application Development PROG 38448 Mobile Java Application Development Course Introduction & Overview Software Install Demonstrations

04/18/23 Wendi Jollymore, ACES 12

Developing for Mobile DevicesDeveloping for Mobile DevicesExercise 1.2:

Users want time-sensitive information quickly (60 second rule).Users want only the most relevant information – only the options/info most relevant to the current task. Simple and easy-to-use, consistent.

Page 13: PROG 38448 Mobile Java Application Development PROG 38448 Mobile Java Application Development Course Introduction & Overview Software Install Demonstrations

04/18/23 Wendi Jollymore, ACES 13

Developing for Mobile DevicesDeveloping for Mobile DevicesResources:

Methods of App Development (RIM)

See SLATE/Learning Modules/Introduction/Lesson 1/Introduction to Developing Mobile applications for these resources

Page 14: PROG 38448 Mobile Java Application Development PROG 38448 Mobile Java Application Development Course Introduction & Overview Software Install Demonstrations

04/18/23 Wendi Jollymore, ACES 14

Developing for Mobile DevicesDeveloping for Mobile DevicesExercise 2

to be done in groups, with discussion following:1. Define the three types of mobile applications. 2. Describe the advantages and disadvantages of each method of mobile application development.

Page 15: PROG 38448 Mobile Java Application Development PROG 38448 Mobile Java Application Development Course Introduction & Overview Software Install Demonstrations

04/18/23 Wendi Jollymore, ACES 15

Developing for Mobile DevicesDeveloping for Mobile DevicesExercise 2.1:

Java ApplicationsJava MEReside and run on mobile deviceDoesn’t need to access internet after download/installationCan synchronize with apps/data on computer

Web ApplicationsApp resides on content server and is accessed on device with the web browserHTML/XHTML, images, JavaScript, CSS, Ajax, etc.Example: cbc.ca/mobile

Page 16: PROG 38448 Mobile Java Application Development PROG 38448 Mobile Java Application Development Course Introduction & Overview Software Install Demonstrations

04/18/23 Wendi Jollymore, ACES 16

Developing for Mobile DevicesDeveloping for Mobile DevicesExercise 2.1, continued:

WidgetsSingle-purpose apps developed with web technologiesRun as an application in its own instance of a web browser so it looks like a regular appCan be stand-alone app or can be connected to Internet.Example: foodnetwork.ca app

Page 17: PROG 38448 Mobile Java Application Development PROG 38448 Mobile Java Application Development Course Introduction & Overview Software Install Demonstrations

04/18/23 Wendi Jollymore, ACES 17

Developing for Mobile DevicesDeveloping for Mobile DevicesExercise 2.2:

Java Apps, Advantages:Flexibility re style, function, appearanceCan take advantage of existing device features (maps, media player, contacts)Can communicate with peripheral devices via Bluetooth easily (standardized)Anytime access – app resides on deviceAccess to location-based services.Can use background threads/processes.Some require no bandwidth, or can develop a “push” app to minimize bandwidth

Page 18: PROG 38448 Mobile Java Application Development PROG 38448 Mobile Java Application Development Course Introduction & Overview Software Install Demonstrations

04/18/23 Wendi Jollymore, ACES 18

Developing for Mobile DevicesDeveloping for Mobile DevicesExercise 2.2, continued:

Java Apps, Disadvantages:Skill requirements – need to know how to program!No existing framework so you need to figure out how to present your app’s featuresLimited local storage.You need to develop different application versions for a variety of different devices.

Page 19: PROG 38448 Mobile Java Application Development PROG 38448 Mobile Java Application Development Course Introduction & Overview Software Install Demonstrations

04/18/23 Wendi Jollymore, ACES 19

Developing for Mobile DevicesDeveloping for Mobile DevicesExercise 2.2, continued:

Web Apps, Advantages:No issues with storage capacity since everything is stored on content server.

Can work with existing frameworks

e.g. use same connection, compression, encryption as BB email app and don’t have to build these

Access to web signals

http://na.blackberry.com/eng/services/websignals/

Version control – just update the one version on the content server

Can detect device type and capabilities

Page 20: PROG 38448 Mobile Java Application Development PROG 38448 Mobile Java Application Development Course Introduction & Overview Software Install Demonstrations

04/18/23 Wendi Jollymore, ACES 20

Developing for Mobile DevicesDeveloping for Mobile Devices

Exercise 2.2, continued:Web Apps, Disadvantages:

Existing framework can limit creativity.No true background processes – can run web app concurrently with other apps.Must have Internet connection to content server.Uses bandwidth so must avoid large uploads/downloads.

Page 21: PROG 38448 Mobile Java Application Development PROG 38448 Mobile Java Application Development Course Introduction & Overview Software Install Demonstrations

04/18/23 Wendi Jollymore, ACES 21

Developing for Mobile DevicesDeveloping for Mobile Devices

Exercise 2.2, continued:Widgets, Advantages:

Can apply application-like features without knowing programming language

Can use existing web technologies

Features and content specific to user needs, customizable.Can use device features e.g. location based servicesUse less bandwidth – send/rec’v smaller amounts of dataCan use existing content already created from web app or from content server

Page 22: PROG 38448 Mobile Java Application Development PROG 38448 Mobile Java Application Development Course Introduction & Overview Software Install Demonstrations

04/18/23 Wendi Jollymore, ACES 22

Developing for Mobile DevicesDeveloping for Mobile Devices

Exercise 2.2, continued:Widgets, Disadvantages:

Similar to disadvantages of web apps:Less flexibilityReliance on Internet connectionNot suitable for larger, more complex tasks

Page 23: PROG 38448 Mobile Java Application Development PROG 38448 Mobile Java Application Development Course Introduction & Overview Software Install Demonstrations

04/18/23 Wendi Jollymore, ACES 23

DemonstrationDemonstration

Your obligatory Hello, World! program

See the notes

Page 24: PROG 38448 Mobile Java Application Development PROG 38448 Mobile Java Application Development Course Introduction & Overview Software Install Demonstrations

04/18/23 Wendi Jollymore, ACES 24

Assignment 1Assignment 1

Do the Homework at the end of the notes

Read Chapter 2 of Beginning BlackBerry Development and try both sets of walkthroughs

See SLATE/Learning Modules/Introduction/Lesson 1/Homework Assignment for these resources