- Learning Website Development with Django
- Ayman Hourieh
- 296字
- 2021-07-02 11:41:14
The MVC Pattern in Web Development
Web development has made great progress during the last few years. It began as a tedious task that involved using CGI for interfacing external programs with the web server. CGI applications used standard I/O facilities available to the C programming language in order to manually parse user input and produce page output. In addition to being difficult to work with, CGI required a separate copy of the program to be launched for each request, which used to quickly overwhelm servers.
Next, scripting languages were introduced to web development, and this inspired developers to create more efficient technologies. Languages such as Perl and PHP quickly made their way into the world of web development, and as a result, common web tasks such as cookie handling, session management, and text processing became much easier. Although scripting languages included libraries to deal with day-to-day web-related tasks, they lacked unified frameworks, as libraries were usually disparate in design, usage, and conventions. Therefore, the need for cohesive frameworks arose.
A few years ago, the model-view-controller pattern came for web-based applications was introduced. This software engineering pattern separates data (model), user interface (view), and data handling logic (controller), so that one can be changed without affecting the others. The benefits of this pattern are obvious. With it, designers can work on the interface without worrying about data storage or management. And developers are able to program the logic of data handling without getting into the details of presentation. As a result, the MVC pattern quickly found its way into web languages, and serious web developers started to embrace it in preference to previous techniques.
The diagram below shows how each of the components of the MVC pattern interact with each other to serve a user request:

- Object/Oriented Programming in ColdFusion
- Python 2.6 Graphics Cookbook
- Photoshop數(shù)碼攝影后期處理專業(yè)技法(第2版)
- 鍵盤錄入技術(shù)(第2版)
- Magento 1.4 Themes Design
- SOLIDWORKS Visualize 實(shí)例詳解(微視頻版)
- 計(jì)算機(jī)圖形圖像處理Photoshop CS6項(xiàng)目教程
- PowerPoint 2013從新手到高手(超值版)
- Photoshop CC移動(dòng)UI設(shè)計(jì)實(shí)用教程
- 網(wǎng)店美工設(shè)計(jì):Photoshop CC案例教程(視頻指導(dǎo)版)
- 人人都能玩賺AI繪畫
- Autodesk Ecotect Analysis綠色建筑分析應(yīng)用
- Vue.js實(shí)戰(zhàn)
- 零基礎(chǔ)攝影后期修圖 Photoshop照片處理輕松入門
- AI寫實(shí)人物繪畫關(guān)鍵詞圖鑒(Stable Diffusion版)