Lesson 04
Lesson 04
Readability and Can be easy to follow initially but may Emphasizes simplicity, readability, and
Complexity: become complex and lengthy as the requires less code, making it easier to
program grows. read.
Customization Offers straightforward customization Provides less direct control but allows
and control over the program's for easier adaptation to specific needs.
structure.
State Management Involves mutable variables that can Involves immutable variables that do
change during execution. not change during execution.
Control Flow Specifies the exact order of instructions Focuses on the expected results and
to be executed. core logic without directing the
program's control flow.
Evolution of Development Paradigms
Procedural Programming Paradigm: Focuses
on sequences of instructions and data
manipulation, emphasizing structured
programming and code reusability.
Evolution of Development Paradigms
Procedural Programming Paradigm Examples of
Programming Languages
1. C 6. ALGOL (Algorithmic Language)
2. Fortran (Formula Translation) 7. Assembly Language
3. COBOL 8. Lua
4. PASCAL 9. Bourne Shell (sh)
5. Beginner's All-purpose Symbolic
Instruction Code (BASIC)
Evolution of Development Paradigms
Object-Oriented Programming (OOP) Paradigm is a
programming paradigm that focuses on organizing software
design around objects rather than functions and logic.
It is based on the concept of classes and objects, where classes
act as blueprints for individual objects with specific attributes
and methods.
Introduces concepts like encapsulation, inheritance, and
polymorphism, promoting modular, reusable, and
maintainable code.
Evolution of Development Paradigms
Object-Oriented Programming (OOP) Paradigm
Examples of Programming Languages
1. Java 6. JavaScript
2. C++ 7. PHP
3. Python 8. Swift
4. C# 9. Objective-C
5. Ruby 10. Scala
Evolution of Development Paradigms
Functional Programming (FP) Paradigm:
Emphasizes composing functions and immutable
data, facilitating concise and declarative code, and
avoiding side effects.
Evolution of Development Paradigms
Functional Programming Paradigm Examples of
Programming Languages
1. Haskell 6. Elixir
2. Clojure 7. Scheme
3. Scala 8. Ocaml
4. Erlang 9. Elm
5. F# 10. Racket
Evolution of Development Paradigms
Structured programming is a programming paradigm
that aims to enhance program clarity, quality, and
development time by utilizing structured control flow
constructs like selection and repetition, block structures,
and subroutines instead of simple tests and jumps like the
go to statement.
It emphasizes linearizing the flow of control through a
program, following the writing order of the code.
Evolution of Development Paradigms
Structured Programming Paradigm Examples of
Programming Languages
1. C Oriented Language)
2. Pascal 7. Modula-2
3. Ada 8. PL/I (Programming Language
4. ALGOL (Algorithmic Language) One)
5. Fortran 77 and later versions 9. Rexx (Restructured Extended
6. COBOL (Common Business- Executor)
10. Structured Query Language (SQL)
Evolution of Development Paradigms
Logic Programing Paradigm: Brings a
transformative shift in software development
methodologies, emphasizing iterative and
collaborative approaches, enabling rapid
feedback, adaptability, and customer-centricity.
Evolution of Development Paradigms
Logic Programming Paradigm Examples of
Programming Languages
1. Prolog (Programming in Logic) 6. Mercury
2. Datalog 7. Constraint Handling Rules (CHR)
3. Answer Set Programming (ASP) 8. Alloy
4. ECLiPSe (EC LIbrary for 9. Gödel
Programming with loGic and 10. ASP-Core-2
Constraint Satisfaction Problems)
5. λProlog
Evolution of Development Paradigms
Agile Software Development Paradigm: Brings
a transformative shift in software development
methodologies, emphasizing iterative and
collaborative approaches, enabling rapid
feedback, adaptability, and customer-centricity.
Evolution of Development Paradigms
Agile Software Development Paradigm Examples
Methodologies
1. Scrum 6. Feature-Driven Development
2. Extreme Programming (XP) (FDD)
3. Kanban 7. Adaptive Software Development
4. Lean Software Development (ASD)
5. Dynamic Systems Development 8. Lean Startup
Method (DSDM) 9. Scaled Agile Framework (SAFe)
10. Crystal
Evolution of Development Paradigms
DevOps Paradigm: Responds to the need for
seamless collaboration between development and
operations teams, integrating software
development, testing, and operations.
Evolution of Development Paradigms
DevOps Software Development Paradigm Examples
Tools
Here are some key aspects and examples of resilient and sustainable
technologies:
Renewable Energy: Technologies like solar, wind, hydroelectric, and
geothermal power offer sustainable alternatives to fossil fuels. They reduce
greenhouse gas emissions and dependence on finite resources.
Resilient and Sustainable Technologies