Object-oriented design
Good System design is paramount to extensible, bug-free, durable code. We know that there are nearly infinite ways to resolve any software issue, but when it comes to software extensibility and maintenance, good software development is essential. One way to build lasting software is to use object-oriented design best practices. You should have a working knowledge of a few common and useful design patterns and know how to write software in an object-oriented way. You probably won’t be asked to give detailed descriptions of how specific design patterns work, but expect to have to defend your design choices.
Topics |
Link |
---|---|
1. What is Object Oriented Programming (OOP)? | Link |
2. Why OOPs? | Link |
3. What is a Class? | Link |
4. What is an Object? | Link |
5. What are the main features of OOPs? | Link |
6. What is Encapsulation? | Link |
7. What is Abstraction? | Link |
8. What is Polymorphism? | Link |
9. What is Inheritance? What is its purpose? | Link |
10. What are access specifiers? What is their significance in OOPs? | Link |
11. What are the advantages and disadvantages of OOPs? | Link |
12. What other paradigms of programming exist besides OOPs? | Link |
13. What is the difference between Structured Programming and Object Oriented Programming? | Link |
14. What are some commonly used Object Oriented Programming Languages? | Link |
15. What are the different types of Polymorphism? | Link |
16. What is the difference between overloading and overriding? | Link |
17. Are there any limitations on Inheritance? | Link |
18. What different types of inheritance are there? | Link |
19. What is an interface? | Link |
20. How is an abstract class different from an interface? | Link |
21. How much memory does a class occupy? | Link |
22. Is it always necessary to create objects from class? | Link |
23. What is the difference between a structure and a class in C++? | Link |
24. What is a Constructor? | Link |
25. What are the various types of constructors in C++? | Link |
26. What is a destructor? | Link |
27. Can we overload the constructor in a class? | Link |
28. Can we overload the destructor in a class? | Link |
29. What is the virtual function? | Link |
30. What is pure virtual function? | Link |
Top Software Development Topics to prepare for Interview
Software development refers to a set of computer science activities dedicated to the process of creating, designing, deploying, and supporting software.
Table of Content
- Programming language
- Data structures
- Algorithms
- System Design
- Coding
- Object-oriented design
- Databases
- Distributed computing
- Operating systems
- Internet topics
- General machine learning and artificial intelligence
- Conclusion