Mobile app development tools: A buyer's guide
A collection of articles that takes you from defining technology needs to purchasing options
Companies are no longer running on single platforms such as Windows. Today, your company supports phones, tablets and emerging technologies such as smartwatches and the promise of highly connected devices and sensors known as the Internet of Things. Many enterprises are now supporting many platforms with the leaders being Windows, Web, Apple's iOS and Google's Android. The goal of this article is to showcase cross-platform app development tools that are available now and to help you determine which application development software is best for your company.
The state of cross-platform app development in the enterprise
In the late '90s, Java was released with the tag line, "Build Once, Run Anywhere." The concept was simple: use one development tool for the different environments being supported at the time. Today, your company needs to support tools that will build software for an ever-increasing number of platforms and device types.
A large number of companies have developed tools that extend the premise of Java's promise with tools you can use for cross-platform app development. These cross-platform tools can be split into the following categories:
- Codeless tools -- tools that a power user or business analyst can use to create a mobile app rapidly
- Developer cross-platform -- advanced tools that use languages such as C# to create cross-platform enterprise solutions
Here, we will focus on the third branch of that tree, covering cross-platform app development products.
The benefits of cross-platform app development
Although you may need to exert caution when leveraging cross-platform environments, there are clear reasons many companies are choosing to use them:
- One development team can build solutions for your organization irrelevant of mobile device type
- It is easier to learn how to use one development tool than many -- and it keeps your costs down
- Most cross-platform tools are maturing quickly -- many of the features you need in enterprise mobile apps (barcode scanning, image recognition, forms, data connection and text-voice) have long been included in the core of the cross-platform tools
Having the ability to create apps that can be delivered very quickly to many platforms is a huge win for cross-platform app development tools. This is very important for small to midsize businesses (SMBs) that do not have budget to support mobile developers for Android, iOS and Windows. Indeed, even large companies can supplement smaller project development with cross-platform tools.
Here is a list of surefire tools you can use for cross-platform app development:
- PhoneGap/PhoneGap Build -- a free product from Adobe largely based on Apache Cordova
- IBM Worklight -- a modified version of Apache Cordova with additional features to support IBM-specific tools through APIs built into the product
- Xamarin -- used to build cross-platform apps with C#
But understanding how each product works is only the beginning. You need to understand which is the best application development software for your company.
Which tools work best for your company
There are many different types of companies and the current mobile development tools give you many choices. The following are guidelines you can use when selecting tools for your company:
- Small companies (fewer than 50 people): When you have a small team working to deliver value to your clients, you will want to focus on mobile tools that you can launch very quickly without having to support the cost of an expensive development team. To this end, you will want to leverage apps already available in the public app stores or commercial off-the-shelf (COTS) products. The goal is to have tools you can deploy immediately and provide value to your teams.
- Midsized companies (up to 500 people): Medium-sized companies will face the challenge of having to build apps for both iOS and Android due to a mix of staff and consumer needs. Cross-platform technologies such as Xamarin or Appcelerator work well in this type of environment. The use of C# in Xamarin will make it easier for .NET-based teams to migrate to mobile.
- Large Fortune 1,000 companies: The demands for larger companies are obviously more complex than SMBs because large, back office systems and the need for sophisticated security demand more complex apps. Due to this, it is highly recommended to have a multi-tier approach to app development. For small teams, choose a cross-platform tool; mission critical apps should be developed with native tools; and consumer-facing public apps should also be developed with native app development tools to leverage the latest security features in the mobile OS.
- When security is a high concern in your apps, you will want to build native apps and potentially combine the deployment of the apps with a mobile application management product.
- When speed of delivery is the highest concern, you will want to leverage a combination of COTS products with template apps your team has written that can be repurposed. Embarcadero,Kony, Salesforce, Sencha, Telerik, IBM Worklight, Adobe PhoneGap, Xamarin and SAP all have tools that fall into this category.
- When cost is the highest concern, open source technologies are a great option. Apache Cordova with HTML5 development will be a good choice.
- When support for three or more mobile platforms is critical, you will want to focus on cross-platform app development tools. The leader in this category is Apache Cordova. A few of the products listed above are built on Apache Cordova.
The tools for mobile development are maturing rapidly. It is worth reviewing the new tools every six to 12 months to see which will work best for your company.
Leveraging Apache Cordova
Apache Cordova, an open source cross-platform app development product, is used in tools from IBM, Adobe and SAP. Cordova is popular largely because developers can build apps with HTML5 technologies and circumvent the need to learn different native technologies such as Swift and Java for iOS and Android development. The build code for Apache Cordova is run inside Visual Studio, XCode or Eclipse depending on whether you are building an app for Windows Phone, iOS or Android. Each platform supports extensions or plug-ins that give developers a way to extend functionality in HTML to support native features such as access to Camera, local storage and so on. Indeed, developers can write custom plug-ins to access new features such as TouchID in iOS.
Many organizations will have a Web development team. IBM's Worklight, Apache Cordova and PhoneGap are great for these types of teams. You can leverage your investment in HTML technologies directly with these tools.
The goal is to deliver value for mobility in your organization as companies move from a PC-centric world to one where you need to have mobility, too.
What to watch out for
Cross-platform app development tools are great for proofs of concept. You can build out an app quickly and have users using their phones to get work done, but there are things you do need to watch out for:
- You still need an Apple Mac to build iOS apps
- Cross-platform app development tools are always playing catch-up to rapidly changing mobile operating systems
- Cross-platform tools have a history of performing badly when the apps become more complex
Mobile application development for any enterprise is not easy. You must support Apple's iOS and Android and, if Microsoft plays its cards right, Windows, too. Add to the challenge support for phones, tablets, wearables, cars, TVs and even more devices, and the world of mobile gets even more complex. Considering these features and use cases, you should have enough in your arsenal to help you make the right decision for your organization when buying mobile application development software.
You're developing applications, do you need to manage their lifecycle?
No-code or low-code tools might be right for you.
Is your mobile app dev strategy effective?