Programming language Categories: (by Generation)
/////////////////////
First generation: Machine language, assembly language;
The second generation: process-oriented language: C language, etc.
The third generation: object-oriented language: C++,java, etc.
Fourth generation: User-oriented language sql,html,css, workflow (graphical programming language), code generator
In fact, there should be scripting language, dynamic language, should be the third generation of half language. Php,ruby,ahk,aauto.. Button Wizard, etc.
About the fourth generation language
/////////////////////////
The emergence of the fourth generation language (Fourth-generation Language, hereinafter referred to as 4GL) is out of commercial necessity. The word 4GL was first introduced in the advertising and product introductions of software vendors in the early 80 's. Therefore, the 4GL products of these manufacturers, whether from the form or from the functional perspective, the difference is very large. But people soon discovered that this kind of language because has "the problem-oriented", "the Non process degree high" and so on the characteristic, may increase the software productivity in the quantity level, shortens the software development cycle, therefore has won many users. In the 1985, the United States convened a national 4GL seminar, and it was around this time, many famous computer scientists to the 4GL launched a comprehensive study, so that 4GL into the field of computer science research.
Fourth generation language Features:
///////////////////////////////////////
Provides a powerful, unstructured problem definition that allows users to simply tell the system what to do without having to explain how to do it, thus greatly improving the software production
The previous generations need to be programmed to point out what to do (run the steps), and the 4th generation is to a certain extent only need to explain what to do (the purpose), do not need to write out how to do the process.
Workflows (Graphics language)
Report Generator is an important tool for automatically generating reports for users, providing a non procedural description that makes it easy for users to generate reports based on information in the database, such as the ADF
Application Builder (application Generator) program builder (Programs generator),)
Restricted natural language plus graphics as the user interface
4GL is generally considered to be simple and easy to learn, the user interface is good, the degree of non process is high, problem-oriented, just tell the computer "do", without having to tell the computer "How to Do", using 4GL programming code compared to COBOL, PL/1 significantly reduced, and can be a number of levels to improve software productivity and other characteristics. Many 4GL in order to improve the expression of the problem, but also in order to improve the efficiency of language, the introduction of the process of language components, there are procedural statements and non-procedural statements interwoven coexistence of the situation, such as Linc
(1) Productivity standards: 4GL One appearance, is to significantly improve the software production rate of responsibility, 4GL should be higher than 3GL productivity of more than one order of magnitude.
(2) Non-procedural standard: 4GL should basically be problem-oriented, that is, just tell the computer "What to do" without having to tell the computer "how". Of course 4GL in order to adapt to complex applications, and these applications can not be "non-procedural", it allows the preservation of the process of language components, but not the process should be the main features of 4GL.
(3) User interface standard: 4GL should have a good user interface, should be simple, easy to learn, easy to master, easy to use, flexible.
(4) Functional standard: 4GL to have vitality, can not be used in a narrow range, in a range should have universality.
4GL of deficiency
//////////////////////
Although 4GL has many advantages, but also has great advantages, has become the mainstream of application development tools, but there are also the following serious deficiencies:
(1) 4GL Although the function is formidable, but in its overall ability but has the certain disparity with the 3GL. This is an inevitable result of an increase in the level of language abstraction (as high-level languages do not do some assembly language), on the other hand, many 4GL are only for special applications. Some 4GL in order to improve the ability to express the problem, provided with the 3GL interface to make up for its lack of capacity. Oracle provides a tool pro*c that can embed SQL statements into a C program.
(2) 4GL because of its higher level of abstraction, it is unavoidable to bring the system overhead, inefficient operation (just as the advanced language running efficiency is not as high as the assembly language), the hardware and software resources consumption is serious, the application is limited by hardware.
(3) Because of the lack of uniform industrial standards, 4GL product variety, user interface is very large, with the specific machine close, language independence is poor (SQL slightly better), affecting the application of the software transplant and promotion.
(4) 4GL is mainly oriented to the field of database application, which is not suitable for scientific calculation, high speed real-time system and system software development.
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.