官术网_书友最值得收藏!

The MVC design pattern

One of the most popular application design patterns is Model-View-Controller (MVC). This defines three layers: the Model layer is in charge of data queries and persistence, such as loading and storing data to a database; the View layer is in charge of the User Interface (UI) and the Input/Output (I/O); and the Controller layer is in charge of business logic, which lies in between the View and the Model:

There are some frameworks that help developers to make MVC easier, such as Struts (https://struts.apache.org/), SpringMVC (https://projects.spring.io/spring-framework/), Ruby on Rails (http://rubyonrails.org/), and Django (https://www.djangoproject.com/). MVC is one of the most successful software design pattern, and is used for the foundation of modern web applications and services.

MVC defines a borderline between every layer, which allows several developers to jointly develop the same application. However, it also causes some negative side effects. The size of the source code within the application keeps getting bigger. This is because the database code (the Model), the presentation code (the View), and the business logic (the Controller) are all within the same VCS repository. This eventually has an impact on the software development cycle. This type of application is called a monolithic application. It contains a lot of code that builds a giant EXE or war program.

主站蜘蛛池模板: 灵山县| 金沙县| 曲周县| 陵川县| 遵义县| 云和县| 永城市| 尼木县| 岢岚县| 阜南县| 沙坪坝区| 古蔺县| 甘孜| 土默特左旗| 九龙坡区| 堆龙德庆县| 松桃| 新源县| 石林| 班戈县| 绵竹市| 平远县| 闽侯县| 宣化县| 甘泉县| 宁明县| 吐鲁番市| 芦山县| 吉安县| 武定县| 莲花县| 三原县| 遂溪县| 分宜县| 南投市| 巩义市| 陵水| 成武县| 镇宁| 连江县| 玉林市|