[Stick to the top] Post-Visual Programming age

Source: Internet
Author: User

Overview

The emergence of Visual Programming Technology is a great change in the field of software development. It greatly improvesProgramStaff efficiency; it makes it easier for us to develop large application systems.

But at the same time, the customer's requirements for their own application systems are getting higher and higher, the system is getting bigger and bigger, and the workload of programmers is growing exponentially, which makes Visual Programming somewhat powerless. As a result, some people began to think about how to make up for the shortcomings of Visual Programming and organize the content into a system. The era of visual programming is approaching.

What is visual programming?

A long time ago, every line in a programCodeThey are all hand-written, including the interface design and implementation of various functions. A large amount of development is required to implement a small function.

Later, a brand new development method emerged: visual programming! This is so handsome. Yes, this is the savior of developers. It is of epoch significance in the programming field.

The so-called visual programming, that is, Visual Programming Design: based on the principle of "What you see is what you get", we try to visualize the programming work, that is, we can see the results at any time, the adjustment of programs and results is synchronized.

Lack of Visual Programming

Today, we have learned that dragging with the mouse is only the most convenient, not the most efficient. Dragging three or five widgets on a form with the mouse is good, but it is not fun to drag dozens or even hundreds of widgets, in today's large projects, most of them are of this scale, and the nightmare begins. We just put the hundreds of controls in order with the mouse, as required, it took us a long time, then, check and verification are required for each control and other work on the page. This may take another day for us not to mention background program logic development, when receiving these parameter values, we may have to write hundreds of lines of programs, which may take another day ......

Visual Programming brings us a lot of benefits, but it also shows the shortcomings of Visual Programming in the face of large-scale projects.

Introduction of Standardization

At the same time, as our projects become more and more complex, this has promoted continuous progress in another field. In the process of project development, project management becomes more and more important, which makes software engineering management continuously improved. This is not the focus of our discussion today, but we need to extract a result from it: Standardization! After analysis, we found that the problem affecting the efficiency of visual programming is that visual programming does not have a detailed standard (of course, this is not necessary ). Therefore, the combination of standardized development and visual programming may lead to a new development method.

First impact of standardization and Visualization

Post-Visual Programming: visual programming under the standardization system. Key words: Standard Code is done by machines. At the beginning, some code generation tools were developed to improve the efficiency of visual programming, which improved our development efficiency. Later, people improved the code generation tools. Now, better code generation tools can generate some controls and some code. Most of the generated programs can only run under the company's Framework (of course this can be solved ).

After careful analysis, it is not difficult to find that the code generator can be used to complete the tasks with rules. If we normalize all the Code except the specific business logic, that is, standardization, can all these codes be completed by the generator? The answer is yes! But this will be a system engineering, which means we need to develop new standards for software development. These standards are comprehensive, concrete, and systematic. It can be used together with the current visual development tools. This will make large projects not large!

Detailed description of Standardization

Let's talk about standardization. in the previous article, we talked about engineering management. Through engineering management, we can extract some standardized concepts. Standardization refers to the activities that develop common and reuse rules for actual or potential problems in order to obtain the optimal order within a certain range. It includes the process of developing, releasing, and implementing standards. For us, we need to develop standards for requirement analysis, outline design, detailed design, and database design (if there is a database). We need to standardize specific procedures, for example: how to define whether variables, variables, and database fields are associated, what is a standard check, and what is a standard control? What is a standard database operation? For example: add, delete, modify, query, and detailed issues; how to define objects, how to handle Object Relationships (one-to-one, one-to-many, multiple-to-many), and other standardized processing. With this, our development work will enter a completely new realm: The program is used to think out.

I started to speak a little too long. Later, I don't quite understand it. Continue to read it. You will be able to understand this new concept. I believe in my ability to express myself.

Performance of post-Visual Programming in different engineering segments

In order to cover the standardization of all aspects mentioned above, we will describe the development process as the main line.

First, we receive a task and need to go to the customer to understand the specific requirements. This process is basically the demand investigation process. This is often our first opportunity to contact our customers. It is very important to be professional, conscientious, and trustworthy. So how can we do as much as possible from a professional perspective? Have you found a few questions after you have returned from the customer? If yes, it means that your research is not standard enough. With a standardized template, you can make your research more comprehensive and more comprehensive. This is the foundation to impress customers professionally.

We have met our needs, analyzed our needs carefully, and issued the requirement analysis statement. By analyzing the requirements, we can preliminarily summarize the requirements including several modules, boundaries between modules, functions of each module, system highlights, and system difficulties, to form the outline design. (After the outline design is completed, you can start to implement the uidesign .) Since then, it has been a bit of thinking content. Later, we will be thinking about the continuous maturity and the emergence of some programs, there will be some content to improve production efficiency.

Based on the outline design and demand analysis, we can consider and develop some agile development ideas. We take a module as an example to describe it, in this module, we will figure out the objects that constitute this requirement and the attributes of each object. We need to record the description of "object", and the document generated after record is "Data Dictionary". The data dictionary records the objects to which a requirement includes, the attributes of these objects, the nature of each attribute, and the relationship between objects. This forms the table structure of the database and bean objects in the program. Then, complete the detailed design document. During the detailed design documents, we will find more details, which will lead to changes to the data dictionary, it may also lead to changes to previous detailed design documents. At this time, we should all correspond to such changes in real time. This is also a reason why substantive development cannot be performed before the detailed design is completed.

With the detailed design, we can develop code, and at the same time, we can also organize test cases so that future development and testing will all come from the same detailed design, in this way, the testing results of software can be guaranteed theoretically.

At the same time, when conditions permit and project needs, we should also make a set of business logic demonstration programs before formal development to communicate with customers, in this way, we can further improve the consistency between the developed system and the customer's wishes. This demo is the business logic skeleton of the program, which can be obtained directly through the detailed design documents of the standard, and this program can be used for demo demonstration by the customer, it can also be used for actual development in the next step. Our actual development will not create a new project, but develop it step by step, but an existing project, the contents of this project include the standardized operations of all objects, the standard database operations of all tables, all pages according to the actual business logic requirements, and all the controls and elements on each page. existing, even check of the data type and length that can be input by elements on the page also exists, and can be run directly or even without testing. What we need to do is in a visual environment, review where changes are required and implement the background program of the business logic. This method makes up for some shortcomings in visual programming. Let's use a standardized development system for visual programming. This is the era of post-Visual Programming.

Concepts and advantages of post-Visual Programming

In the post-Visual Programming era, visual programming is under the standardization system. It pays more attention to standardized development, so it will be more conducive to the project management of large-scale projects; because of the high degree of standardization, we can put more work into the computer for direct completion, it improves work efficiency. The quality of standardized code is very high. The higher the degree of standardization, the higher the code quality, and the larger the proportion of code that does not need to be tested. Of course, there are some other advantages, such as: it is easier to cultivate a unified Writing Style of the team, and maintain a dependency between the document and the standard code. The post-Visual Programming era is a very useful supplement to visual programming. We need to develop a new set of comprehensive, specific, and systematic standards to welcome the arrival of this wonderful age.

Jia derui has made some useful attempts in this regard and can access blog.csdn.net/home_dear#related information.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.