Programming Languages and Software Development Steps
Programming Languages and Their Evolution
When a specific number of steps (k) must be followed, as well as the order in which they must be carried out to perform any activity, we are specifying what is defined as an algorithm. An algorithm can be defined as the sequence of steps that should be taken when there is a problem to be perfectly resolved. Programming is the branch of computer science that allows you to create your own programs to solve various problems.
Low-Level Languages
The main low-level languages are machine language and assembly language. Machine language is the only language the computer understands, and it uses binary code, i.e., 0 and 1. It was the first language used in computer programming but fell out of use because it was very easy to make mistakes, and it was complicated to memorize different instructions. Assembly language was the first attempt to replace machine language with another more similar to those used by humans. In this language, each instruction is formed by a set of keywords, which are abbreviations of English words that refer to their meaning or functionality. However, it requires a language translator, i.e., a program that translates written instructions into machine language, the only one the computer can understand.
High-Level Languages
High-level languages were created with the following objectives:
- To achieve independence from the computer, thus getting closer to portable programs.
- To use human language instructions so that programs can be read and written more easily, using words instead of chains of symbols.
- To provide libraries of routines with the most frequently used functions: input/output, mathematical functions, etc.
High-level languages are not directly understandable by the computer; they need a compiler to obtain the machine code. Some high-level languages (like BASIC) use an interpreter to translate programs written in that language into machine code, understandable to the computer. The differences between a compiler and an interpreter can be summarized as follows: the interpreter translates and executes the program line by line, following its sequence. In contrast, the compiler translates the entire program, creating a new and understandable program for the computer called an executable. Another difference is that the interpreter executes the program step by step until the end or until an error occurs. The compiler translates the entire program before it can be executed. The main problem presented by high-level languages is the wide variety that exists today.
Fourth-Generation Languages
Fourth-generation languages were born to solve very specific problems. Until then, languages had only been created for general purposes, but these were not easily able to work in very specific applications. These languages are very intuitive and are focused on very specific needs. In most cases, they usually consist of a series of pre-compilers.
Object-Oriented Languages
Object-oriented languages represent further progress. These languages are based on structured programming but also use different objects or graphic controllers.
Specific Programming Languages
- Fortran: Created in 1955, Fortran is the oldest and is intended for scientific-technical fields, not being very suitable for management applications.
- COBOL: COBOL is a language specialized in management applications. Its advantages include the ability to handle large files and tables, as well as edit and generate reports.
- BASIC: Its appearance coincided with the popularization of the microcomputer, and given that BASIC was a simple language, it was heavily used as a programming language. It is useful for all types of applications.
- Pascal: Pascal is a language used for all types of applications and for teaching structured programming.
- C: It was created with the intention of obtaining a language that would create operating systems. It was created along with the UNIX operating system.
- Java: Java is a programming language, developed by Sun, mainly oriented to programming on the Internet or intranets.
- Delphi: Delphi is a visual tool, developed by Borland, based on the Pascal language.
Creating a Program: A Series of Steps
- Analysis of the problem: In this phase, a detailed study of the problem should be developed.
- Search for the algorithm: At this stage, the algorithm is designed to solve the problem, using flowcharts or pseudocode.
- Coding of the program: In this phase, the algorithm obtained in the previous phase is written in the chosen programming language. The final result will be the creation of a file with instructions on how to solve the problem, called the source program. This phase will be the shortest.
- Testing phase: Once the program is written, it must undergo a series of tests to detect possible malfunctions. It is very important to examine all options and possibilities of the program.
- Creation of the executable program: After checking the program, it must be compiled (translated into machine language), a process in which a new executable (.exe) appears.
- Operation and maintenance phase: This last phase takes place daily with the use of the program. Necessary changes are made to resolve errors that appear and to adapt the program to new user requirements.