A preliminary study on iVX, a one-stop low-code development platform

       In the tide of the digital age, low code has gradually become a trend and trend. As the first graphical general-purpose code-free programming platform in China, iVX provides a powerful, efficient, and easy-to-learn zero-code development language and a one-stop cloud-native application development tool for the whole life cycle, which undoubtedly brings a new wave to the low-code industry. revolution.

1. What is low code?

       Low-code (Low-Code) is a software development method that helps developers quickly build applications through a graphical interface instead of traditional manual programming. The low-code platform provides a wealth of preset components and modules. Developers can complete application development by dragging and dropping components and configuring modules, which greatly improves development efficiency and reduces development difficulty.
A mature low-code development platform usually provides the following features:

1) Visual development environment: Provide a visual interface design tool, and the development can be completed by dragging and dropping components and configuring modules.

2) Preset components and modules: The platform provides a wealth of preset components and modules, such as data sources, forms, processes, reports, etc., which can be used directly or customized for extension.
3) Fast iteration: The low-code platform provides version control and hot update functions, which can quickly iterate applications and adapt to business changes.
4) Security: The platform provides multi-level security guarantees, such as data encryption, access control, identity verification, etc., to ensure the security of applications.
5) Integration capabilities: Low-code platforms usually provide rich integration interfaces that can be seamlessly integrated with existing systems.

       The low-code development method is suitable for all kinds of enterprise-level application development, especially for application scenarios that require rapid iteration and rapid response to business needs. However, low-code platforms usually cannot meet application scenarios with high complexity and individual requirements, and traditional manual programming methods are still required for development of such scenarios.

       Today, I will introduce to you the first domestic graphics general-purpose code-free programming platform - iVX, and take everyone to see what content and surprises iVX brings us.

2. Problems with traditional low-code

       First, let's take a look at the problems existing in traditional low-code platforms. The traditional low-code platform is a custom-installed "runtime" for the enterprise, and then configure the enterprise application system through this runtime. Once selected, it is locked in this platform, which has great limitations. . In response to these user pain points, iVX proposes a new concept of full-stack code generation, which improves development efficiency and satisfies the diverse needs of customers. 

1.1. In which occasions can low-code be used? Which scenarios can use low code?

Scenarios where low code is not suitable:

1) Scenario of pure algorithm development; algorithm is the expression of mathematics through computer language, therefore, it can no longer be compressed, and it is meaningless to use low-code; (learning algorithm may be possible) 2) Mature and very complex system development in professional fields
: For example, 3D large-scale MMOPRG games, such as equipment simulations such as Matlab Labview, etc., it is not that low-code cannot be used, but the development cost of the entire system is a bit too high;

       In addition to the above scenarios, basically all can be developed with low code, especially "various business systems", "various management systems"...

     The iVX front-end program supports compilation into various types, including web applications, applets, native apps, Mac OS and Windows desktop applications, etc., and supports OA, e-commerce, big data applications, forms, workflow, Bi, task flow, industrial object Development of multiple business systems such as networking, games, websites, and video applications.

1.2. Why are programmers and technical managers less able to accept "low-code" platforms?

      Why are many programmers and technical managers not able to accept "low-code" platforms? In fact, there are two main reasons:

1) Insecure (locked-in features)
Most "low-code" platforms are actually a custom-made "product" for enterprises, not "a new technology"! It is more like a "castle in the air", which can only enter but cannot exit. Since code cannot be generated, once a "low-code platform" is selected, once "there is something wrong with the platform", it may directly affect the existing operating business.
2) Distrust
Programmers only believe in "code", even if it is automatically generated code, it is acceptable. If code cannot be generated, this will conflict with the basic "cognition" of programmers, and it will also prevent programmers from further participating in the construction of "low-code" platforms. In the eyes of programmers, a system that "cannot generate complete code" and "cannot be exported for compilation/debugging/running" is unacceptable.

       The iVX low-code platform eliminates the above concerns. iVX supports online compilation and generation of various applications, including web applications, applets, native apps, Mac OS and Windows desktop applications, etc. One-click compiling and generating code, the development efficiency is increased by 5-10 times, and the source code can be exported for free.

      In addition, iVX pays attention to code security. The applications developed by iVX can apply for patents and software, pass the security test, and the most stringent security testing. iVX does not lock users, but directly provides generated source code, without encryption, and without specifying the operating environment.

The full line of ivx products, including websites, documents, blogs, customer service, operation and maintenance, OA, tasks... Dozens of subsystems are all iteratively developed by iVX itself. This should be the first time that a "low-code" platform has completed "bootstrapping" and foreign big names such as mendix and outsystems have not been able to do this.

3. Universal no-code programming platform iVX

       iVX, as the first leading graphics general-purpose no-code programming language and low-code platform in China, has a convenient online IDE integrated development environment, no need to download and install, and you can edit and develop projects anytime and anywhere by opening a browser. iVX has "one-stop" cloud resources. Through this one-stop service, iVX can realize one-stop R&D, one-stop deployment, and one-stop maintenance.

       Using iVX, you can develop applications such as web applications, applets, native apps, Mac OS and Windows desktop applications, and support the development of business systems for medium and large complex application scenarios (based on a code-free logical arrangement engine), such as e-commerce, big data applications, Form, workflow, Bi, task flow, OA system, industrial Internet of Things, game, website, video application, IM, etc.

3.1. Outstanding advantages of iVX

      Compared with traditional code platforms, iVX has the following outstanding advantages:

1) Different from other low-code/no-code platforms,
iVX can automatically generate "full-stack code" through visual operations. The front-end can choose vue or react, the background can choose Java or node.js, and automatically generate database-related code; the code can be Strong readability, can carry out secondary code editing and compiling. Compared with almost all "runtime" low-code platforms at home and abroad, it has obvious advantages.
2) Ability to generate full-stack code
iVX has a powerful ability to generate full-stack code, which is very popular among programmers. At the same time, iVX can integrate various existing code capabilities in the IDE window, such as supporting CSS JS functions, SQL language custom components, importing vue/react and other front-end components and importing Java/JS/Android/Python SDKs, which can be very good and modern There are systems and codes to work with.
3) New iVX development method and development efficiency
The iVX platform has invented a new development method (drag and drop configuration component properties and event panels), which greatly reduces the learning threshold for programming (1 to 2 weeks for students with programming foundation, no Basic programming students can learn and master conventional application development in 1 to 2 months); at the same time, iVX can greatly improve development efficiency, through multiple levels of component abstraction, and an efficient "event operation panel", each effective operation generates an average 500-600 lines of code; at the same time, it makes the operation and maintenance of the product easier.
4) Abundant information and a huge developer community
iVX is completely free for developers, and provides free video teaching content and rich documents, and is committed to promoting programming education and technology popularization. The platform has hundreds of thousands of developers who have developed millions of applications and built a huge developer community.
5) Support full-scenario and full-industry application development, with many partners
iVX supports the development of all-scenario and industry-wide applications, supports 2D/3D engines, and can even develop 3D games. iVX's partners include Huawei's full-line application development/Hongmeng system application development/fast application development; partners include China Coal, PetroChina, China Academy of Space Technology, China Railway, CRRC, Ali, Byte, Tencent, Kunlun, Ping An, Sunac, Haoyun, Zhuolang and other hundreds of large and medium-sized enterprises. At the same time, many listed companies also use iVX to develop their core products or set up operation and maintenance systems; for example, the complete system CRM MES FRP APS EPR of Ningbo George White Company is developed by iVX.

3.2. The difference between iVX programming language and traditional programming language in design

       iVX is like a new programming language, which is very different from traditional programming languages:

1) iVX is graphical (graphically expressing the logical process), and finally generates code (optional programming language); while the programming language is textual to express the entire logical process.
2) Traditional programming languages ​​need to design "grammar", "logical expression", "various functions, objects and libraries and their methods", "compiler", "running and compiling environment" together; iVX puts "Logical expression" is extracted separately, decoupled, all "grammatical" features are removed, and "objects, functions, libraries" are encapsulated into iVX "components". In iVX, the "compiler" is removed, but Added "code generator" to convert iVX AST to code in various target programming languages.
3) Previous programming languages ​​were not designed together with IDEs, and did not consider how to develop applications. They paid more attention to language flexibility and code efficiency, as well as compatibility and interfaces with the underlying system. iVX is very different, starting from the entire product design, integrating IDE design and language design, and designing for application development and code generation.

4. IVX full-stack code generation capability

       As a programming language, how can it be universal, simple, efficient, and easy for people to learn quickly? In this problem, generality requires that the programming language has "complete logical expression ability", and the more complete it will make the language design more complicated; on the other hand, it also requires the language to be "easy to learn and master", "fast programming", "code The lower the volume, the better."

iVX has been working hard to find a perfect solution to this problem. At this stage, it has basically realized the unification of "completeness of language" and "programming without code"!

       The core of the iVX low-code platform is the online IDE development tool it provides, which has powerful code generation capabilities. The IDE tool of iVX can not only be used quickly by business personnel, but also very friendly to developers with programming experience. Let's take a look at the main functions and features of iVX IDE.

4.1. Visual development IDE

       Developers can use visual components to build various pages and support custom styles and layouts. Using iVX, you can quickly build the same interface as the design drawing, support batch adjustment, drag and drop, alignment and responsive layout settings, etc., greatly reducing the front-end workload.

4.2. Turing's complete logical arrangement

       iVX supports low-code/no-code interactive logic design and control, and uses a set of "self-consistent" and "Turing-complete" logic systems in the front-end and back-end logic processing. This is a "trigger-based" panel system that can be expanded linearly, which is easier to use and more efficient than a "flowchart"-based logical arrangement system.

4.3. Support code generation and export

       Programmers can understand the concept of iVX in this way, and regard iVX as a convenient code generator. The iVX front-end is a front-end visual code generator, and the iVX back-end is equivalent to a business logic code generator (JS code at this stage) + SQL code generator. In terms of cloud resources, iVX is equivalent to selecting the core products of cloud computing companies and providing them to application developers through components. When using iVX cloud resources for application delivery, users hardly need to worry about "concurrency capabilities", because all IaaS layer resources in the background of iVX are elastic, which can be understood as "BaaS (Backend as a Service)" and "Serverless" in "Serverless". Collection of FaaS (Function as a Service).

4.4. Keep the code programming logic

       What iVX removes is the program grammar part, while the logic part of solving the problem is completely preserved. Therefore, it does not conflict with the current programming logic. Programmers don’t have to worry about getting started. Whether they are developing front-end or back-end, good at C or Python, they can quickly learn and have the ability to use iVX to develop various applications.

4.5. Support combined code development

       In order to strengthen the openness of iVX itself, programmers are supported to add their own code in the framework:

1) Support custom components

       iVX supports custom front-end components. If programmers feel that the existing hundreds of components cannot meet the needs, they can customize their own front-end components according to the documents provided by iVX (a map format) and integrate them into the component window of iVX. .

2) Support custom functions

       Support programmers to customize JavaScript functions, such as processing various data by themselves; and support various npm packages to be used directly, and compiled together with existing JS libraries.

3) Support handwritten SQL code

       Through the iVX dbo component, developers can connect to any common database such as Mysql, Oracle, SQL Server and PostgreSQL that they deploy. It supports self-written SQL to operate the database and obtain the returned results, seamlessly integrating with other background service logic.

4) Support importing front-end components such as VUE and REACT

         Import front-end components such as vue/react, and import Java/JS/Android/Python SDKs. This provides developers with more choices and makes projects more flexible and changeable.

5) Support code generation

       iVX supports front-end generation of JavaScript code, and optional (JavaScript, Java, Python, C#, C++) automatic generation of background code, which means that it can be compiled and run together with existing files of these codes.

Guess you like

Origin blog.csdn.net/chenlycly/article/details/132603588