Skip to content

Understand Programming Languages

Difference between programming & programming language

Programming: programming is a common keyword nowadays we are hearing a lot. Before explaining what programming is, we must know first that what actually program is. In computing, a program is a specific set of ordered operations for a computer to execute tasks and user command. the program is put into a storage area accessible to the computer.

Now let's come to the point to understand the programming. Programming is the process of creating and developing an executable machine program which performs a set of instructions. If we elaborate this line, it stands - Programming deals with the much bigger picture, which involves in all the critical parameters from planning, designing, coding, debugging and compiling to testing and implementation. It handles the core functionality between human inputs and proper machine level outputs.

programming language: We are going to talk about programming languages. Just few moment back we’ve learned what is program and what is programming. Do you know what is language? Language is nothing but a medium of communication. When we talk with a person, we use languages to make him or her to understand what we are telling about. And also we do one more thing. If we communicate with a Bengali person we speak in Bangla. Or if we communicate with it English person, we speak in English. In the same way, when we communicate with the computer, we communicate by their own languages, which is called programming languages. In short, a programming language is a vocabulary and set of grammatical rules for instructing a computer or computing device to perform specific tasks. There are several programming languages, i.e., small talk, pearl, Lua, C, C++, Java, Ruby, PHP, Python, Javascript, scala etc. And each programming language has a unique set of keywords (words that it understands) and a special syntax for organizing program instructions. So, when we want a machine to perform a task, we instruct it about the task by programming language.

Explain programming paradigms with examples

We know about programming already. But what is the meaning of paradigm? Paradigm is a school of thought or model that has distinct features, frameworks, patterns, and style which help you solve a particular problem. In a simple word, the term programming paradigm refers to a style of programming. It does not refer to a specific language, but rather it refers to the way you program. This style or way is similar to blueprint. A blueprint of doing something.

There are lots of programming languages that are well-known but all of them need to follow some strategy when they are implemented. And that strategy is a paradigm.

The types of programming paradigms:

  1. Imperative Programming Paradigm: The imperative paradigm is said to be command driven. The program code in imperative paradigm programming languages directs the program execution as sequence of statements executed one by one. In imperative style program, the programmer has to elaborate each statement in detail. Each statement directs what is to be done and how it is to be done.
  2. Procedural: It is a programming paradigm based upon the concept of procedure calls, in which statements are structured into procedures (also known as subroutines or functions). They are a list of instructions to tell the computer what to do step by step, Procedural programming languages are known as top-down languages. Most of the early programming languages are all procedural.
  3. object-oriented: In this framework, all real-world entities are represented by Classes. Objects are instances of classes so each object encapsulates a state and behavior. State implies the fields, attributes of the object and behavior is what you do with the state of the object and they are the methods. Objects interact with each other by passing messages.
  4. Declarative Programming Paradigm: The declarative paradigm is a programming paradigm that is focused on the logic of the program and the end result. In this paradigm that control flow is not the important element of the program. The main focus of the declarative style of programming is achieving the end result. This paradigm is straight forward and to the point while writing the program code.
  5. Functional: Functional programming is a programming paradigm where you have a style of building the structure and elements of computer programs. Here you treat computation as an evaluation of mathematical functions, and you avoid changing state and mutable data.
  6. Logical: The Logical Paradigm takes a declarative approach to problem-solving. Various logical assertions about a situation are made, establishing all known facts. Then queries are made. The role of the computer becomes maintaining data and logical deduction.

How to choose the perfect programming language to create an application?

To choosing a programming language for an application, we need to do some homework first. which is, understand the types of the application, purpose of it and its requirement analysis. It will give us a list that can serve as a starting point to choose the programming language that we’ll need. Then we can see the options for choosing otherwise we cannot. If we go deeper down of the topic it will be easy to understand what I am telling. When the question arises to choose a programming language, we can ask the following questions to find out the best fit programing language for an application:

  • What type of application is going to be made?
  • What is life time of the application will be?
  • What’s the environment that the project will run on — web, mobile, desktop etc.?
  • What is the complexity of the application?
  • What are the deployment considerations? Are there infrastructure considerations to using the programming language?
  • Does the client prefer a certain programming language to be used?
  • Which language have proper ecosystem support? Will the language survive for the long haul?
  • Are there specific libraries, features, and tools for a programming language that are the industry standard for this type of project?
  • Which language is more preferable for this application in terms of Maintainability?
  • What are the constraints of the project that are non-negotiable — time, budget, resources?
  • What are the performance considerations of the project? which language accommodate the benchmarks and the performance?
  • Does it need to integrate with third-party tools?
  • Are there any security considerations?
  • Are there any Scalability and performance considerations?

Here are some practices that programming languages being used today on the basis of types of application. i.e.,

  • Web Applications: JavaScript, PHP, Ruby, TypeScript
  • Mobile Applications: Swift, Java, JavaScript, Object-C
  • Operating Systems: C, C++
  • Distributed Systems: Go
  • Enterprise Applications: Java, C#, C++, ErLang
  • Analytics & Machine Learning: Python, R, Clojure, Julia
  • Math & Scientific Computing: Matlab, FORTRAN, ALGOL, APL, Julia, R, C++
  • Data Visualization: Python, R, Java, C#
  • Big Data: Java, Python, R, Scala, Clojure
  • Data Storage: SQL, C#, Java, Python

Explain programming is always the same but the language varies

If we have clear understanding on programming and programming languages we already have the answer. Programming is always same, because, programming is the process of creating and developing an executable machine program which performs a set of instructions. So, whatever language we use to code to solve that set of instruction, the process is declared and predefined.


Author: Jahedul Huda Chowdhury


Last update: July 6, 2022
Created: July 6, 2022