Mobile application development is currently at a high with a multitude of development frameworks, server hosting services, and UI design tools available in the market – many of which are mature, streamlined, affordable, and feature-rich. Besides, the BYOD trend has triggered the demand for business applications. Now, IT teams and enterprise heads just need to figure out the kind of mobile application(s) their business needs.

Native, hybrid or web appsNative, web-based or hybrid – Selecting the best approach

The decision to go with native mobile applications, web-based apps or hybrid mobile solutions can be taken by considering the following factors:

  • Complexity of the application – informational, game or services such as banking, etc.
  • Goal of the application – promotional (short-term), service related (long-term), etc.
  • Customization level
  • Branding integration
  • Integration with enterprise systems
  • Performance expectations
  • Budget
  • Timeline

Native mobile applications are still the best

Native mobile applications offer the best functionality in terms of performance, usage of device features, complexity, and customization. However, they require the skills of expert programmers in specific mobile vendor SDKs and IDEs; many hours of development time per targeted OS (Typically, businesses target Android, iOS, Windows Phone, at least.); and high cost of development.

Android application developers must use the native Android Development Tools (ADT) Java programming plug-in with their IDE of choice, usually Eclipse to create apps. iOS application developers work with Objective-C on the Xcode IDE. Windows Phone application developers code in C#/.Net and rely on Visual Studio Express for Windows Mobile and Microsoft’s Windows Phone SDK.

Web-based applications are the easier option but with limitations

Web-based mobile applications run on mobile browsers and offer the same look and feel and functionality across devices. They are easier, cheaper and faster to develop as all web programmers with JavaScript, HTML5 and CSS3 skills can build the code and deploy apps. Application updates are also easier to distribute as it’s all on the web. Lately, web app developers use WebKit browser shells that remove navigation or status bars from the app’s UI. These shells are native apps with access to low-level device features, such as geolocation; enabling a web app to simulate the look and feel of a native app.

However, this approach is best for simple apps as performance lag starts showing as complexity increases – graphics, processor load, etc. Moreover, the dependence on network availability also poses a challenge.

Web application developers use JavaScript frameworks such as JQuery Mobile, The-M-Project or Sencha Ext JS. The learning curve is minimal.

Hybrid mobile applications are a mid-way solution but limitations still exist

Hybrid mobile applications use a mix of both approaches with a web application running inside a hybrid container that is native to various mobile OS. The container allows greater complexity and sophistication that a simple web app (even with WebKit) but again, the container is proprietary to the container vendor who also maintains it. Development costs fall midway between native and web app development but the development is faster and the app has greater device fidelity.

Since the container is native to a mobile OS, an app can provide a different user experience on Android, iOS and Windows Phone, taking advantage of the inherent qualities of each OS.

Some top notch solutions that support hybrid mobile development include Sencha Complete: Team, Titanium Mobile SDK from Appcelerator, and MobileFrame.

To conclude, the best mobile approach is based on your requirements and expectations from the mobile application. Don’t go overboard with a native app if your requirements are simple. At the same time, don’t compromise with a web or hybrid app if you want a complex and feature-rich app that’s going to be around for a long time.

Enhanced by Zemanta

The Office 2013 Preview was exciting for Microsoft users as well as custom application developers. The preview clearly demonstrated Microsoft’s efforts to embrace cloud and mobility, as well as include added capabilities and features that will help enterprise app developers create SharePoint and Word applications that are more complex and useful for end-users. At the same time, the 2013 version gives greater control to IT admin teams for controlling access of apps to users.

Create apps with any web language

Office 2013 is based on the cloud application model. Apps run on the cloud and render on the users’ laptop, PC or mobile device. Web developers can create apps using any web technology including HTML5, JavaScript, OAuth, REST, OData and CSS3.

Integrated web applications

Web applications can be inserted into Office and SharePoint applications. These apps can collect information from the Internet, collate and format it, and insert it into an Excel or Word application, as an example, in the form of graphs, charts, maps, etc. The search on the internet can be based on keywords associated with the document. By linking this information to the document, other users can also access external data.

Web apps can appear as task panes in documents or be inserted online. Multiple web apps can be integrated based on the complexity of requirement.

All in the Cloud

Deploying SharePoint 2013 and Office 2013 apps to end-users is a breeze as everything is on the cloud. The cloud could be Microsoft Azure or any other. Along with deploying apps on the cloud, app developers can also integrate apps used to create documents into the final app. This allows other users to reuse the app to create documents and add to the main application.

Supported application types

Apps for Office 2013 are supported on Office 2013 Preview rich clients and some corresponding Web Apps. Developers need not design separate apps for different environments or applications thereby also supporting a consistent user interface across desktop and web browser for end-users.

Application stores

Both Office 2013 and SharePoint 2013 have app stores wherein app developers can submit applications for approval. Once approved, the app is available for purchase with 80% of the revenue going to the developer and 20% to Microsoft. The app store gives business developers access to a range of applications that can be leveraged to add to the functionality of existing apps. Learn more here if you want to sign up for Office 365 for developers.

Microsoft Office 2013 and SharePoint 2013 are expected to hit shelves by the end of 2012 or first quarter of 2013. From what we know about the products, it does look like Microsoft will deliver value to the customer straight out of the box.

 

Enhanced by Zemanta

MOJITO! Not the nice Cuban cocktail but Yahoo’s, supposedly equally nice, MVC framework for building high-performing device independent web apps. Mojito applications are written in JavaScript and run on both client and server (via Node.js). Yahoo has published the Mojito code under a permissive BSD open source license that allows you to use the code to build your own applications, even for commercial use.

What Yahoo is trying to do here is build a developer community to contribute to the growth of Mojito apps and other Cocktails applications. Yahoo Cocktails is a JavaScript-based online as well as offline, multi-device, cloud-ready, Web application platform that offers features such as internationalization, bucket testing, command-line tools, and scaling. It allows you have a common codebase for multiple device implementations.

What does Yahoo offer with Mojito?

For Node.js supporters, Mojito will help in higher adoption of the technology (read more about Node.js here). The framework offers the following features:

  • Local development environment and tools
  • Easier and faster development with the use of one language for client server and server database interactions
  • Library for simplifying internationalization & localization (based on YUI 3)
  • Integrated unit testing
  • Device specific views based on user-agent
  • One codebase for client or server execution
  • Ability to write HTML and CSS so pages function even if JavaScript is disabled on the client
  • As a module of Node.js, Mojito lets you leverage the scalability and speed of Node.js, its core modules and npm modules
  • Extensive API with modules for executing code, making REST calls, handling cookies and assets, accessing parameters and configuration, and more
  • Command line tool to run unit tests, create documentation, sanitize code with JSLint, and build projects for iOS and Android applications

Mojito applications contain JSON configuration files and directories for storing JavaScript, HTML, and CSS. The configuration files are used to define relationships between code components, assets, routing paths, and defaults. They are available at the application and ‘mojit’ level. Mojits are the basic unit of composition and are reused in a Mojito application. They include JavaScript and markup, and follow the MVC pattern. The directory structure of a Mojito application reflects the MVC architecture and separates resources, assets, libraries, middleware, etc.

Mojito has already been used to develop applications. Yahoo’s Livestand, a magazine reader application for the iPad, and the Fantasy Premier League Football game application are some examples. By open-sourcing the MVC framework, Yahoo hopes to develop improved standards for the development of optimized Web applications and mitigate partial connectivity issues.

Want to give it a try? Download Mojito from GitHub.

Enhanced by Zemanta
 Page 1 of 2  1  2 »

Switch to our mobile site