Programming language can be simply understood as a kind of language that can be recognized by computers and peoplelanguage。one kindcomputer languageIt enables programmers to accurately define the data needed by the computer and precisely define the actions that should be taken in different situations.[1]
The programming language is in constant development and changemachine languageUp to now, there are more than 2500 kinds ofhigh-level languageEach language has its specific purpose and different development trajectory.Programming languages are not like human naturelanguage development The change is slow and lasting, and its development is quite fast, mainly including computer hardware, Internet andITThe development of industry promotes the development of programming language.[1]
Chinese name
programing language
Foreign name
programming language
Alias
computer language
Category
Machine language, assembly language and high-level language
The language is mainly written with abbreviated English as the symbol, and usesassembly languageThey are generally conciseApplet, which is more convenient in execution, but assembly language is more lengthy in program, so it has a higherError rate。[2]
machine language
This language mainly usesBinary encodingThe sending of instructions can be quickly recognized by the computer, and its flexibility is relatively high, and the execution speed is considerableSimilarityIt is relatively high, but due to its limitations, it has certain constraints in use.[2]
high-level language
The so-called high-level language is actually the general name of the combination of multiple programming languages. It can integrate multiple instructions and turn them into a single instruction to complete the transmission. It has been properly simplified in terms of operating detailed instructions and intermediate processes. Therefore, the whole process is more simple and has strong operabilityCoding methodWith the simplification of, the requirements of computer programming for the professional level of relevant staff are constantly relaxed.[2]
Development history
Announce
edit
The first computer was invented in the 1940s. At that time, various computer controls were mainly controlled bymanual operationTo achieve, but inConvenienceThere are serious deficiencies. After years of development, relevant personnel put forward the idea of using programming language to control computers. Although the programming mode at that time was not perfect, it had a huge role in promoting the development of computer programming language.And the computer programming language was gradually perfected in the half century after that.With the development of society, the technical requirements in various fields are constantly improving, which makes the development of computer programming more and more complex and diversified.In this case, some visual and integratedLanguage environmentGradually began to emerge, just press a simple key, you can complete a section of code writing, greatly reducing the computer programmingCost of capitalandTime cost。Plus the emergence of some high-level languages, such asPascal﹑fortranas well asC languageAs a result, computer control no longer requires a lot of capital and labor. Until the 1990s, the field of computer programming developed rapidly, and some object-oriented high-level languages were gradually born, such asJavaSo that the computer program gradually changes from the original communication and calculation to video analysisimage transmission , intelligent simulation andknowledge processing In other words, through computer network technologydata acquisition, analysis, management, and intelligent operation.With the continuous development of modern civilization, computer programming language has been able to meet the information needs of various fields.[2]
Computer work based onBinaryBasically, computers can only recognize and accept instructions composed of 0 and 1.The set of these instructions is the machine language of the computer.The disadvantages of machine language include: difficult to learn, difficult to write, difficult to remember, difficult to check, difficult to modify, difficult to promote and use.So at the beginning, only a few computer professionals could write computersprogram。[1]
Assembly language is difficult to understand because of machine language, Mochle and others began to think of usingMnemonicTo replace 0, 1 code, so assembly language appeared.[1]
High level language era
High level language era (1954 to present) - With the emergence of fortran, the first high level language in the world, new programming languages began to emerge.Over the past few decades, more than 2500 high-level languages have emerged in the world, some of which have become popular today, while others have gradually disappeared.[1]
The first high-level language Fortran
In order to overcome the shortcomings of low-level languages, John Backus of the United States created the first computer in the 1950shigh-level language——FORTRAN Language。It is very close to what people are used tonatural languageandMathematical language。Used in the programoperatorSum operationexpressionIt is easy to understand and use.alsoFORTRANIt plays an important role in numerical, scientific and engineering calculation fields with its unique functions.[1]
This is the first high-level language clearly defined in the history of computer developmentEurope and AmericaThe joint conference of computer scientists is stillTransistor computerThe popular International Computer Society developed in the 1950s(ACM)List ALGOL mode asAlgorithm descriptionStandard of ALGOL, inspiring modern languages like ALGOLPascal, Ada, C, etc.[1]
The simplest language - BASIC
1964BASICThe language is officially released.Is created byDartmouth CollegeIt was jointly developed by John G. Kemeny, the dean and Hungarian, and Thomas E. Kurtz, a teacher of the Department of Mathematics.The language has only 26 variable names, 17 statements, 12 functions and 3 commands.This language is called "beginnerGeneral symbolsCommand code。[1]
An Important Milestone in Programming Language Pascal
This is based onALGOLProgramming language, in memory of French mathematicians, philosophers and computer pioneersBlaise PascalAnd named.It is composed ofSwitzerlandProfessor Niklaus Wirth designed and founded it in the late 1960s.PascalWith strict grammarWell organizedIt is the first structured programming language, known as "an important milestone in programming language".[1]
The ancestor of C language is BCPL (Basic Combined Programming Language) languageBell Lab Ken Thompson ofBCPLBased on the languageLanguage B。Then, between 1972 and 1973, Dennis M. Ritchie of Bell Laboratories in the United States designedC language。[1]
Object oriented era
Object oriented era (early 1990s to present)——object-orientedObject Oriented ProgrammingOOP)Now it is very important in the whole program design, and its most prominent characteristics are encapsulationInheritanceandPolymorphism。[1]
Java
JavaIt is a high-level programming language launched by Sun Microsystem in 1995.In the 21st century, Java enterprise applications have developed rapidly, and are mainly used in the construction of information platforms in telecommunications, finance, transportation and other industries.Java is a universally applicable software platform, which is easy to learn and use, platform independent, portableMultithreading, robust, dynamic, safe and other main features.[1]
Python
In recent years,PythonLanguage is rising rapidly, which is mainly due to the development of big data and artificial intelligenceIndustrial InternetThe future development space of Python language will be further expanded.Python is a high-levelscripting language , currently applied toWebandInternetDevelopmentScientific computingAnd statistics, educationsoftware developmentAnd back-end development, and has the advantages of simplicity, portability, scalability, embeddability, etc.[1]
Selection principle
Announce
edit
(1) Comprehensively consider the hardware environment in which the software runs.If in the hardware environment.The update efficiency is relatively high. Once the hardware environment changes to a certain extent, the computer programming budget will not meet the hardware environment quickly.bringProgrammingBring about certain impact.Therefore, programmers need to think comprehensively about the content of software adjustment in the process of programming.And pay attention to properly reduce the difficulty of software adjustment.[3]
(2) Comprehensive thinking platformSupportability。In the process of program programming, we should consider the impact of application platforms on programming languages, and combine the characteristics of programming languages on application platformsImplementing scienceAdjust to achieveWorking levelThe improvement of the programming language will give full play to its own role.[3]
(3) Think about practical problems in programming.In the process of programming, when considering the above two issues comprehensively.It is also necessary to comprehensively consider the actual situation of programming.Therefore, in the process of computer programming language selectionProgrammerKnowledge of programming language features.Programmers are concerned about the particularitySoftware development processMedium.Professional computer programming languages should be used. Professional programming languages can effectively improve the standardization of software development.[3]
Selection skills
Announce
edit
In the development of computer software, the key is to ensure the computerprogramUnder normal operation. This requires a computerprogrammerProcedures should be investigated in detail.After the investigation,random samplingIntegrate computer related data information to select the most appropriateComputer programming languageThe type ofError rate。Under selectioncomputer languageComputer programmers should fully consider the advantages and characteristics of computer programming language, weigh the advantages and disadvantages, and reasonably control the development of computer languageactual costThe problem can maximize the effect of computer programming language.[4]
(1) Before selecting the programming language, the overall framework of the project should be fully considered to determine the distribution of programming languages.Because all parts of the whole project are written in one language.In addition, the connection and decomposition of components are closely related to the selection of programming languages.In some projects, it is relatively simple to choose the best programming language, but the programming process is flexible.optimumLanguage selectionIt needs to be changed according to the procedure requirements.[5]
(2) Under the scientific and reasonable principle, we should choose the most familiar programming language.Because developers are familiar with a certain language, they can greatly help them predict the development time, process and other contents, which can be well avoidedBig changesTo improve programming efficiency.[5]
(3) For high cost operations such as encryption, graphics renderingvideo processing And other contents shall be fully considered.For these high cost operation modules, developers should choose the static language to be compiled.JAVA and C # are the best choices.[5]
(4) At present, thedevelopment environment No longer limited to computershardware environment 。The hardware environment is sufficient forsoftware development, but for some special application software or serious cases,Programming environmentNot just the hardware environment.Therefore, scientific and reasonable choices should be made to make their programs work well in this environment.[5]
(5)Support platformIt is an important basis for selecting programming languages.For example, the code needs to run in the client's browser, which results in fewer programming languages to choose from.[5]
(6) The use of any programming language needs to ensure that the written program can be adjusted in time according to actual needs.Therefore,rapid prototyping The development environment is very important. In this environment,Dynamic languageThe combination with related libraries can greatly enhance its advantages.[5]
application
Announce
edit
At the current stage, in order to improve the application quality of computer software technology and constantly improve the informatization level of all sectors of societyScientific researchersThe computer programming language is being continuously improved and innovated to improve the computer programming languageIntuitivenessAnd easy to learn, which enables programmers to acquire more convenient programming languages. At present, widely used programming languages includePython﹑PHP﹑Java﹑C++﹑VBAs well as C language, different programming languages have different application advantages. Therefore, during the specific application period, we need to select a programming language with high adaptability and pertinence in combination with our own needs to ensure the advantages of the selected programming language.[2]
PHP
In essence,PHPThe computer programming language isHTMLOne of the embedded languages thatDynamic websiteThe programming language belongs to the mainstream programming language, but in specific applications, it needs effective cooperation with html css+div+js and other languages to build a more complete website. The main function of this language is to effectively implement HTML document information, and meet users' computer operation and control needs through effective integration with multiple programming languages,For example, Perd, Java, and C language. In addition, PHP can also be used toDynamic webpageEffective construction of.[2]
Java
Java is an object based programming language, which focuses on the specific algorithms of data application and manipulation. As one of the distributed languages, Java is an important part of the high-performance Internet architecture. It has many advantages, such as simple syntax, automatic memory management, andCross platformMigrationexception handlingHigh reliability andBytecodeIt has a perfect security mechanisminformation age With more extensiveScope of application, especially in the Internet, game control, personalPCAs well as multimedia, which plays a vital role in software andWebsite constructionIt is also widely used, most typically inAndroidAPPApplication in.In addition, someOffice softwareIt is also written in the Java language, such asExcelAnd Word, but compared with C language,Java programming languageRelatively low in mechanical efficiency, but itsEconomyandPortabilityIt is one of its biggest advantages, so it is in the field of big data andSupercomputerThere are also relatively many applications.With Java technologyGovernment websiteFor example, in the process of building government websitesSite ArchitectureIt is divided into three layers:Business layer﹑Data layerAnd presentation layer.The data layer is mainly responsible for managing the mass data and providing convenient conditions for website services.Business layer, in which variousSubsystemOfBusiness logicThrough the intermediate support layerData exchangeThrough the business layer, it can ensure the smooth implementation of website application functions, and provides a standardized development interface.The presentation layer is mainly responsible forInformation interactionAs well as data display, it is responsible for the technology of user related requests, combining the specific types of requests, transmitting them to the application server, and finally processingResult feedbackTo the user.In the process of building government websites, it is generally necessary to adopt distributed design, integrate relevant software at the corresponding level, and complete the development work with the help of product application development interface.Java technology can provide application developmentProgramming interfaceAnd standardized components. Finally, functions can be reused according to different requirements, and can be combined at will.[2]
C++
At present, most of the online games we are exposed to are based onC++An operating system developed on the basis of and commonly used in computerskernelAll are written in C language, such as Windows/Linux. The C++language, which is continuously optimized based on C language, has obvious advantages compared with C language during application. It canprogramming languageOfrunning state Effective optimization, and C++has further improved the perfection of C language, especially its robustness andSimplicity, is favored by programmers, so it is widely used in programming.In addition, C++has strong drawing ability and data processing ability, and relatively strong migration flexibility, so it is widely used inGraphics Processing, system software, games and mobile phones, and Tetris, which is known to people, is a typical application of C++language.[2]
development
Announce
edit
With the development and progress of science and technology, computers are constantly innovating in software and hardware technology, especiallyMulti-core eraThe development ofComputer ArchitectureGradual change. Affected by this form of development, computers should also make corresponding changes in programming language. Only in this way can the needs of information development of all sectors of society be better met, and we want to achieve optimization and innovation in programming language,We must start with programmer operation, programming language application, object-oriented space expansion and platform independence.[2]
(1) Ensure the convenience of users' operations.As far as the current computer program is concerned, its core thread isData abstractionAnd object-oriented programming. In order to make the operation of the programming language more convenient, it is necessary to ensure that the programming language is simple and easy to learn, constantly reduce its professionalism, take the ease of use as the main development direction, and ensure that users can write some relatively simple programs only by mastering the basic concepts and operation methods,Ensure easy operation.[2]
(2) The programming language should be based on the object, realize the deepening development, and provideDynamicInterface model and simple class mechanism.By using the inheritance mechanism, the subclass can apply the methods given by the parent class to realize code reuse.In addition,computer networkIt has strongOpennessTherefore, in the process of future development of programming languages, security should be fully considered so that programming can obtain a more secure environment. ThereforesafeguardThe mechanism should be built, and the security system should be built in combination with the characteristics of program writing to ensure the harmony and security of the writing environment.And promotePlatform independentSex is mainly to write programs that can be transplanted between different platforms or machines to avoid being affected by the platform, which is also an important direction for the future development of programming languagesDevelopment modeNext, the application will be more convenient to write programs, which will enable it to obtain a broader range of applications.[2]
Simple code and fast development;Close to natural language, easy to understand;More convenient code management;Easy“Concurrent programming”;Hot upgrade of code.[1]
Dynamic language
Dynamic language means that the programRuntimeIt can change its structure, which represents the trend of faster and simpler technology, and will inevitably become the protagonist of building software and IT technology in the future.[1]
Concurrent programming
The inevitable requirement of the multi-core era.[1]