Java Interview: Difference between revisions

From Chorke Wiki
Jump to navigation Jump to search
No edit summary
Line 64: Line 64:
* [https://openclassrooms.com/en/courses/5684096-use-mvc-solid-principles-and-design-patterns-in-java/6417861-create-objects-with-creational-design-patterns Create Objects With Creational Design Patterns]
* [https://openclassrooms.com/en/courses/5684096-use-mvc-solid-principles-and-design-patterns-in-java/6417861-create-objects-with-creational-design-patterns Create Objects With Creational Design Patterns]
* [https://openclassrooms.com/en/courses/5684096-use-mvc-solid-principles-and-design-patterns-in-java/6417836-avoid-stupid-practices-in-programming Avoid STUPID Practices in Programming]
* [https://openclassrooms.com/en/courses/5684096-use-mvc-solid-principles-and-design-patterns-in-java/6417836-avoid-stupid-practices-in-programming Avoid STUPID Practices in Programming]
* [https://www.javatpoint.com/osi-model#:~:text=Functions%20of%20the%20OSI%20Layers Functions of the OSI Layers]
* [https://www.jrebel.com/blog/solid-principles-in-java SOLID Principles in Java]
* [https://www.jrebel.com/blog/solid-principles-in-java SOLID Principles in Java]
* [https://www.xinjianl.com/note/software/ Computer Science]
* [https://www.xinjianl.com/note/software/ Computer Science]
* [https://www.xinjianl.com/note/software/software-architecture/design-pattern/ Design Pattern]
* [https://www.xinjianl.com/note/software/software-architecture/design-pattern/ Design Pattern]
* [https://www.xinjianl.com/note/software/algorithm/ Algorithm]
* [https://www.xinjianl.com/note/software/algorithm/ Algorithm]

Revision as of 17:09, 24 October 2020

  1. MVC
    1. Model
    2. View
    3. Controller
  2. SOLID Design Principles
    1. Single Responsibility Principle
    2. Open-Closed Principle
    3. Liskov Substitution Principle
    4. Interface Segregation Principle
    5. Dependency Inversion Principle
  1. Design Pattern
    1. Creational Design Patterns
      1. Factory Pattern
      2. Prototype Pattern
      3. Builder Pattern
      4. Singletons
    2. Structural Design Patterns
      1. Adapter Pattern
      2. Composite Pattern
      3. Decorator Pattern
    3. Behavioral Design Patterns
      1. Strategy Pattern
      2. State Pattern
  1. STUPID Practices in Programming
    1. S for Singleton
    2. T for Tight Coupling
    3. U for Untestability
    4. P for Premature Optimization
    5. I for Indescriptive Naming
    6. D for Duplication

Composition vs Aggregation
Both are Association
Composition: A "owns" B
Aggregation: A "uses" B
Network
Physical Layer: Ethernet, 802.11
Data Link Layer: MAC, ARP, PPP
Network Layer: IPv4, IPv6
Transport Layer
Session Layer
Presentation Layer
Application Layer: DNS

References