Sunday, December 3, 2017

Choices for cross-platform mobile development

Although it’s possible to develop a native app for each platform individually (such as developing with
Objective-C/Swift for iOS and/or Java for Android) and to deliver a great UX, when targeting several
platforms, the costs of such an approach can be prohibitive, both in terms of time to market and TCO across the app’s lifetime. To help control and lower these costs, different cross-platform development
technologies have evolved to produce platform-specific app packages from a shared code base.

For cross-platform or code-sharing solutions, Visual Studio provides a best-in-class IDE for developers on PCs. However, developers can also use cross-platform editors, such as Visual Studio Code or Xamarin Studio on a Mac. These tools focus on making the developer as productive as possible, by tightening the iterative workflow, from editing with IntelliSense to debugging with cross-platform tools and emulators.

Developers have a range of potential solutions for their cross-platform mobile apps:

 Mobile web Apps are built with HTML, CSS, and JavaScript to run in a mobile browser, and apps
are deployed to a web host rather than appearing in platform app stores. Access to platform APIs
is limited to those that are exposed through HTML5. Because this approach uses exactly the same
skills and technologies as when developing regular web apps with single-page application (SPA)
approaches with a responsive design, this ebook is not focusing on it. There are many other
available resources that focus on web development.

 Hybrid using Visual Studio Tools for Apache Cordova or Visual Studio Code with extensions
for Cordova Build hybrid HTML/JavaScript apps (using web development skills) by taking
advantage of a single shared JavaScript API that provides full code reuse across any device, and
that offers access to native device capabilities through Cordova plug-ins. Hybrid technologies fit
especially well when creating B2E and B2B apps, although B2C is also a possibility, depending on
the UI requirements. With the hybrid approach, you can share components with websites and reuse web server–based apps with “hosted web apps” approaches based on Cordova.

 Native using C# and .NET with Xamarin in Visual Studio and Xamarin Studio Build stunning
native apps that share nearly 100 percent of code across iOS, Android, and Windows with Xamarin
Platform. To increase speed of development and efficiency, developers can use the Xamarin.Forms
API to quickly build common platform-specific UI elements, or they can write directly to platformspecific APIs in C# for maximum control. With Xamarin Platform, C# developers can do anything Java, Objective-C, and Swift developers can do—with a single code base. Native Xamarin apps are a great fit for B2C apps or for enterprise apps requiring the highest levels of performance,
security, and device access.

 Native, shareable components using C++ or C# (Portable Class Libraries [PCLs]) Build
native components and libraries for mobile apps for any device with C++ in Visual Studio. Create
impressive 3D graphics with OpenGL in C++ and embed components into Xamarin apps, or reuse
legacy C++ logic/code by creating cross-platform libraries that can be reused from mobile apps.

 Native games with C#/Unity Build games with C# and Unity for all platform targets, with Visual
Studio and the power that the IDE brings to bear.

 Visual Studio Code with extensions for React Native Create native mobile client apps with a
nice development environment for React Native projects. You can debug your JavaScript code,
quickly, run React-native commands from the command palette, and use IntelliSense to browse
objects, functions, and parameters for React Native APIs.

 Data-driven enterprise apps Citizen developers, including line-of-business analysts and their
counterparts in IT, can produce business apps for all platforms with Microsoft PowerApps using a
no-code authoring tool with support for easy connections to back-end enterprise systems and
data.

Visual Studio professional and enterprise SKUs also integrate with ALM tools in Visual Studio Team
Services or Team Foundation Server.

Source Of Information : Microsoft Platform and Tools for Mobile App Development

No comments: