After so many years of database development, I have experienced the hardships and gained a lot of experience and knowledge. I have been thinking about how to enable programmers to write programs easily and happily, this service enables users to continuously improve their user experience. On the one hand, they are constantly paying attention to the development of domestic and foreign industries, and SSH is booming in Java. The Web controls of Asp.net are convenient and easy to use. php frameworks and modules are increasingly powerful, the code is short and concise, and Ruby on Rails has sprung up. However, these are only the development tools and development frameworks. Many software vendors have developed a secondary development platform on this basis, such as ruidao (bstek), Puyuan, and Fangcheng, which greatly simplifies the development process and can be quickly developed and flexibly customized. However, these platforms are expensive and have their own characteristics, therefore, we have been thinking about what the ideal web database software development platform is like. With a correct goal, we can have a correct result. I don't want to implement it. I just want to talk about the requirements. I want to talk about some of my ideas first. It's not necessarily true.
1. The code is open-source, so that more people can use it and constantly improve it.
2. modular design is adopted. The development platform is a module generator, module assembler, and module manager.
Module generators mainly include table creation tools, form generators, and report designers.
Table creation tool: similar to the existing database modeling tool, you can directly operate the database. In addition to defining basic information about table fields, you can have some extended information, such as the display name and prompt information.
Form builder: Table-based design, drag-and-drop operations, no need to copy and paste, automatic removal of Field Names and display names, automatic form submission
Report designer: you can design complex reports and display multiple query results.
The module assembler can combine and Set modules to form a form and a new module.
3. Create a public online module library to maximize code sharing. Some billing modules are available,
4. the module granularity can be large to small, throughout the development process, divided into several layers, up to a sub-system, such as a forum, can be directly referenced as a module, down to a button control, it can be a form and a panel in the middle.
5. Underlying display controls, logical controls are developed using traditional development tools and incorporated into platform management.
6. The front-end HTML and JavaScript should be reused on different platforms as much as possible.
Let's talk about this more and make improvements later.