Frameworks can refer to many different things, in general, they refer to a style or format underpinning a system or idea. In computing/software, they often refer to a predetermined/reusable set of rules to solve a common problem. More specifically, in web development, they usually involve templating for system building.
Model-View-Controller (MVC) is a framework which aims to separate the model - data representation, the view - displays model data and can send actions to the controller, and the controller - which provides model data to the view. The model is independent of the view or controller and has a sole purpose of representing data in the system. The MVC framework is considered good practice when building web applications as it pushes for modular development.
Other known server-side web-frameworks include ASP.NET, Ruby on Rails, and Laravel. All of these frameworks are based on the MVC outline separating into three areas of work. Frameworks such as Ruby on Rails allow for rapid development of sustainable web applications. Ruby on Rails encourages a lot of very good and very important software development practices such as DRY (Don’t Repeat Yourself) which involves avoiding data redundancy by reducing repetition throughout the code, and CoC (Convention Over Configuration) which involves decreasing the amount of configuration to allow for more rapid development. Laravel is another well-respected framework, this one is based on PHP and continues to follow the MVC framework. Laravel encourages the users of the framework to make use of many good practices such as syntactic sugar, where the syntax is more “sweet”. This can refer to easier to read and can often be more precise.
There is a multitude of benefits to using a PHP framework. One example is CakePHP. CakePHP follows the MVC architecture and gives its users easy to use functions for important things such as database access, validation, authentication, and many more simply with it’s easy to use functionality.
Using frameworks often comes with the added security of knowing that the code is tried and tested, and up to date which is an incredibly important part. Choosing a framework can be difficult, lots of frameworks have lots of different things on offer and you may find one better suited to certain situations over others. It is important to ensure that the framework you choose is still supported and gets regular updates, using or learning dying frameworks does not lead to worthwhile investment of time.
word count: 404