Types of Programming Languages

import java.typesOfProgrammingLanguages.*;

Types of Programming Languages

Before actually deep-diving into JAVA, its syntax, and the underlying concepts in the language, let me first tell you about the types of languages that are known around the world today. If none of this looks relevant to you or you don't understand what I am blabbering about here you can read my previous related blog to get a clear picture about everything that I am going to talk about here.

Types of Programming Languages:

Everything that our computers work on is just a bunch of 0s and 1s. So any instruction that we pass to our computer with some clicks and taps from our keyboard and mouse gets converted into a bunch of 0s and 1s internally in order for the computers to understand what we actually want it to do. Now there are various ways in which these instructions can be passed on to the computer. Depending on how these instructions are passed on to the computer, programming languages can be classified into three types i.e. Procedural, Functional, and Object-Oriented.

Procedural Programming Language:

  • This language specifies a series of well-structured steps and procedures to compose a program.
  • It contains a systematic order of statements, functions, and commands to complete the given task.

Functional Programming Language:

  • In this type of language, we aim to write programs only in terms of pure functions (don't worry about it if you don't know about functions. I will cover it later in a separate blog). This means that don't modify any variable but only create new ones as an output.
  • The basic idea behind a functional programming language is to bundle the piece of code inside a function and reuse the same function instead of writing the same thing over and over.

Object-Oriented Programming Language:

  • This type of language revolves around objects.
  • I will cover objects later in a separate blog too but just to give you an insight or an intuition about what object-oriented programming looks like, it's just some code and data all wrapped up together in one (code + data = object).
  • This paradigm of language was developed to make it easier to develop, debug, reuse and maintain any software.

Apart from the fashion in which the instructions are passed, a programming language can also be classified into another type which determines how a programming language is typed.

Statically Typed:

The rules followed by statically typed language are:

  • Type checking is performed at compile time.
  • Errors will show at compile time.
  • Declare the type of data for the variable before initializing and using it in the code. Compilation means the conversion of human-readable code to machine-readable code and compile-time means during the process of compilation.

    Dynamically Typed:

    The rules followed by dynamically typed language are:
  • Type checking is done at runtime.
  • Errors will show at runtime.
  • No need to declare the type of data before initializing and using it in the code. Runtime means during the time when the program is finally running after compilation is done.

Now that you know about the types of programming languages, we can move on to the next topic in the next blog which is "memory management in programming languages" so hang on tight! we are just getting started.

Let me know in the comments down below if you like what you read or have any suggestions for me and make sure to follow me on all my social handles to stay connected. Links are on the top-right corner of this page.