Low Level Design Part
Low Level Design Part
Part 1
What is LLD?
● Component Level Design Process
● Provides internal logic of software being developed
● Defines the class diagram that has attributes and methods, defining
relationships between them, etc.
Fundamentals of LLD
Fundamentals of LLD
OOP
Object-Oriented Programming
Course Structure
int main() {
int a;
....
return 0;
}
Classes and Objects
int a;
....
return 0;
}
Classes and Objects
class Person {
public:
int age;
string name;
string address;
};
int main() {
int a;
Person p1, p2;
....
return 0;
}
Classes and Objects
};
Classes and Objects
private:
int age_;
string name_;
string address_;
};
Class Initialization
Constructors
Unlike normal member functions, constructors have specific rules for how they
must be named:
● Constructors must have the same name as the class (with the same
capitalization).
● Constructors have no return type (not even void).
Concepts Check-in
● LLD Overview
● Classes and Objects
● Public & Private members
● Constructors
● Getter & Setter Pattern
Encapsulation
● Encapsulation is the integration of data and operations into a class.
● Encapsulation is hiding the functional details from the object calling it.
Encapsulation
● Encapsulation is the integration of data and operations into a class.
● Encapsulation is hiding the functional details from the object calling it.
Encapsulation
class Car { Exposed to the user
public:
void Clutch();
void Break();
void Accelerate();
private:
Engine engine_; Hidden from the user
....
};
Inheritance
Inheritance is a mechanism in which one object acquires all the properties and
behaviors of a parent object.
string job_role;
string company;
int salary;
int id;
int age;
string name;
string address;
string mobile_no;
string aadhaar_no;
};
What’s next?
● Polymorphism
● Abstraction
Thank You!