The rising competition to get the apps in the market as fast as possible is leading to the emergence of an all new programming paradigm viz. the low-code development platforms. The idea is quite simple; develop applications with minimal coding.
Forrester Research defines the low-code development platform as the one that allows for the rapid development of the application with minimal hand-coding along with quick set up plus deployment.
Although, not a lot of research has been carried out for this approach as of now, one analyst concluded that using the currently available low-code platform take only 2.5 hrs per function point as opposed to 10.6 hrs in Java and 15.5 hrs in C#.
As an example of currently available low-code development tools, we have templates, widgets, plug-ins and libraries as they all help in saving time and minimize the requirement for hand coding. It’s been reported that low-code development platforms are trying to consolidate all these pieces.
According to a recent blog post by Gottfried Sehringer, there are three basic elements of a low-code development platform, as given below:
To reduce the need of hand-coding, the platforms are supposed to offer easier and a more intuitive way to build applications. It should offer visual tools to define data models, application and logic, UI, etc.
Visual development tools have been here for years and they’ve achieved great degrees of success. As an example, take Visual Basic. One of the most appealing facts of VB was that it automated many tasks related to user interface. Its drag-and-drop graphical interface allowed developers to quickly build common user interface elements like buttons, windows and lists while the code was generated automatically. It was really simple to craft a working interface even for a beginner programmer. But the programmers had to hand code a lot of functionality associated with these UI elements and in its early stage, VB had some performance issues as well. Unfortunately, in the process of expanding the language’s capabilities, the visual design features and simplicity pave way to more complex hand coding.
The second element is a repository similar to an app store that is full of useful elements. The developers can pick any of the elements as per their needs. These elements can be templates, widgets, plug-ins and the like. It can greatly enhance the productivity.
The final piece is the app lifecycle support. It is necessary for the development of robust applications. The platform is supposed to provide an environment for the complete app delivery lifecycle that includes design, develop, deploy, manage and iterate.
In an era where the manufacturers are required to launch their product as quick as possible in the market, low-code development platforms offer a promising alternative to the hand coding applications provided they cover all the bases. Though, there is still more to research in this field to actually arrive at any conclusion or derive any real benefits.