PROGRAMMING PARADIGMS AND MOD……
PROGRAMMING PARADIGMS AND MODELS
Programming Paradigm என்பது ஒரு problem-ஐ program மூலம் எப்படி solve செய்ய வேண்டும் என்பதற்கான general style / approach / way of thinking. Simple Tamil: Program எப்படி எழுத வேண்டும், logic-ஐ எப்படி organize செய்ய வேண்டும் என்பதற்கான method…
Programming Paradigm என்பது ஒரு problem-ஐ program மூலம் எப்படி solve செய்ய வேண்டும் என்பதற்கான general style ……
1. PARADIGM என்றால் என்ன?…
Paradigm என்ற சொல்லின் simple meaning: Model Pattern Style Approach Way of thinking Programming-ல்: Problem ↓……
LANGUAGE VS PARADIGM
இந்த இரண்டு terms-ஐ confuse ச……
C++ = Programming Language Object-Oriented Programming = Paradigm ஆனால் C++ ஒரே paradigm மட்டும் su……
MAJOR PROGRAMMING PARADIGMS
Programming paradigms broad-ஆக: Programming Paradigms | +-- Imperative | +-- Declarative இவற்றுக்குள் பல sub-……
IMPERATIVE PARADIGM
Imperative Programming என்பது computer ஒரு task செய்ய வேண்டிய exact sequence of commands-ஐ programmer step-by……
int sum = 0;…
இங்கு program: sum initialize செய் ↓ i = 1 ↓ condition check செய் ↓……
1. WHY "IMPERATIVE"?…
Imperative என்றால் command / ……
ஒருவரிடம்: Door திற Room-க்கு போ Light on செய் Book எ……
CHARACTERISTICS OF IMPERATIVE PROGRAMMING
Important characteristics: Statements Varia……
int x = 10;…
Program state: Initially x = 10 Then x = 15 Then x = 30 S……
PROCEDURAL PROGRAMMING
Procedural Programming என்பது பெரிய program-ஐ small procedures / ……
Student Management Program | +-- g……
PROCEDURAL PROGRAMMING EXAMPLE
int add(int a, int b) { retur……
இங்கு: add() main() functions மூலம் pr……
PROCEDURAL PROGRAMMING FLOW
Main Program ↓ Function 1 ↓ F……
PROCEDURAL PROGRAMMING FEATURES
Functions / Procedures Top-down design Sequential execution Variables L……
TOP-DOWN APPROACH
Procedural programming பொதுவா……
Big Problem ↓ Smaller Problem……
Banking System ↓ Account Tran……
OBJECT-ORIENTED PARADIGM
Object-Oriented Programming (OOP) என்பது program-ஐ functions மட்டும் மையமாக அமைக்காமல், objects மற்றும் அவற்ற……
1. OBJECT என்றால்?…
Real-life: Car Car-க்கு properties: Color Speed Model Price Car செய்யும் actions: St……
CLASS
Class என்பது objects உருவாக்க……
இதில் Student = class. Object……
OOP IMPORTANT CONCEPTS
Class Object Encapsulation Abstrac……
OOP APPROACH
Procedural: Function is important OOP: Object ……
OOP BOTTOM-UP APPROACH
OOP பொதுவாக Bottom-Up Approach என்று exam-ல் குறிப்பிடப்படுகிறது. Small Objects……
PROCEDURAL VS OOP
DECLARATIVE PROGRAMMING
Declarative Programming என்பது problem எப்படி solve செய்ய வேண்டும் என்ற steps-ஐ specify செய்……
IMPERATIVE VS DECLARATIVE
Suppose database-ல் age > 18 students வேண்டும். Imperative thinking: Start from first student Check age If ag……
MEMORY TRICK
Imperative = HOW Declarative ……
FUNCTIONAL PROGRAMMING
Functional Programming என்பது computation-ஐ mathematical functions evaluation போல……
SIMPLE FUNCTIONAL IDEA
Traditional: int x = 10; x = x + 5; x = x * 2; இங்கு x repeatedly change ஆகிற……
PURE FUNCTION
Functional programming-ல் important concept: Pure Function ஒரு……
int square(int x) { return x ……
Output always: 25…
FUNCTIONAL PROGRAMMING FEATURES
First-class functions Higher-order functions Recursion Immutability Expression evalua……
LOGIC PROGRAMMING
Logic Programming என்பது facts மற்றும் rules கொடுத்து, sy……
LOGIC PROGRAMMING EXAMPLE
Facts: Human(Socrates) Rule: If someone is human, then that person is mortal. Formal idea: Human(x) → M……
LOGIC PROGRAMMING COMPONENTS
Facts Rules Queries Inference M……
EVENT-DRIVEN PROGRAMMING
இந்த paradigm syllabus-ல் lat……
Event-Driven Programming என்பது program execution user அல்லது system events……
User clicks LOGIN button ↓ Cl……
EVENT HANDLER
Event ஏற்பட்டதும் execute ஆகு……
buttonClicked() { login(); } GUI a……
CONCURRENT PROGRAMMING
Multiple tasks overlapping அல்லது simultane……
ஒரு application: Download file Play music ……
PARALLEL PROGRAMMING
Parallel programming-ல் multiple computations actual-ஆக same time-ல் mul……
CONCURRENT VS PARALLEL
Exam-ல் இரண்டையும் same என்று……
GENERIC PROGRAMMING
C++-க்கு மிகவும் important.…
ஒரே algorithm / code-ஐ different data types-க்கு reuse செய்……
GENERIC PROGRAMMING EXAMPLE
Without generic programming: int addInt(int a, int b) { return a + b; } double addDouble(double a, double b) ……
GENERIC PROGRAMMING IDEA
Algorithm ↓ Independent of specific data type ↓ Template ↓ Wo……
1. PROGRAMMING MODELS என்றால்……
இப்போது Paradigm மற்றும் Mode……
Programming Model என்பது computation எப்படி represent மற்றும் execute செய்யப்படுகிறது என்பதை விளக்கும் concep……
PARADIGM VS MODEL
IMPORTANT PROGRAMMING MODELS
Programming language theory-ல் commonly discussed models: Imperative ……
STATE-BASED MODEL
Imperative languages-ல் program ஒரு ……
int x = 5; State:…
Flow: State 1 ↓ Statement State 2 ↓ Statement Stat……
VON NEUMANN MODEL
Imperative programming languages-ன் traditional foundatio……
Program instructions மற்றும் ……
Memory ↕ CPU CPU: Fetch ↓ Decode ↓ Execute இந்த architec……
FUNCTIONAL MODEL
Functional model computation-ஐ……
f(5) = 25 Input ↓ Function ↓ ……
LOGIC MODEL
Then: Query ↓ Inference Engine ↓ Answe……
OBJECT MODEL
Object model-ல் system: Objects + Messages / Method Calls + Interactions Customer Object ↓ ……
MESSAGE PASSING
OOP model-ல் objects communication செய்ய method calls பயன்படுத்துகின்றன. account.deposit(5……
DATA-DRIVEN MODEL
சில systems-ல் operations data avai……
Data arrives ↓ Processing starts ↓ New d……
DATAFLOW MODEL
ஒரு operation-க்கு required inputs available ஆனதும் அந்த operation execute ஆகும் comp……
DATAFLOW EXAMPLE
Suppose: A = B + C D = A × E Flow: B ----\ + → A ----……
RULE-BASED MODEL
System rules அடிப்படையில் act……
IF temperature > 40 THEN display "High Tempera……
PROGRAMMING PARADIGMS - COMPLETE COMPARISON
IMPERATIVE VS FUNCTIONAL
OOP VS FUNCTIONAL
DECLARATIVE VS IMPERATIVE
Imperative Tell computer HOW ……
Example SQL: SELECT name FROM……
SINGLE-PARADIGM LANGUAGE
ஒரு language mainly ஒரு particular paradigm-ஐ focus செய்தால்: Single-paradigm language ……
MULTI-PARADIGM LANGUAGE
Multiple programming styles support செய்யும் langu……
1. WHY C++ IS MULTI-PARADIGM?…
Modern C++: [] (int x) { return x*x; } lambda functions-……
C++ PARADIGM FLOW
C++ | +-- Procedural | +-- Object-……
C++ is a general-purpose, mul……
ADVANTAGES OF MULTI-PARADIGM PROGRAMMING
Different problems-க்கு diffe……
Simple mathematical task ↓ Procedural Large business soft……
PROGRAMMING MODEL - STATE TRANSITION VIEW
இதனை: S0 → S1 → S2 → S3 என்று state transition model-ஆக represent ……
Programming paradigm என்பது: Problem-solving style. Programming model என்பது: Computation/execu……
I → Imperative → Instructions P → Procedural → Procedures O → OOP → Objects F → Functional → Functions L → Lo……
1. C++ is which type of progr……
Answer: Multi-paradigm progra……
Procedural programming follows:
Answer: Top-down approach.…
Object-oriented programming generally follows:
Answer: Bottom-up approach.…
1. Which paradigm focuses on ……
Answer: Object-Oriented Progr……
1. Which paradigm uses facts ……
Answer: Logic Programming.…
Prolog belongs to:
Answer: Logic programming par……
Haskell is mainly associated with:
Answer: Functional programmin……
1. Which paradigm specifies h……
Answer: Imperative paradigm.…
1. Which paradigm mainly spec……
Answer: Declarative paradigm.…
C++ templates support:
Answer: Generic programming.…
A programming paradigm refers……
Which is an imperative paradi……
Which programming approach di……
OOP primarily organizes a pro……
Declarative programming mainl……
Which language is traditional……
Functional programming emphas……
Templates in C++ mainly suppo……
Which paradigm is mainly asso……
The phrase "HOW to compute" i……
Do not confuse: Procedural ≠ OOP Imperative ≠ Declarative Functional ≠ Procedural Concurrent ≠ Parallel Parad……
Programming Paradigm ↓ Program எழுதும் problem-solving style ↓ Two broad approaches | +---- Imperative | | | ……