The most powerful language of the modern era is not the language we speak, but the one that made the name of the modern era. It was named so for the technological renaissance that occurred in the world, which made the world at the height of its renaissance. It all grew up, you might not understand it, but let me pave the way for you in this article to get to know it a little bit
First, how did it start?
It starts from the idea that we talk to understand each other. By understanding we transform words into actions and situations, so we create between us several means that bind us together. And this is exactly the case for hardware, you need a link to something that explains what you want to do, the parts of the computer need a link between them and yes, because it is a machine that needs data and the data is converted into devices and how that is yes with zeros and ones the first mother language of programming, so as I understand, The basic programming language is zero and one, and it combines certain meanings. We will try to simplify it for you. Very early computer programming began by manually changing the ones and zeros into various data the machine could understand. Of course it was not easy to create many programs based on ones and zeros only because most of them were used for specific applications only, and their size was huge so they were very limited. This is why the creation of programming languages was a revolutionary step that took the field to another level. Unlike languages that are spoken among humans, the keywords in programming languages are limited, because initially devices only deal with binary numbers, it is difficult to keep up with technology, which has caused developers to create many other languages through which humans can translate their commands Without using two-factor authentication but more than that, by combining these keywords, developers can create different types of software. There are special programs that convert the program or code written by the developer into machine language that the device understands. So what do we come up with now?
Second, what is the definition of a programming language?
It is a set of commands, written according to the rules and processing a set of instructions specified by the programming language, and then these commands pass through several stages so that the computer can perform the specific task required of it and obtain a sequence. The programming language produces commands that the machine does not stop until they are fully executed on the computer.
Third, software terms you should know
If you want to get started, there are a bunch of common definitions that you will meet while searching for the most popular programming languages or programming in general... Let me present it to you in an easy and simple way.
1. Text encoding (syntax)
Every language has agreed-upon grammar (like Arabic grammar - grammar in English) that helps us write useful sentences that anyone can understand.
Every programming language also has grammar, which is an agreed upon way of writing that any programmer can easily understand and use anywhere in the world... these rules are grammar but towards programming
2 - Classification of programming languages
First: Programming languages in terms of dealing with devices:
There are many classifications of programming languages, and perhaps the most important one is to determine how close any language is to the way a computer understands code, or the so-called (Machine Language).
There are three types of languages in this classification:
1- Low Level Languages: These are languages that are very close to machine language... such as the C language, the Assembly language, and others, which are considered assembly languages.
Machine Language: It is the language that only computers can understand, and these programs are represented by the binary system, and the process of writing these programs is a very complicated matter for programmers, and the language of the machine varies from one computer to another, where programs are created in the processors on the devices, and therefore cannot be Using machine language software on a device that has a PowerPC processor on another machine that has an Intel processor
Assembly Language: Assembly language is relatively easier than machine language; This is because it contains some vocabulary of the English language; Such as the word add and the word sub for example, which makes its programs easier to read and understand compared to machine language programs, and programs of this level of programming languages act as a translator that converts high-level human-written language programs into machine language that machines understand, and as in Machine Language Assembly languages are not portable; That is, a program written in assembly language cannot be transferred from one computer to another.
2- High Level Languages: These are languages that move away from the language of machines and approach our normal language… such as Java, Python, JavaScript, and others.
Second: Classify programming languages in terms of how they work
This classification depends on the way the language deals with instructions and converts them into binary codes for computers to understand. There are two types of programming languages in this classification:
1. Compiled Programming Languages: Compiled Languages are defined as the languages that convert software commands or code to the machine language of the device after the completion of writing the entire program, and the conversion is done from the programming language in which the program was written to Machine language using what is known as a compiler, and this type of language is characterized by its speed of operation; Where the program is run directly without the need to convert commands first hand, but programs of this type of programming languages cannot be transferred and run on devices running operating systems different from those contained in the device on which the program was written, and the C language is one of the examples on this type of programming languages.
Languages like C, C++, C#, Go... are all compiled languages, and they are widely used.
2-: Interpreted programming languages: These languages depend on an intermediary or an interpreter to convert instructions into code that the computer can understand ... and this process is not the programmer responsible for it if the interpreted languages are defined as the languages whose programming commands are translated and converted into machine language As the translator writes it. Programs of this type of language are translated not into the machine language of the processor itself, but using a special program for the same language called an interpreter.
The compiled languages are a bit slow; Since it regularly converts commands into machine language, on the other hand, these languages have many advantages, including: the ability to run the program on different computers and on multiple operating systems, as this requires downloading a copy of the programming language on the machine that will be Program runs on it, and program commands written in this type of language are permanently readable and modified. Python and Javascript are one example of this type of programming language.
An exception in this classification is Java, which can be one of two types depending on the level of use... Don't worry, you don't need to know how to do it now unless you decide to learn Java.
Third: Types of programming languages according to their uses, that is, according to what your own language needs. That is why different programming languages are categorized by type of use as follows:
- Application and software development languages: They are the languages that are concerned with developing the various programs and applications that the user deals with daily. C, C#, C++, Java, and Visual Basic are the most famous examples of this type of programming language.
- Computer hardware operating system development languages: These languages are concerned with developing software needed to create computer hardware operating systems and their various interfaces, C and Assemply are examples.
- Internet development languages and web pages: These languages are the basis for the existence of the Internet in the world, through which websites and their browsers are designed. HTML, HDML, Java, JavaScript, PHP, XML, and Python are examples of this type of programming language.
- AI Development Languages: These are the languages used in AI software development. Like bots, Prolog, Python, AIML, C, C#, and C++ are examples of languages that can be used to develop various AI programs.
- Database development languages: languages used by grammar programmers; With the aim of creating and maintaining its functioning, an example of this type of language is SQL. Game development languages: The languages concerned with developing computer games or any other entertainment programs. C++, Java, C#, and DarkBASIC.
- Internet development languages and web pages: These languages are the basis for the existence of the Internet in the world, through which websites and their browsers are designed. HTML, HDML, Java, JavaScript, PHP, XML, and Python are examples of this type of programming language