Basics Of Coding And Programming

As we all are familiar with words coding and programming but very few people knows what is the difference between coding and programming.
so let’s see
coding:
Coding simple means writing codes and a coder is an individual who codes
from one language to another. Coding is also programming but it’s used to implement the initial steps of computer programming. … They are more of a language oriented programmers who translate logic into machine-readable codes.Their work is to just create software. Coder is just to translate logic or ideas into machine readable language.This is where
programming comes into picture.

10 Reasons to Teach Coding


programming:
programmer’s job is to solve the given problem by his own logic or idea. A programmer creates things, develops logic, and analyzes a problem. Writing code is just the beginning steps of what makes up the tasks of a programmer. While a coder codes at an intermediate level, a programmer works actively on the abstract solutions to a potential problem that may or may not pertain along the process. The idea is to rectify even the slightest
problem that can possibly ruin the code and lay out the perfect plan accordingly to navigate the project through its successful implementation without any bugs and errors. The job of a programmer is to craft solutions to problems that may or may not occur. It takes years for an individual to become a professional programmer. They can work as developers, coders, analysts, and more.
There are two types of programming languages, which can be categorized
into the following ways:

Computer coding for kids
  1. Low level language

a) Machine language (1GL)
b) Assembly language (2GL)

  1. High level language
    a) Procedural-Oriented language (3GL)
    b) Problem-Oriented language (4GL)
    c) Natural language (5GL)
  2. Low level language
    This language is the most understandable language used by computer to perform its operations.
    It can be further categorized into:
    a) Machine Language (1GL)
    Machine language consists of strings of binary numbers (i.e. 0s and 1s) and it is the only one language, the processor directly understands. Machine language has an Merits of very fast execution speed and efficient use of primary memory.
  3. Merits:
    ¨ It is directly understood by the processor so has faster execution time since the programs written in this language need not to be translated.
    ¨ It doesn’t need larger memory.
  4. Demerits:
    ¨ It is very difficult to program using 1GL since all the instructions are to be represented by 0s and 1s.
    ¨ Use of this language makes programming time consuming.
    ¨ It is difficult to find error and to debug.
    ¨ It can be used by experts only.
    b) Assembly Language
    Assembly language is also known as low-level language because to design a program programmer requires detailed knowledge of hardware specification. This language uses mnemonics code (symbolic operation code like ‘ADD’ for addition) in place of 0s and 1s. The program is converted into machine code by assembler. The resulting program is reffered to as an object code.

Merits:
¨ It is makes programming easier than 1GL since it uses mnemonics code for programming.
Eg: ADD for addition, SUB for subtraction, DIV for division, etc.
¨ It makes programming process faster.
¨ Error can be identified much easily compared to 1GL.
¨ It is easier to debug than machine language.
Demerits:
¨ Programs written in this language is not directly understandable by computer so translators should be used.
¨ It is hardware dependent language so programmers are forced to think in terms of computer’s architecture rather than to the problem being solved.
¨ Being machine dependent language, programs written in this language are very less or not protable.
¨ Programmers must know its mnemonics codes to perform any task.

  1. High level language
    Instructions of this language closely resembles to human language or English like words. It uses mathematical notations to perform the task. The high level language is easier to learn. It requires less time to write and is easier to maintain the errors. The high level language is converted into machine language by one of the two different languages translator programs; interpreter or compiler.

High level language can be further categorized as:
a) Procedural-Oriented language (3GL)
The procedural programming language is used to execute a sequence of statements which lead to a result. Typically, this type of programming language uses multiple variables, heavy loops and other elements, which separates them from functional programming languages. Functions of procedural language may control variables, other than function’s value returns. For example, printing out information.
Procedural Programming is a methodology for modeling the problem being solved, by determining the steps and the order of those steps that must be followed in order to reach a desired outcome or specific program state. These languages are designed to express the logic and the procedure of a problem to be solved. It includes languages such as Pascal, COBOL, C,
FORTAN, etc.


Merits:
¨ Because of their flexibility, procedural languages are able to solve a variety of problems.
¨ Programmer does not need to think in term of computer architecture which makes them focused on the problem.
¨ Programs written in this language are portable.


Demerits:
¨ It is easier but needs higher processor and larger memory.
¨ It needs to be translated therefore its execution time is more.
b) Problem-Oriented language (4GL)
It allows the users to specify what the output should be, without describing all the details of how the data should be manupulated to produce the result. This is one step ahead from 3GL.
These are result oriented and include database query language.
Eg: Visual Basic, C#, PHP, etc.
The objectives of 4GL are to:
Ø Increase the speed of developing programs.
Ø Minimize user’s effort to botain information from computer.
Ø Reduce errors while writing programs.


Merits:
¨ Programmer need not to think about the procedure of the program. So, programming is much easier.
Demerits:
¨ It is easier but needs higher processor and larger memory.
¨ It needs to be translated therefore its execution time is more.
c) Natural language (5GL)
Natural language are stil in developing stage where we could write statrments that would look like normal sentences.

Merits:
¨ Easy to program.
¨ Since, the program uses normal sentences, they are easy to understand.
¨ The programs designed using 5GL will have artificial intelligence (AI).
¨ The programs would be much more interactive and interesting.
Demerits:
¨ It is slower than previous generation language as it should be completely translated into binary code which is a tedious task.
¨ Highly advanced and expensive electronic devices are required to run programs developed in 5GL. Therefore, it is an expensive approach
Some other important types as follows:
1]Functional Programming Language
Functional programming language typically uses stored data, frequently avoiding loops in favor of recursive functions.The functional programming’s primary focus is on the return values of functions, and side effects and different suggests that storing state are powerfully discouraged.
For example, in an exceedingly pure useful language, if a function is termed, it’s expected that the function not modify or perform any o/p. It may, however, build algorithmic calls and alter the parameters of these calls. Functional languages are usually easier and build it easier to
figure on abstract issues, however, they’ll even be “further from the machine” therein their programming model makes it difficult to know precisely, but the code is decoded into machine language (which are often problematic for system programming).

2]Object-oriented Programming Language
This programming language views the world as a group of objects that have internal data and external accessing parts of that data. The aim this programming language is to think about the fault by separating it into a collection of objects that offer services which can be used to solve a specific problem. One of the main principle of object oriented programming language is encapsulation that everything an object will need must be inside of the object. This language also emphasizes reusability through inheritance and the capacity to spread current implementations without having to change a great deal of code by using polymorphism.

3]Scripting Programming Language
These programming languages are often procedural and may comprise object-oriented language elements, but they fall into their own category as they are normally not full-fledged programming languages with support for development of large systems. For example, they may not have compile-time type checking. Usually, these languages require tiny syntax to get started.

4]Logic Programming Language
These types of languages let programmers make declarative statements and then allow the machine to reason about the consequences of those statements. In a sense, this language doesn’t tell the computer how to do something, but employing restrictions on what it must consider doing.
To call these groups ” types of language ” is really a bit confusing. It’s easy to program in an object-oriented style in C language. In truth, most of the languages include ideas and features from various domains, which only helps to increase the usefulness of these types of languages.
Nevertheless, most of the programming languages do not best in all styles of programming.
Even if you didn’t got the all meaning of all terms mentioned above, don’t werry…. If you will learn programming language slowly you will get all the terms.

19 Free Resources to Learn Computer Science, Programming and Coding - visit LongLiveLearniing.com for direct links to the courses and more info!

Categories: News