computer science wi-fi app using j2me and mvc architecture advisor : dr. chung-e wang department of...
TRANSCRIPT
Computer Science Wi-Fi App using J2ME and MVC Architecture
Advisor : Dr. Chung-E WangDepartment of Computer ScienceSacramento State UniversityDate: 04/25/05
Praveen Chirumamilla
Agenda
Motivation Purpose J2ME MVC Pattern Project design overview Improvements Summary
Motivation
Semester begins – check course schedule - Labs has long waiting lines
out of town – grade check – no computer
Why not use cell phone to do these..?
Purpose
Provide Students facility to schedule appointment, check their grades and class schedule using their cell phones
Explore J2ME, NetBeans Mobile IDE Understand & implement MVC
architecture
NetBeans Full-featured Java Open Source IDE Syntax highlighting code editor Offers unmatched support for J2ME MIDP
2.0 and CLDC 1.1 mobile environment J2EE development Performance Profiler Visual design tool Sun Public License
Where does J2ME fit in Java 2 Platform?
Java™ 2 PlatformServers
Servers
Java 2Enterprise
Edition(J2EE)
Java 2StandardEdition(J2SE)
OptionalPackages
OptionalPackages
Java 2 Micro Edition (J2ME)
Java Virtual Machine KVM
CLDCCDC
MIDPFoundation Profile
Personal Profile
Java Card APIs
CardVM
Desktopmachines
Desktopmachines
High-endconsumerdevices
High-endconsumerdevices
Low-endconsumerdevices
Low-endconsumerdevices
Smart-cards
Smart-cards
J2ME Configurations and Profiles
Java HotSpot ™ Java Virtual Machine (JVM) Card VM
Java Programming Language
Java 2Enterprise
Edition(J2EE)
Core APIs
Java 2StandardEdition(J2SE)
Core APIs
Java 2 Micro Edition Core APIs
PersonalProfile
RMIProfile
Other CDC
Profiles...
FoundationProfile
Mobile InformationDevice Profile
OptionalPackages
Java™ 2 Platform, Micro Edition (J2ME™) encompasses VMs and core APIs specified via Configurations as well as vertical—or market-specific—APIs specified in Profiles
OptionalPackages
KVM
Java Card APIs
Profile? A collection of Java technology-based
APIs that supplement a Configuration to provide capabilities for a specific “vertical” market or device type
Adds features that are specific to a certain device category such as cell phones or PDAs
One profile defined Mobile Information Device Profile
Mobile Information Device Profile
Targets mobile two-way communication devices implementing J2ME CLDC
Profile addresses Display toolkit, User input methods Persistent data storage using simple
record-oriented database model HTTP-based networking using CLDC
Generic Connection framework
CLDC and MIDP Architecture
MIDP ProfileApplications
OEMApplications
MID Profile
CLDC (KVM)
Operating System
OEMAPIs
MIDP Application Lifecycle MIDP applications are known
as “MIDlets” MIDlets move from state to
state in the lifecycle, as indicated. Start – acquire resources and start
executing Pause – release resources and
become quiescent (wait) Destroy – release all resources,
destroy threads, and end all activity
Pause
Active
Destroyed
star
tAp
pd
estr
oyA
pp
pau
seA
pp
des
tro
yAp
p
MVC: Model-View-Controller Model-View-Controller
Architectural pattern for building systems Divide system responsibilities into three parts
Model Contains all program data and logic
View Visual representation of model
Controller Defines system behavior by sending user input to model
Step by step User uses controller to change data in model Model then informs view of change View changes visual presentation to reflect change
Model-View-Controller Architecture
Model Application data
View Graphical presentation components
Controller Logic for processing user input
notifiesmodifiesModelC ontroller View
Elements of MVC design pattern
User
View Controller
Model
notifies of the update
registers changes and actions
user actions
UI presentation
Project overview
View MVCMIDlet
Model
Runnable
Improvements
Synchronize the data between SMCD and admissions department
Send as SMS to students of the class when grades are posted
Summary
J2ME, MIDP, MVC Concepts Project design