Mobile Development
Revision as of 17:08, 12 October 2019 by Adelo Vieira (talk | contribs) (→Native Application Frameworks)
Contents
Device Considerations
Platform
Will you be developing for multiple platforms?
- Android
- iOS
- Windows 10 Mobile
- Blackberry 10
- Firefox OS
- Sailfish OS
- Tizen
- Ubuntu Touch
- CynaogenOS
Hardware
- Depending on the device, the specifications of hardware can be very different
- Some devices may not have certain components
- Vintage of components, such as processors and busses will make a difference to the chosen route
Language
- What programming languages are supported natively by the device?
- What language suits what you want to do best?
- Do you need a combination of languages for collaborative tasks?
Form factor
- Most platforms/OSes run on multiple devices, some more than others
- Can your application be utilised on all form factors regardless of screen/size?
Frameworks
Native Application Frameworks
Native application frameworks allow developers to access the native platform/OS API directly through code and develop their applications directly to the platform standards and practices
Pros
- Without other intermediate layers, this provides the best application per device in terms of performance
- There is no third-party dependence on access to updates and bug fixes
Cons
- As a native application is written and compiled for a specific platform/OS, deployment on another platform typically requires the maintenance of a totally separate project for each of the supported platforms.
- How the application is distributed can be different for each platform, requiring the maintenance of a separate distribution channel per platform
Hybrid Frameworks