At Ventive, we prefer ReactNative (RN), an open source framework for developing mobile applications for iOS and Android rapidly.
ReactNative was originally developed by Facebook and has been widely accepted in the mobile development community. Since its introduction in 2015, it quickly overtook iOS and Android “native” development as the most popular process. What makes ReactNative unique is that developers can develop and publish an application for both iOS and Android at the same time, with only minor tweaks to the codebase.
Sound too good to be true?
That’s what we thought until we tried it ourselves!
Another preferred framework here at Ventive is Laravel. If an application requires cloud support (or a web server) with flexibility, it's a great choice. Laravel is packed with API capabilities and authentication packages, allowing System Administrators to prop up a server and setup API's for your data in hours, not days.
I know what you're thinking... "Yeah right, I've heard this before!"
And you are right!
It's true that all frameworks promise efficiency with advanced toolsets and brash claims like, “with a few clicks here and there you can do all these amazing things!” But the real questions is cost.
More bang for your buck
Before I suggest you use the ReactNative + Laravel combination, I would like to explain the basis of my argument with a simple statement of value; get the most bang for your buck as possible.
Seems simple enough in concept, but allow me to distill it in terms of [idea to cost of implementation]. The idea (i) multiplied by resources (r), equals cost (c). Formulaically speaking, it's this:
(i * r = c)
At the high end
Hoping to build an application for $500K or less? Really love .NET?
The thing is, on average, .NET developers are 2-3 times more expensive than PHP, Laravel, or NodeJS developers. So your cost will end up 2-3 times higher for the same application. Open source based applications, if developed properly, will be significantly more economical to build, maintain, and run on an ongoing basis.
At the low end
On the other end of the spectrum is choosing underpowered solutions that seem cost-effective at first, but fail when required to scale. With the many technologies and content management systems (CMS's) available, it's tempting to misuse a framework for rapid product delivery.
This is a trap!
For example, using a blogging software with a few public plugins does not scale your application optimally and will only cause you headaches and frustration in the future. While the resources may be relatively cheap, the development process is often one step forward, and two steps back.
I’ve witnessed countless examples of plugins not working well together and inevitably requiring modifications that waste time and create missed opportunities. Those headaches could have been avoided by choosing the right platform at the outset.
So what is the best solution?
During my younger years as a student, my software engineering instructor would often ask the question, "how object-oriented do you want to get?"
When developing software, engineers inevitably have to make decisions about:
1) Delegating function(s)
2) Using existing libraries or packages
3) Build it from scratch?
Utilizing the Laravel framework to develop an application allows you to do all three above, and gives you the freedom to build a small and efficient application that can scale up without breaking the bank.