About design patterns, all programmers have heard. Although... Based on the number of jokes about php developers and seeing some pieces of code, maybe some of them (php developers) have no idea what it is.
Recently, I discovered for myself that apart from writing code and learning new technologies/using external APIs, there are things that are much more challenging.
These are things that need to be understood when developing medium to large projects. But even for relatively small projects, this is important.
As of 2012, there were 612,843,429 websites on the Internet. This number is rapidly growing.
So why do people create websites?
Quite an important task in the development of websites and web applications is restricting access to certain sections of the site, such as the admin panel. In theory, this is a rather complex process, consisting of three components - authentication, identification, and authorization.
When studying a new framework or web programming language, you may sometimes feel confused and ask yourself: When can I consider that I have learned the product to a decent level? When can I say that I know it, and if there are some things I don't know, I can quickly grasp/read them in the manual/search for them on Google?
MVC principle in web programming (Model - View - Controller) is one of the most successful ideas to date. The MVC principle is intuitive at first glance, but not very simple when delving into it. First, let's consider what it is intended for.