Architectural patterns are like a blueprint for how to build something. In computer science, this blueprint is a plan for how to structure the pieces (called components) of a software program so that they work well together. The goal is to make sure that all the components have the right information, can communicate easily with each other, and can be put together in the most efficient way. There are many different kinds of architectural patterns, but some of the common ones are data-driven, event-driven, and layered architecture.