Modularity
Modularity in OOAD is like organizing your kitchen. Just as you keep pots in one cabinet and dishes in another for easier access and maintenance, in OOAD, you group similar functions and data into organized module or classes. This makes it simpler to understand and change specific parts of your software without affecting the entire program, similar to how you can upgrade one appliance in your kitchen without redoing the whole room.
Advantages of Modularity
- Modularity makes it easier to fix or update one part of a software system with messing up the rest.
- You can reuse modules in different parts of your software, saving time and effort.
- Multiple programmers can work on different modules simultaneously.
Disadvantages of Modularity
- Overdoing modularity can make your software too complex with many small parts, making it harder to grasp.
- Breaking a program into modules may add some extra work and slow down the software slightly.
Object Oriented Principles in OOAD
Object-oriented principles are a set of guidelines for designing and implementing software systems that are based on the idea of objects. Objects are self-contained units of code that have both data and behavior. They can interact with each other to perform tasks.
Object-Oriented Analysis and Design (OOAD) is a software engineering methodology that uses object-oriented principles to design and implement software systems. OOAD involves a number of techniques and practices, including:
- Object-Oriented Modelling: This involves using visual diagrams to represent the different objects in a software system and their relationships to each other.
- Use Cases: This involves describing the different ways in which users will interact with a software system.
- Design Patterns: This involves using reusable solutions to common problems in software design.
Important Topics for Object Oriented Principles in OOAD
- Abstraction
- Encapsulation
- Modularity
- Hierarchy
- Typing
- Concurrency
- Persistence
- Conclusion