Useful Links
Computer Science
Software Engineering
Software Architecture and Design Patterns
1. Introduction to Software Architecture
2. Architectural Drivers and Requirements
3. Fundamental Architectural Concepts
4. Layered Architecture
5. Client-Server Architecture
6. Model-View-Controller Pattern
7. Service-Oriented Architecture
8. Microservices Architecture
9. Event-Driven Architecture
10. Introduction to Design Patterns
11. Creational Design Patterns
12. Structural Design Patterns
13. Behavioral Design Patterns
14. Architectural Documentation
15. Architecture Evaluation
16. Domain-Driven Design
17. Cloud-Native Architecture
18. Security Architecture
19. Architecture Evolution
20. Anti-Patterns and Code Smells
Layered Architecture
Basic Layered Architecture
Layer Definition
Layer Responsibilities
Layer Dependencies
Communication Rules
Three-Tier Architecture
Presentation Layer
Business Logic Layer
Data Access Layer
Multi-Tier Architecture
Additional Layer Types
Layer Granularity
Cross-Cutting Concerns
Benefits and Limitations
Separation of Concerns
Maintainability
Performance Considerations
Flexibility Trade-offs
Previous
3. Fundamental Architectural Concepts
Go to top
Next
5. Client-Server Architecture