Software Architectures [Dev Concepts #9]

Share on facebook
Share on twitter
Share on linkedin
Learn all about the different types of software architectures in this dev lesson!

In this video of the series Dev Concepts, we talk about the different types of software architectures like Monolith Apps, the Client-Server Model, Front-end and Back-end, 3-tier and multi-tier, and more. Svetlin Nakov also explains what the role of the software architect is and why it’s important.

Software systems are structured as set of interconnected components. This structure is called a software architecture.
Software systems consist of interconnected components organized in certain structure called architecture. Software architecture is a broad engineering discipline.
In large organizations the architecture is designed by the software architects.
In smaller organizations, the architecture is designed by the senior developers or by the technical team leader.
The software architecture defines the structure of the system: its components and their interactions.
Concepts related to software architectures are:
  • Monolith apps – applications, consisting of a single component
  • The “client-server” model, where the client requests resources from the server and displays them to the user
  • The concept of “front-end” (the user interface of the system) and “back-end” (the data storage and processing logic)
  • The classical “3-tier” and “multi-tier” architectural models, where the system is split into user interface, business logic and data storage
  • The concept of “SOA” (service-oriented architecture) and microservices (self-contained software components)
All these concepts are complicated, and developers learn them in detail as they gain experience for many years.

If you are new to programming, make sure to watch our Free Full Java Basics course! It will give you the necessary foundation to build upon and become a successful software engineer!

Lesson Topics

In this video we review the following topics:
  • Overview of Software Architectures – Monolith Apps, The “Client-Server” Model, 3-Tier/Multi-Tier Architecture
  • An Example of a Software Architecture
  • Front-End and Back-End

Remember that coding is a skill, which should be practiced. To learn to code, you should write code, every day, for a long time. Watching tutorials is not enough. You should code! 

We would love to hear from you, so leave a comment below saying what topics you would like to see next. 

Leave a Comment

Scroll to Top

Sign in

Don’t have an account? Register with us to join the community.