MAKING THE TRANSITION FROM Desktop/Web Application Development                 to   Mobile Application Development        ...
ContentsExecutive Summary                                                                                3What Skills Do D...
Executive SummaryPeople rely on their smart phones, tablet devices and laptops for all kinds of activities. Consumers use ...
What Skills Do Desktop/Web Developers Have?There are two main types of enterprise applications:–       Web or “thin client...
Microsoft .NETThe second part of the desktop/web development world is Microsoft’s .NET Framework. .NET1 is a softwareframe...
What Skills Do Mobile Developers Need?Mobile applications can be developed in three fundamental ways: mobile web, native o...
Mobile Development OptionsDue to differences in underlying technology, each development approach has inherent advantages,d...
The Mobile Mindset-Factors to ConsiderDeveloping for a mobile device platform is not just a technology change; it requires...
Desktop PCs and laptops provide keyboards for data entry, allowing comfortable, fast typing with both handsand all fingers...
Another issue that enterprise applications do not have to address is battery life. With enterprise applications,you can ha...
Migration Paths-Desktop/Web ApplicationDevelopment to Mobile Application DevelopmentDesktop/web developers can map their s...
.Net to iOS              Learn the platform fundamentals.                Learn:                     Starting with the     ...
–   Logcat usage                                     –   Introduction to DDMS                                     –   File...
Adapters and Widgets                –   Adapters                                         –   ArrayAdapters                ...
–   Basic UI Controls                                     –   Basics of user interaction                                  ...
Training ResourcesThe following table lists some useful resources for desktop/web developers to get started with buildinga...
Windows Mobile Applications              A quick guide to building Windows             http://msdn.microsoft.com/en-us  Fu...
–     The Titanium SDK lets you develop     http://msdn.microsoft.com/en-us                                               ...
ConclusionWith the wide popularity of smart phones and mobile applications, enterprise developers in many companiesare loo...
About RapidValue   RapidValue is a leading provider of mobility solutions to enterprises worldwide. Armed with a team of 1...
Upcoming SlideShare
Loading in...5
×

Making the transition from desktop application development to mobile application development a whitepaper by rapid value solutions - april'13

1,736

Published on

People rely on their smart phones, tablet devices and laptops for all kinds of activities. Consumers use their mobile devices for shopping and entertainment, while professionals rely on them as extension of their offices, to collaborate, engage with customers and get work done. As the power and capabilities of mobile devices continue to grow, taking advantage of powerful new mobile applications and the unique capabilities of mobile devices become even more valuable.

Many desktop/web developers (and their organizations) are eager to participate in the mobile revolution. RapidValue has been approached many times by desktop/web developers and CIOs, asking if they can transfer their existing desktop skills (or those of their staff) to mobile application development. We’ve created this paper to help them get started.

This paper provides a guide for enterprise desktop/web developers who are interested in becoming mobile developers. The paper examines the main technologies that desktop/web developers use today (Java, .NET and HTML) and various mobile development technologies (mobile web applications, native apps and cross-platform development frameworks. The paper also addresses the migration path depending on a developer’s current skill set and the mobile platform(s) you want your applications to run on.
In many cases, desktop/web developers already have a strong foundation to become successful mobile developers. We’ll look at the additional skills and knowledge they need to acquire, the differences between developing for desktop/web and mobile environments, as well as the requirements for specific platforms.
We’ll also examine resources that are available to help your desktop/web developers make a smooth and cost-effective transition.

Published in: Technology, Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,736
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
69
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Making the transition from desktop application development to mobile application development a whitepaper by rapid value solutions - april'13

  1. 1. MAKING THE TRANSITION FROM Desktop/Web Application Development to Mobile Application Development A RapidValue Solutions Whitepaper
  2. 2. ContentsExecutive Summary 3What Skills Do Desktop/Web Developers Have? 4What Skills Do Mobile Developers Need? 6Mobile Development Options 7The Mobile Mindset-Factors to Consider 8Migration Paths-Desktop/Web Application Development to Mobile Application Development 11From Desktop/Web to Mobile: An Eight-Week Plan 11Syllabus 12Training Resources 16Conclusion 19About RapidValue 20A RapidValue Solutions Whitepaper April - 2013 02 RapidValue Enabling Mobility
  3. 3. Executive SummaryPeople rely on their smart phones, tablet devices and laptops for all kinds of activities. Consumers use theirmobile devices for shopping and entertainment, while professionals rely on them as extension of theiroffices, to collaborate, engage with customers and get work done. As the power and capabilities of mobiledevices continue to grow, taking advantage of powerful new mobile applications and the unique capabilitiesof mobile devices become even more valuable.Many desktop/web developers (and their organizations) are eager to participate in the mobile revolution.RapidValue has been approached many times by desktop/web developers and CIOs, asking if they cantransfer their existing desktop skills (or those of their staff) to mobile application development. We’ve creat-ed this paper to help them get started.This paper provides a guide for enterprise desktop/web developers who are interested in becoming mobiledevelopers. The paper examines the main technologies that desktop/web developers use today (Java, .NETand HTML) and various mobile development technologies (mobile web applications, native apps andcross-platform development frameworks. The paper also addresses the migration path depending on adeveloper’s current skill set and the mobile platform(s) you want your applications to run on.In many cases, desktop/web developers already have a strong foundation to become successful mobiledevelopers. We’ll look at the additional skills and knowledge they need to acquire, the differences betweendeveloping for desktop/web and mobile environments, as well as the requirements for specific platforms.We’ll also examine resources that are available to help your desktop/web developers make a smooth andcost-effective transition. Definition: Enterprise desktop/web developers are those who build applications to be accessed via PC/Desktop. The application is either accessed through web browser or is installed on the system.A RapidValue Solutions Whitepaper April - 2013 03 RapidValue Enabling Mobility
  4. 4. What Skills Do Desktop/Web Developers Have?There are two main types of enterprise applications:– Web or “thin client” applications primarily execute on a remote server, with the user engaging with them through their browser (e.g. Google Gmail).– Desktop or “thick client” applications are installed on each device and execute on the device (e.g. Microsoft Outlook).Most enterprises use both.A number of technologies can be used for building both types of applications. The most popular are Java,.NET and HTML for both thin and thick client applications.Most enterprises have developers who are familiar with Java, .NET or HTML for building their solutions.These developers will also know the software stack and frameworks associated with each platform. Becauseof their popularity and their applicability to mobile, these are the platforms we will address in thiswhitepaper.JavaJava has two main flavors used to develop desktop and web applications:– Java Enterprise Edition (J2EE) for developing web applications– Java Standard Edition (JSE) for developing thick client desktop applicationsThere are also application development frameworks such as Spring1 and Hibernate1 which are most popularfor enterprise Java developers. These run on top of Java, and are used for building web and thick clientapplications.– Spring is an open source application framework and inversion of control container for the Java platform.– Hibernate is an object-relational mapping (ORM) library for the Java language, providing a framework for mapping an object-oriented domain model to a traditional relational database. Hibernate solves object-relational impedance mismatch problems by replacing direct persistence-related database accesses with high-level object handling functions.A RapidValue Solutions Whitepaper April - 2013 04 RapidValue Enabling Mobility
  5. 5. Microsoft .NETThe second part of the desktop/web development world is Microsoft’s .NET Framework. .NET1 is a softwareframework developed by Microsoft that runs primarily on Microsoft Windows. It includes a large library andprovides language interoperability (each language can use code written in other languages) across severalprogramming languages. Programs written for .NET Framework execute in a software environment known asCommon Language Runtime (CLR), an application virtual machine that provides services such as security,memory management, and exception handling. The class library and the CLR together constitute the .NETFramework.Web applications for the .NET Framework are developed using ASP.NET, while native applications aredeveloped using Windows Presentation Framework (WPF) and C#.– ASP.NET is a server-side Web application framework designed for Web development to produce dynamic Web pages– WPF is a computer-software graphical subsystem for rendering user interfaces in Windows-based applications– C# is a multi-paradigm programming language encompassing strong typing, imperative, declarative, functional, generic, object-oriented (class-based) and component-oriented programming disciplinesHTMLHyperText Markup Language (HTML)1 is the main markup language for creating web pages and other infor-mation that can be displayed in a web browser.HTML has gone through a number of revisions and experienced a variety of extensions. The most recentversion used is HTML5, which is also an attempt to define a single markup language that can be written ineither HTML or XHTML syntax. It includes detailed processing models to encourage more interoperableimplementations; it extends, improves and rationalizes the markup available for documents, and introducesmarkup and application programming interfaces (APIs) for complex web applications. HTML5 has also beenbuilt with consideration for low-powered devices such as smart phones and tablets. Source: Wikipedia definitions 1A RapidValue Solutions Whitepaper April - 2013 05 RapidValue Enabling Mobility
  6. 6. What Skills Do Mobile Developers Need?Mobile applications can be developed in three fundamental ways: mobile web, native or cross- platform.Each approach requires different skill sets. Mobile technology is also more fragmented compared to desktop,with four main platforms, each with multiple form factors, screen sizes, etc.Mobile Web AppThe application is built to run over the internet from a central server, from where it can be accessed by anydevice with a web browser.Technologies:– JavaScript– HTML5Native AppsThe application is built in its native code to run on a specific device and operating system. The app is down-loaded from an app store and resides on the device.Technologies:– iPhone and iPad: Objective C– BlackBerry: Java technologies– Android: Java technologies– Windows tablet and Windows phone: .NET / C# using the Microsoft Windows tablet SDKCross-Platform FrameworksThe application is built once using a cross-platform framework and run it on multiple mobile platforms afterfine-tuning for each platform. The application is downloaded from an app store and resides on the device.Technologies used with leading frameworks:– Appcelerator: JavaScript, HTML– PhoneGap: JavaScript, HTML– IBM Worklight: JavaScript, HTML– RhoMobile: Ruby on RailsA RapidValue Solutions Whitepaper April - 2013 06 RapidValue Enabling Mobility
  7. 7. Mobile Development OptionsDue to differences in underlying technology, each development approach has inherent advantages,drawbacks and appropriate use cases. Careful analysis is required to ensure that an application is built usingthe right technology for the functionality required. The following table summarizes the different approaches: Development Approach Native Cross-Mobile Platforms Mobile Web Definition Build the app using native Build once, deploy on multiple Build using web technologies: and Tools frameworks: platforms as native apps: – RhoMobile – HTML5 – iPhone SDK – Titanium Appcelerator – Sencha – Android SDK – PhoneGap – JQuery Mobile – Windows Phone SDK – Worklight – Etc. – Etc. Underlying – iPhone: Objective C – RhoMobile: Ruby on Rails – JavaScript, HTML Technology – Android: Java – Appcelerator: JavaScript, HTML – Windows Phone: .NET – PhoneGap: JavaScript, HTML – Worklight: JavaScript, HTML Deployment App stores App stores Over the web Key Use Cases – Generic user experi- – Apps requiring high-end – Simpler apps, more ence, performance user experience, more informational in nature depends on Internet transactional in nature – Offline Usage connection – Large user base on one – Multiple device types – Distributed user base device (e.g. physicians with distributed across key users across smart phone iPad) – Works well for a number of platforms – Offline usage enterprise applications that do – Need to maintain single – Apps requiring extensive not require heavy device code base device and/or OS functions – Moderate amount of functions device functionsFor more information about the different development options, please refer to the RapidValue Whitepaper“How to Choose the Right Architecture for Your Mobile Application”– http://www.rapidvaluesolutions.com/whitepaper/A RapidValue Solutions Whitepaper April - 2013 07 RapidValueEnabling Mobility
  8. 8. The Mobile Mindset-Factors to ConsiderDeveloping for a mobile device platform is not just a technology change; it requires a different mindset andnew design skills. There are certain important factors which developers need to consider that are inherent tosmart phones and other mobile devices, including:– Device Fragmentation – User experience– Screen size – Memory capacity– Screen density – Battery lifeMultiple Platforms and DevicesTraditional desktop and laptop PCs are Windows-based with a standard screen size, features and form factor.The mobile landscape is much more fragmented, with four main platforms (Android, iOS, Windows Phoneand BlackBerry) that are continually evolving.Accordingly, building mobile applications requires more factors to consider when planning, including whichdevice platform to build first, what mobile technology option to choose, what capabilities should the mobilephone support, and the need for a long-term roadmap with deployment on additional, next platforms. Incontrast to traditional Windows-based desktop development, mobile developers need to think about creatingapplication code for multiple platforms-Android, Windows Phone, iPhone and BlackBerry. Designing anapplication that is optimized for various devices with different screen densities and screen sizes is even morechallenging.Screen SizeEnterprise applications designed for a desktop or laptop client work with a screen size that far exceeds thatof mobile devices. How to design for a device that fits in your pocket requires simplification and a rethinkabout navigation. While a desktop application may have tabs, options and links on all sides of the screenand in line with text, for mobile you need to concentrate on the immediate function, reducing the number ofoptions to only those needed for the immediate task or feature.User InteractionInstead of a mouse and keyboard, there is a quite different mode for user input: touch. Even a single touchcan involve a variety of interactions, including single-tap, double-tap, long touch, move and fling. All theseactions have to be captured.A RapidValue Solutions Whitepaper April - 2013 08 RapidValue Enabling Mobility
  9. 9. Desktop PCs and laptops provide keyboards for data entry, allowing comfortable, fast typing with both handsand all fingers. Since mobile devices do not have that capability, even those with keyboards, manual dataentry should be minimized. Instead, wherever possible, provide options for selecting instead of asking forspecifics through data entry.Unlike clicking links with a mouse, tapping links using your fingers on a touchscreen mobile device is noteasy. Users can easily activate a link they did not intend to tap and accidentally land on an undesired page.Bigger bars, tabs or buttons let users tap with more precision.Screen DensityThat’s not quite the same as far as the phones go. Devices available from different manufacturers vary from120 dpi for the lower-end HTC Tattoo / Wildfire and 240 dpi for the higher end Droid series—a difference of100% in screen density. This means that using hardcoded values for pixels and a single set of images willlead to one of two things on a higher end phone: either your UI will be up-scaled and fuzzy, or the controlswill be too small to allow comfortable targeting with a finger. Therefore you need to bundle multipleresolution images and use display metrics to scale your custom drawing code.Integration with Phone FunctionsSmart phones are sophisticated communication devices. Making phone calls is their most basic function.While mobile platforms place many limitations on design and content, they also open up new opportunitiesthat traditional desktops cannot provide. For example, integration with phone functions such as direct callingand text messaging lets users select a phone number from a list, then call or text that number withouthaving to type it.Another example: capabilities such as GPS can be integrated into location based services like mobile search.Many mobile devices can automatically detect user presence and provide them with local search results,creating powerful opportunities for businesses to promote their offerings based on a person’s proximity totheir place of business and their immediate intent.Limited CPU/Memory/Battery ResourcesMobile devices lack the computing power and memory capacity of most desktop and server systems. Devel-opers need to write algorithms and perform code optimization to support the mobile device capacity. Forexample, 1 GB of memory is a constraint in mobile phones which is not found in today’s desktop applica-tions.A RapidValue Solutions Whitepaper April - 2013 09 RapidValue Enabling Mobility
  10. 10. Another issue that enterprise applications do not have to address is battery life. With enterprise applications,you can have complex algorithms running on the server because there are no battery constraints. But whenit comes to mobile, a complex algorithm or suboptimal code will drain the battery quickly. When designingalgorithms, developers need to think about battery consumption, and design for optimal usage. There is another approach to building applications which works efficiently across multiple device types including desktops, mobile phones and tablets. The RapidValue whitepaper “Responsive Web Design vs. Mobile Web App—What Approach Is Best for Your Enterprise?” explains the difference between Mobile Web App and Responsive Web Design, and provides a framework for resolving some of the key questions decision makers have. These questions include what factors to consider when choosing between Responsive Web Design and Mobile Web App, and what types of industries Responsive Web Design is most suitable for. As the paper guides you in how to make the right choice, it draws upon RapidValue’s experience helping enterprises succeed in the complex and evolving mobile ecosystem. Download the whitepaper: http://www.rapidvaluesolutions.com/responsive-web-design-whitepaper/A RapidValue Solutions Whitepaper April - 2013 10 RapidValue Enabling Mobility
  11. 11. Migration Paths-Desktop/Web ApplicationDevelopment to Mobile Application DevelopmentDesktop/web developers can map their skill sets to mobile technology. The following are typical migrationpaths: Current Development Languages/ Platforms Migrate to Mobile Technology JavaScript, HTML Mobile Web App (HTML5),Cross-platform Mobile Apps (PhoneGap, Appcelerator, Worklight) Java Native Apps (Android, BlackBerry) .Net, C# Native Apps (Windows Phones, Windows Tablets) Objective C Native Apps (iPhone, iPad) Ruby on Rails Cross-platform Mobile Apps (Rhomobile) C# using Mono Framework iBuildApp (iOS) DESKTOP/WEB TO MOBILE MIGRATIONVarious training programs, online tutorials, study materials, resources and learning tools are available foreach mobile platform to help desktop/web developers acquire the skills they need. The following sectionsprovide more details about these learning resources.From Desktop/Web to Mobile: An Eight-Week PlanThis plan assumes you are a desktop/web developer with good knowledge in Java or .NET. This sectionillustrates two scenarios: 1) how a Java developer can become an Android application developer in eightweeks and 2) how a .Net developer can become a mobile application developer for iOS devices in eightweeks. Migration Path Week 1 Week2 Week3 Week4 Week5 Week6 Week7 Week8 Java to Android Learn the platform fundamentals. Learn: Starting with the Completely (Refer to the detailed Android – How to design for POC (Proof Of review syllabus in the next section.) performance Concept), build a and test – Android devices dummy application the dummy – Device versions application – Factors such as memory, battery life, screen size, etc. of the devicesA RapidValue Solutions Whitepaper April - 2013 11 RapidValueEnabling Mobility
  12. 12. .Net to iOS Learn the platform fundamentals. Learn: Starting with the Completely (Refer to the detailed iOS syllabus in – How to design for POC (Proof Of review the next section.) performance Concept), build a and test – iOS devices dummy application the dummy – Device versions application – Factors such as memory, battery life, screen size, etc. of the iOS devicesSyllabusThe following syllabus will help enterprise desktop/web developers learn what they need to know to buildapplications for Android and iOS devices. Android Devices Session Introduction – What is Android? – Setting up the development environment – Dalvik virtual machine and .apk file extension – Fundamentals – Basic building blocks: activities, services, broadcast receivers and content providers – UI components: views and notifications – Components for communication: intents and intent filters – Android API levels (versions and version names) Application Structure (in detail) – AndroidManifest.xml – Uses-permission and uses-SDK – Activity/services/receiver declarations – Resources and R.java – Assets – Android training course syllabus – ipsr solutions – ltdValues – strings.xml – Layouts and drawable resources – Activities and activity lifecycle – First sample application – Deploying sample application on a real device Emulator – Android Virtual – Launching emulator Device – Editing emulator settings – Emulator shortcutsA RapidValue Solutions Whitepaper April - 2013 12 RapidValue Enabling Mobility
  13. 13. – Logcat usage – Introduction to DDMS – File explorer – Second app (switching between activities) – Develop an app for demonstrating the communication between intents Basic UI design – Form widgets – Text Fields – Layouts – RelativeLayout ,TableLayout, FrameLayout, LinearLayout – Nested layouts [dip,dp,sip,sp] versus px Menu and Preferences – Shared preferences – Preferences from xml – Option menu – Context menu – Sub menu – Android training course syllabus – ipsr solutions – ltd menu from xml menu via code UI Design – Time and date – Images and media – Composite – AlertDialogs and Toast – Popup – Tabs and TabActivity – styles.xml – colors.xml: declaring colors and drawables – Drawable resources for shapes, gradients (selectors) – Shapes drawables – State drawables – Transition drawables – 9 Patch drawables – Style attribute in layout file – Applying themes via code and manifest file – Examples SQL Lite Programming – SQLiteOpenHelper – SQLiteDatabse – Cursor – Content providers – Defining and using content providers – Example: sharing database among two different applications using content providers – Reading and updating contacts – Reading bookmarksA RapidValue Solutions Whitepaper April - 2013 13 RapidValue Enabling Mobility
  14. 14. Adapters and Widgets – Adapters – ArrayAdapters – BaseAdapters – Example: Efficient Adapter – ListView and ListActivity – Custom listview – GridView using adapters – Gallery using adapters Advanced Topics – Broadcast receivers – Services and notifications – Toast – Alarms – Custom Toast – Custom dialogs – Custom Tabs – Custom animated popup panels – Other components – Threads running on UI thread (runOnUiThread) – Worker thread – Handlers and Runnable – AsynTask (in-detail) iOS Devices Session Introduction – Traditional vs. iPhone development – Capabilities – Constraints – Phone software architecture – Setting up iPhone app development – Pointers – Arrays – String operations – malloc, calloc – Data structures – Examples and Lab UI Design – Creating projects in Xcode – Organization of your project – Interface Builder – Learning the basics of Nib file – Working with Objective-C, Cocoa, Interface Builder and Xcode – The MVC pattern – Learning the model, the controller and the view – Cocoa TouchA RapidValue Solutions Whitepaper April - 2013 14 RapidValue Enabling Mobility
  15. 15. – Basic UI Controls – Basics of user interaction – Delegation – Taking keyboard inputs – Handling events – Selecting table items – Editing table items – Searching a table – Navigation – Various UI controls – Using labels, buttons, sliders – Working with alerts – Working with multiple views – Issues with long running tasks – Multiple threads – Issues with threading and UI – NSOperation – NSQueue – Creating a responsive application – Tabs – Pickers – Table views – Tapping – Tracing touches – Multi-touch gestures – Playing video – Audio recording and playing – Camera Device Capabilities – Accelerometer – GeoLocation – Application sandbox – Data storage and archiving – Navigating the file system – Reading and writing files – Working with database – Core data – Connecting to the internet – Working with Web Services – Understanding settings – Working with Settings Bundle – Securing settingsA RapidValue Solutions Whitepaper April - 2013 15 RapidValue Enabling Mobility
  16. 16. Training ResourcesThe following table lists some useful resources for desktop/web developers to get started with buildingapplications on platforms such as Mobile Web, iOS, Android, BlackBerry and Windows Phone. Resource Description URL How to Build Mobile Applications for This course teaches developers how to http://cs76.tv/2011/spring/ iOS and Android by Dan Armendariz build mobile apps for Android and iOS, and David J. Malan, Instructors at and how to deploy them in Android Harvard Extension School Market and the App Store. Developers learn how to write native apps for Android using Eclipse and the Android SDK, how to write native apps for iPhones, iPod touches and iPads using Xcode and the iOS SDK, and how to write web apps for both platforms. iPhone and iPad Development This audio podcast explains the tools and https://itunes.apple.com/us/itunes-u by Paul Hegarty from Stanford APIs (updated for iOS 5) required to /ipad-iphone-application-development University build applications for the iPhone and iPad /id473757255?ls=1 platform using the iOS SDK. Topics covered include user interface designs for mobile devices, unique user interactions using multi-touch technologies and object-oriented design using the model-view-controller paradigm, memory management and the Objective C programming language. Other topics include the object-oriented database API, animation, multi-threading and perfor- mance considerations Mobile Application Development on These videos from the Google I/O http://www.google.com/events/io Android Platform by Google conference cover 90+ sessions featuring /2010/sessions.html in-depth content about a number of technologies and developer products. Object-Oriented Analysis and This course presents an introduction to http://www.cs.colorado.edu/~kena Design Learning Material by Ken the design and construction of software /classes/5448/s11/lectures/ Anderson, Associate Professor and systems using techniques that view a Associate Chair of the Department system as a set of objects that work of Computer Science, University of together to realize the systems function- Colorado, Boulder ality. Includes examples of object-orient- ed systems written in Java, Python, Ruby and Objective-C. It also explains the Android and iOS frameworks as examples of large-scale, modern frameworks used by developers worldwide.A RapidValue Solutions Whitepaper April - 2013 16 RapidValue Enabling Mobility
  17. 17. Windows Mobile Applications A quick guide to building Windows http://msdn.microsoft.com/en-us Fundamentals by Microsoft mobile applications. Developers can /windowsmobile/bb264318.aspx reuse their existing Visual Studio and .NET development skills and server infrastructure to extend their applications to mobile devices. Tutorial: Creating your First A guide to creating application for https://developer.blackberry.com Application by BlackBerry Developer BlackBerry tablets. The tutorial guides /html5/documentation/tutorial_ Forum(HTML5 Web Works) developers to: create_first_app_intro_1969476_ 11.html – Create a basic web application that uses JavaScript, HTML5 and CSS – Create a button that triggers an event – Retrieve the GPS coordinates for the users location – Run and test the application on the Ripple emulator – Set up and create a BlackBerry WebWorks configuration document (config.xml) – Package the application using the Ripple emulator – Launch the application on the BlackBerry Tablet Simulator A Guide for Android Developers by Lessons on how to use basic platform http://developer.android.com Android Developer Forum features that leverage alternative /training/basics/supporting-devices resources and other features so that an /index.html app can provide an optimized user experience on a variety of Android compatible devices, using a single application package (APK) Developer’s Guide to Design, Code, iOS Development Center—technical https://developer.apple.com/ Build, Innovate by Apple resources for developing innovative apps for iOS User Guide to Build Cross-platform PhoneGap is a free and open source http://phonegap.com/ Apps Using Web Technologies by framework that allows developers to PhoneGap create mobile apps using standardized web APIs for various platforms. This guide helps developers easily create apps using web technologies (HTML, CSS and JavaScript). Quick Start Guide for Building A developer’s guide which includes http://docs.appcelerator.com Cross- platform Mobile Apps Using documents on Titanium SDK and /titanium/latest/ the Titanium Platform by Titanium Studio: AppceleratorA RapidValue Solutions Whitepaper April - 2013 17 RapidValueEnabling Mobility
  18. 18. – The Titanium SDK lets you develop http://msdn.microsoft.com/en-us native, hybrid and mobile web /windowsmobile/bb264318.aspx applications from a single codebase – Titanium Studio is an extensible, Eclipse-based IDE for building Titanium applications and web applications Worklight Mobile Application A cross-platform application development http://www-01.ibm.com Platform by IBM tool which provides an open, /software/in/worklight/ comprehensive and advanced mobile application platform for smart phones and tablets, helping organizations of all sizes efficiently develop, connect, run and manage HTML5, hybrid and native applications. The platform consists of a comprehensive development environment, mobile-optimized middle- ware and an integrated management and analytics console, supported by a variety of security mechanisms. http://jquerymobile.com Build Mobile Web Applications A quick start guide for this touch-opti- /demos/1.2.0/http://www.motorola using jQuery Mobile mized UI framework built with jQuery .com and HTML5. jQuery Mobile can be used /Business/US-EN/Business+ to build sites and apps that are accessi- Product+and+Services/ ble on all popular smartphone, tablet and Software+and+Applications/ desktop devices. RhoMobile+Suite Develop Mobile Web Applications A user guide to build mobile web apps http://docs.sencha.com/touch/2-0/ using Sencha 2.0 using Sencha 2.0. It also includes API documents for developers. Develop Cross- platform Apps Tutorials for developers to build cross- http://xamarin.com/monotouch Using C# and .Net Technology platform applications using the Xamarin development platform.A RapidValue Solutions Whitepaper April - 2013 18 RapidValueEnabling Mobility
  19. 19. ConclusionWith the wide popularity of smart phones and mobile applications, enterprise developers in many companiesare looking to contribute to the mobile revolution. This revolution is influencing many companies to shifttowards a “Mobile First, Desktop Second” strategy for their business. However, the shift from desktop tomobile requires developers to refocus-not completely away from desktop application development, butcertainly with an inclination towards mobile.Enterprise desktop/web developers within an organization who are interested in becoming mobiledevelopers need to understand that developing for mobile is not just a technology change; it requiresacquiring a different mindset and new design skills. There are certain hurdles for enterprise developers toovercome and several important factors to consider when building applications on mobile platforms. Some ofthese factors are fragmentation, screen size, resolution, user experience, memory space, battery life andcapabilities inherent to smart phones and other mobile devices.RapidValue has a team of domain experts and mobility consultants to help you build innovative andcomprehensive mobile applications for your enterprise. If you’d like more information on this topic or needguidance on building your first mobile application, please contact us at marketing@rapidvaluesolutions.comA RapidValue Solutions Whitepaper April - 2013 19 RapidValue Enabling Mobility
  20. 20. About RapidValue RapidValue is a leading provider of mobility solutions to enterprises worldwide. Armed with a team of 175+ experts in mobility consulting and application development, along with experience delivering over 200 mobility projects, we offer a range of mobility services across industry verticals. RapidValue delivers its services to the world’s top brands and Fortune 1000 companies, and has offices in the United States and India. www.rapidvaluesolutions.com www.rapidvaluesolutions.com/blog +1 877.690.4844 contactus@rapidvaluesolutions.com RapidValueMobility Information Series – Jan 2013 - 2013 A RapidValue Solutions Whitepaper April RapidValue Enabling Mobility Enabling Mobility

×