Tutorial M Business 2003
Tutorial M Business 2003
[email protected],
Werner Kurschl
[email protected]
Building Mobile
Applications
Comparing The Java And .NET Approach
Motivation
Realization scenarios of mobile solutions
Development cycle for mobile applications
Why Java and .NET on devices?
J2ME & .NET CF
Architecture
Development
Comparison
Conclusion
Motivation
Realization scenarios of mobile solutions
Development cycle for mobile applications
Why Java and .NET on devices?
J2ME & .NET CF
Architecture
Development
Comparison
Conclusion
Application scenario
Choosing an appropriate scenario
Mobile device
Software infrastructure, hardware requirements
Communication technology
On-/Offline scenario
Wireless Wide Area Networks/ Wireless Local Area
Networks
Communication protocol
Application architecture scenario
Thin/fat client
Data management
Synchronisation
On-/offline capabilities
Security issues
Dangers for mobile devices
Threats of communication technology
Danger of exposing enterprise data
Motivation
Realization scenarios of mobile solutions
Development cycle for mobile applications
Why Java and .NET on devices?
J2ME & .NET CF
Architecture
Development
Comparison
Conclusion
- Design
- Implementation
- Debugging - Debugging
- Test - Test
- Deployment
JAVA
Franz Gruber, Werner Kurschl 10
Table of Contents
Motivation
Realization scenarios of mobile solutions
Development cycle for mobile applications
Why Java and .NET on devices?
J2ME & .NET CF
Architecture
Development
Comparison
Conclusion
Web
WebServer
Server Services
Serviceson
onServer
Server Our Focus
Local Code
Mobile
MobileWeb
Web .NET
.NETCF
CF&&J2ME
J2ME
Browser
Browser
Device
Device Operating
Operating System
System
Motivation
Realization scenarios of mobile solutions
Development cycle for mobile applications
Why Java and .NET on devices?
J2ME & .NET CF
Architecture
Development
Comparison
Conclusion
.NET is ...
Language independent (VB, C#)
Platform dependent (Windows CE, PocketPC)
Company driven
Java is ...
Language dependent
Platform independent
Community driven
Architecture
Design
Infrastructure
Development tools
Availability, licensing
Standardization
User Interfaces
Data capabilities
Communication
Conclusion
Building Mobile
Applications
.NET Compact Framework - Architecture
Application Application
Host OS Services
Boot Loader Networking Host OS
Threads Filesystem
Timers
Hardware
System.Data System.Xml
ADO.NET Design XmlDocument Serialization
Odbc OleDB XSLT/XPath Reader/writer
SqlClient SqlServerCE
SqlTypes
System
Collections IO Runtime Security
Text Net CompilerServices Cryptography
Globalization Reflection InteropServices Permissions
Resources Threading Remoting Policy
ServiceProcess Diagnostics Serialization Principal
EnterpriseServices
Building Mobile
Applications
Java 2 Micro Edition - Architecture
Building Mobile
Applications
Feature Comparison
J2ME CDC - J2ME CLDC - .NET CF
J2ME CDC
Personal Profile: Full AWT available and third
party widget toolkits based on AWT available
Personal Basis Profile: Basic AWT components
available, lightweight implementation of widgets
in reference implementation integrated
J2ME CLDC
Limited set of UI widgets for MIDP
Limited AWT subset for PDA Profile
Franz Gruber, Werner Kurschl 28
User Interfaces
.NET CF
Two flavors
Generic – provides cross-OS portability
– Drawing primitives
– Controls and Forms
Windows Forms
– Supersets generic functionality
– Available for Windows CE devices
– Consistent with WinForms on .NET Framework
– Drag n’ drop UI designer in Visual Studio
J2ME
RMI: for CDC and CLDC via optional packages
Sockets and HTTP(S) implementation available
Not available: SOAP in standard J2ME
.NET CF
Sockets built in framework
HTTP(S) request and response
SOAP support built in
Features
User Interfaces
– Known desktop widgets
– Limited display size!
Data management
– Simple data management capabilities
XML
– Needed for data exchange and Web Services
– Built in (.NET CF) or third party implementations (J2ME)
Communication
– Support for relevant protocols (HTTP(S), SOAP,
Sockets)
– Transparent use of wireless communication technolgies
like GPRS, and WLAN
Web Services
– Standard is supported by .NET CF, and both Java
configurations
Building Mobile
Applications
Questions And Discussion
• "Java Books Hit the Wire," Michael Juntao Yuan (JavaWorld, July 2002)
http://www.javaworld.com/javaworld/jw-07-2002/jw-0719-wireless.html
• Additional reviews of J2ME related books
http://www.enterprisej2me.com/J2MEvsdotNET/books.html#j2me
• Andy Wigley, Microsoft .NET COMPACT Framework – Core Reference, Microsoft Press
• Important books to learn about .Net development
http://www.enterprisej2me.com/J2MEvsdotNET/books.html#dotnet
• Windows Embedded Frequently Asked Questions, Microsoft
http://www.microsoft.com/windows/embedded/faq/default.asp
• Microsoft .Net Compact Framework Quickstarts Tutorial, GOT DOT NET Community
http://samples.gotdotnet.com/quickstart/CompactFramework/doc/default.aspx
SCCH resources: