 In this video I will present the concept of architectural style or pattern because we will talk a lot about them. Patterns are a means of representing sharing and reusing knowledge. Patterns are kind of the recipes in software engineering and the recipe of an architectural pattern is a stylized description of reusable design solutions to the commonly occurring problems which have been tried and tested in different environments. It's like a chess etude or chess quiz when a situation is presented on the chess board and one needs to find an elegant solution to beat the opponent. The more situations and elegant solutions software engineer already knows the better design decisions one can make. Architectural patterns are similar to software design patterns but have a broader scope. An architectural pattern is more like a strategy when a design pattern is a tactical solution that implements a strategy. Anyway you need to keep in mind that a line between those terms is blurry. Patterns should include information about when they are and when they are not useful. Patterns may be represented using tabular and graphical descriptions. Although we will investigate architectural patterns one by one I want to stress that the architecture of a software system is almost never limited to a single architectural style but is often a combination of architectural styles that make up the complete system. For example you might have an sword design composed of services developed using a layered architecture approach and an object oriented architecture style. We will see many examples in other videos. Most engines like game engines and frameworks use at least several architectural patterns. Here are listed all the architectural patterns that we will investigate in detail except for the last three. The main driven architecture, CQRS and even sourcing. If you will find that architectural patterns are fun and useful take a look at these modern patterns. To summarize, patterns aim to present, share and reuse knowledge. An architectural pattern is a reusable design decision to the commonly occurring problem that has been tried and tested in different environments. The architecture of a software system is almost never limited to a single architectural style but is often a combination of architectural styles that make up the complete system. It is useful to know when specific patterns are useful and when they are not. You always can investigate the details of the patterns later. You know what to look for. So let the fun begin. Thank you for watching.