0% found this document useful (0 votes)
8 views

Lecture 2-Programming Languages

The document provides an overview of programming languages, categorizing them into low-level and high-level languages, with examples and characteristics of each. It explains the differences between machine language, assembly language, procedural languages, and object-oriented programming languages, as well as the translation processes for high-level languages. Additionally, it discusses applications of programming languages in various domains such as mobile, web, desktop applications, game development, cloud computing, and cybersecurity.

Uploaded by

luizmtui
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views

Lecture 2-Programming Languages

The document provides an overview of programming languages, categorizing them into low-level and high-level languages, with examples and characteristics of each. It explains the differences between machine language, assembly language, procedural languages, and object-oriented programming languages, as well as the translation processes for high-level languages. Additionally, it discusses applications of programming languages in various domains such as mobile, web, desktop applications, game development, cloud computing, and cybersecurity.

Uploaded by

luizmtui
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 43

Programming Languages

|
Objectives
• Explain differences between
programming language
classifications.

• Explain differences between


programming languages.

Monday, May 12, 2025 Programming Languages | 2


Definition
• A programming language is an
artificial language designed to
communicate instructions to a
computer. Eg C++, java,python, R.

Monday, May 12, 2025 Programming Languages | 3


Categories of programming
languages

Monday, M
ay 12, 202
Programming Languages | 4
Categories of programming
languages

• Low level Languages


» Machine language

» Assembly Languages

• High level languages


» Procedural

» Object oriented (OOP)

Monday, M
ay 12, 202
Categories of Programming Languages | 5
Low Level Languages

|
Categories of programming
languages

• A Low Level language is one which


exposes a significant amount of the
computer's inner workings while high
level programming languages hide
the details of the computer.

Monday, M
ay 12, 202
Programming Languages | 7
Machine language

Monday, M
ay 12, 202
Programming Languages | 8
Machine language

• Any computer can directly


understand only its own machine
language, defined by its hardware
design

Monday, M
ay 12, 202
Programming Languages | 9
Machine language

Monday, M
ay 12, 202
Programming Languages | 10
Characteristics of Machine Language

1. Instructions consists of a series of


zeros and ones
2. Not friendly to programmers
3. This is the language best understood
by the computer
4. Does not require any translation
5. Programs written in machine
language are machine/computer
dependent

Monday, M
ay 12, 202
Programming Languages | 11
Assembly language

Monday, M
ay 12, 202
Programming Languages | 12
Assembly Language-Characteristics
1. Instructions are written using
partial words referred to as
mnemonics
2. Instructions require to be translated
The translations is done using an
assembler
3.Abit friendly to programmers
4. Programs written are
machine/computer dependent

Monday, M
ay 12, 202
Programming Languages | 13
High Level Languages

|
High Level Language
• A programming language that
enables a programmer to write
programs that are more or less
independent of a particular type of
computer.

Monday, M
ay 12, 202
Programming Languages | 15
High Level Language
• Such languages are considered high-
level because they are closer to
human languages and further from
machine languages.
• Which other programming languages
fall in this category?

Monday, M
ay 12, 202
Programming Languages | 16
High Level Language-Characteristics
Instructions in high level language are
refereed to as source code
1. Instructions are written in words
2. Require to be translated to machine
language
3. Friendly to programmers
4. Not machine dependent. They are
machine independent

Monday, M
ay 12, 202
Programming Languages | 17
High Level Language
• The main advantage of high-level
languages over low-level languages
is that they are easier to program.
These programs written in a high-
level language must be translated
into machine language by a compiler
or interpreter.
Monday, M
ay 12, 202
Programming Languages | 18
Procedural Language
• procedural programming could be
regarded as a list of instructions telling
a computer, step-by-step, what to do
and usually having a linear order of
execution from the first statement to
the second and so forth with occasional
loops, functions and branches.

Monday, M
ay 12, 202
Categories of Programming Languages | 19
Procedural Language
• Procedural programming languages
include C, C++, Fortran, Pascal, and
BASIC.

Monday, M
ay 12, 202
Categories of Programming Languages | 20
Object Oriented Programming Languages

• The focus of OOP languages is not on

• structure, but on modeling data.

• • Programmers code using


“blueprints” of
• data models called classes.

• Examples of OOP languages include


Java, C++,Visual Basic.NET .
Monday, M
ay 12, 202
Categories of Programming Languages | 21
Programming languages:
Examples

Monday, M
ay 12, 202
Programming Languages | 22
Translation of HL Languages

|
Translation of HL
Languages
• All HL programs
need to be
translated to
machine
language so that
a computer can
process the
program.

Monday, M
ay 12, 202
Programming Languages | 24
Translation of HL Languages
• These translation can occur in two
ways;
» Block of code translated all at once

» Block of code translated one line


after another

Monday, M
ay 12, 202
Programming Languages | 25
Compiling

Monday, M
ay 12, 202
Programming Languages | 26
Compiling

• Some programs are translated using a


compiler. When programs are
compiled,

they are translated all at once.

Compiled programs typically execute


more quickly than interpreted programs,
but have a slower translation speed.
Monday, M
ay 12, 202
Programming Languages | 27
Interpreting

• Some programs are translated using an

interpreter. Such programs are


translated line-by-line instead of all at
once (like compiled programs).Interpreted
programs generally translate quicker than
compiled programs, but have a slower
execution speed.

Monday, M
ay 12, 202
Programming Languages | 28
Examples of compiled languages
1. C++
2. C
3. Pascal
4. Pike
5. SQL

Monday, M
ay 12, 202
Programming Languages | 29
Examples of interpreted languages
1. Java
2. Python
3. Php
4. R

Monday, M
ay 12, 202
Programming Languages | 30
HL Programming Languages
Application domains
1. Program Development e.g Web,
Mobile, Desktop programs
2. Embedded Devices and Internet of
Things
3. Game Development
4. Cloud-based Applications
5. Cyber Security
6. Data Science and AI

Monday, M
ay 12, 202
Programming Languages | 31
Mobile applications
Programs developed for portable
devices.
These devices have limitations in
terms of ;processing speed, storage,
display and power

Languages used for mobile application


development include; java,
ruby,swift,html5

Monday, M
ay 12, 202
Programming Languages | 32
Web applications
Programs that are accessed via a web
Brower and through a connection
(internet or otherwise). Eg A.M.S,
ecitizen, facebook, instagram,
youtube, jumia, amazon,
mysafaricom…

Languages used for web application


development include; javascript, html,
php,python…

Monday, M
ay 12, 202
Programming Languages | 33
Desktop applications
Programs that are designed for PC’s
(Desktop and laptops). Eg ms office
(word, excel, access..)

Languages used for desktop


application development include; c++,
java, c, …

Monday, M
ay 12, 202
Programming Languages | 34
Video Game Development
Video game development is the process of transforming
game ideas into actual games for users to play.
Video game development is achieved through Game
engines. Game Engines are development environments
or game frameworks that make game development
more convenient.e.g Unity, Unreal Engine, Cry Engine,
Defold
Programming Languages used for video game
development include C#, C++, Java, Lua, swift, Java
Script

Monday, M
ay 12, 202
Programming Languages | 35
Cloud-Based Applications
A cloud application is an internet-based software
that processes or stores data online.
Cloud computing has, without a doubt, created a
new way in which technology resources are used.
This has, in turn, come with several benefits,
including enhanced security, increased speed, low
cost of development and higher productivity.
Programming languages include GoLang, Ruby on
Rails Java, Php, C, Python

Monday, M
ay 12, 202
Programming Languages | 36
Embedded System Development

Embedded systems are computer systems


that have a dedicated function. They are
“embedded” because they exist within a
larger mechanical or electronic system.

Monday, M
ay 12, 202
Programming Languages | 37
Programming Languages for Embedded
Systems

Monday, M
ay 12, 202
Programming Languages | 38
Cyber Security
Understanding programming enables
Cybersecurity professionals to study
software and find security flaws, identify
malicious codes, and carry out analytical
activities in Cybersecurity. But selecting a
computer language to learn is more
challenging than it seems.

Monday, M
ay 12, 202
Programming Languages | 39
Programming languages for Cyber Security

Monday, M
ay 12, 202
Programming Languages | 40
Data Science Programming
Languages

Monday, M
ay 12, 202
Programming Languages | 41
Reading assignment 2
Read the article titled “Types of Computer
Languages with Their Advantages and

Disadvantages” and make short notes.

Monday, M
ay 12, 202
Introduction to Programming | 42
Ole Sangale Road, Madaraka Estate. PO Box 59857-00200, Nairobi, Kenya
Tel: (+254) (0)703 034000/200/300 Fax : +254 (0)20 607498
Email: [email protected] Website: www.strathmore.edu
|

You might also like