Tuesday, November 27, 2007
Smart or Rich Clients
Now lets talk about the smart client development environments depending on OS/Platform which runs on the device,
1. Pocket PC or Windows Mobile Smart Phone
Embedded Visual C++ for performance critical applications. .NET Compact Framework for
rapid prototyping and development. Device specific SDKs are available from Microsoft such as Windows Mobile 5.0 SDK provides access to use native device features.
2. Series60 smartphones
Nokia Series60 SDK with Symbian/C++ . These typically are non-stylus based phones. E.g Nokia N and E series
3. UIQ smartPhones
UIQ SDK with Symbian/C++. These typically are stylus based phones. E.g Motorola Z8, Sony Ericsson M600i
4. BREW enabled phones
BREW SDK from Qualcomm used to develop on BREW enabled. E.g. Kyocera
5. JAVA enabled phones
Almost all the phones have light weight JVM (KVM) on top of the OS. These binary run-time helps to develop portable J2ME applications on most of the phones supporting it. Sun Wireless Toolkit along with eclipse or NetBeans IDE provide a good environment for developers.
Following are the characteristics of a typical device which all developers should be aware of,
1. Form factor
Processing power. CPU, Floating point
2. Screen Size
No of lines which can displayed/Resolution
3. Memory
ROM and RAM with extended storage
4. Connectivity Options
Bluetooth, USB, WiFi
For user experience there are several considerations which I shall discuss in my next post.
Wednesday, October 24, 2007
Mobile Application Architectures
- Thin Client or Wireless internet
- Smart Client or Rich Client
Thin Client typically uses a web browser on Handheld or Mobile. It directly access the server resources and renders in the browser. The pages have to be designed to support the limited layout/content in the browser. Earlier to days of mobile browser, WAP was prevalent using WML and WAP application protocol and communicating with WAP enabled Web server. The main advantage of thin client is no client side deployment required. Most of the time, browsers are available or can be installed on the handhelds. Typical examples are s60 browser on Nokia phones, openwave browser on Sony-Ericsson or Mini-Opera browser. These browsers are compliant to HTML 4.01 specification and support javascript. Another interesting proposition which makes thin client useful is using controls which are downloaded from the server such as activeX in case of windows CE/Mobile based phones or AJAX controls also known as widgets. Web2.0 specification talks about mobileAJAX which is interesting proposition to use thin clients.
The major disadvantage of thin client is that the handheld/mobile needs to be connected to internet or wireless network to access the information. This is the biggest drawback as connectivity cannot be guaranteed in the life span of the application usage.