Django新手入门(一)——了解Django和网站
很久没有进行技术博客的更新了,一直想写关于Django的系列文章,但因未探全貌,迟迟不敢动笔。在做了一段技术储备之后,对Django总算有了一定的了解,后续打算出一些Django开发的文章,囊括MTV架构、常用的文件,开发细节等等。废话不多说,我们今天先来谈谈Django与网站。
Django简介
Django是什么
Django是Python语言驱动的一个开源Web应用程序框架。2005年7月发布,名字为了纪念吉普赛爵士吉他手Django Reinhardt。使用Django可以快速、安全、高效、可扩展、多功能地构建一个网站。使用Django只需要很少的代码,Python的程序开发人员就可以轻松地完成一个正式网站所需要的的大部分内容。
Django的主要目的是简便、快速的开发数据库驱动的网站。它强调代码复用,多个组件可以很方便的以“插件”形式服务于整个框架。它还强调快速开发和DRY(Do Not Repeat Yourself)原则。
Django特点
Django的MTV架构是基于MVC模型的,具有低耦合、开发快捷、部署方便、可重用性高、维护成本低等优势,此外还有
- 强大的数据库功能
- 自带强大的后台功能
- 优雅的网址
- 包含许多强大的第三方插件
Django框架的核心组件
- 用于创建模型的对象关系映射(以类的形式定义数据模型,ORM将模型与关系数据库连接起来,这样能得到一个非常容易使用的数据库API,同事也可以使用原始的SQL语句)
- 为最终用户设计较好的管理界面(不需要花大量的工作来创建人员管理和更新内容,Django自带的ADMIN site可实现内容管理)
- URL设计(使用正则表达式匹配URL,可以设计任何URL,没有框架的特定限定)
- 设计者友好的模板语言(使用Django模板语言可以分隔设计、内容和Python代码,并且具有可继承性)
- 缓存系统(可以挂在内存缓冲或其他的框架实现超级缓冲)
除了上述组件的优雅外,Django其实还有:
- 表单处理(方便生成各种表单模型,方便从模型实例生成表单并验证表单的有效性)
- 会话(快速开发用户会话功能,用于用户登录和权限检查)
- 国际化(内置的国际化系统可以方便开发出多种语言的网站)
网站简介
网站是什么
网站的方式有许多种,最简单的方式就是把文件放在网络主机上,当浏览者通过浏览器连接进来的时候,网络服务器把这个文件提供给浏览器加以解析再呈现或者显示给浏览者。要让网站得以正常运行需要有一台网络主机,而真正响应远程浏览器访问请求的是在主机中运行的服务软件。常见的Web网站服务软件有Apache、Nignx以及Windows Server上的IIS等。
网站的分类
- 静态网站:所有文件及数据都不会针对用户的需求而临时产生,都是事先准备好的。
- 动态网站:应对不同的访问而产生不同的数据,甚至在显示数据前还要从数据库或其他数据源获取数据,再加以整合、计算、分析后再显示给浏览者
前端语言和后端语言
- 前端:对于那些在浏览器上进行渲染的程序,我们一般将它们使用的程序设计语言叫做前端语言,常见的有HTML,CSS和JavaScript。
- 后端:对于那些在主机上执行的程序,我们一般将它们使用的程序设计语言叫做后端语言或后端服务语言,常见的有PHP、Java、JavaScript、Perl、Ruby和Python。
用Django开发网站
Django是为网站开发人员设计并使用Python语言编写的网站框架。简单地说,它是可以协助程序设计人员迅速建立全功能网站的一组Python程序,通过MVC概念把视图和控制逻辑分割开来,让程序设计人员可以尽量不用担心网站通信协议的琐碎细节而专心于要建立的网站功能。此组程序放在主机某一个特定的文件夹下,通过Apache,最后传送到用户的浏览器中。
每当主机接收到来自浏览器的连接请求时,Django中的某一个程序文件就可以得到被执行的机会,我们就可以在这个程序文件中以Python语言来编写需要处理、运算、存取数据库等的程序代码,让网页的请求可以更加客户化,实时响应用户的需求,提供更多网站的服务。
作者有话说
本文主要对Django进行了简要介绍,并介绍了一些网站相关的常识。对于其他网站框架的开发人员来说,这篇文章的定位可以算作Django的overview和网站知识的重温。对于完全未接触过网站开发的小白来说可能还稍微有点晦涩,但不用担心,之后的文章中我会带大家快速构建网站,以此让大家深入了解django网站。