Django实战:PythonWeb典型模块与项目开发在线阅读

简介: 本书详细讲解Django基础知识及实战应用,适合Python进阶和Django开发入门者。

第一篇

准备篇

本篇包括两章,简要介绍Python和Web开发框架,并介绍Django的主要特点和安装部署,对Django的MTV设计模式进行简析,最后对Django基本开发流程进行了说明。本篇主要让读者对Django有整体印象,并能根据介绍搭建开发环境。

第1章

Python和Web开发框架

Django是一个开放源代码的Web开发框架,完全用Python开发。它对常用的Web开发模式进行了高度封装,为常见的编程任务提供了捷径;通过减少重复的代码,使程序员能够专注于Web 应用上的关键性的业务开发。因此使用 Django 能在较短的时间内构建并维护质量上乘的Web应用。Django必须运行在Python环境中,可见二者密不可分。

1.1 Python简介

Python由吉多·范罗苏姆(Guido van Rossum)创造,Python被设计成一种跨平台的计算机程序设计语言,是一种面向对象的动态类型语言。自20世纪90年代初Python诞生至今,它已广泛应用于系统管理的任务处理和Web编程。

Python的设计理念是“优雅”“明确”“简单”,它是一种功能强大的编程语言,主要有以下特点。

·Python具有解释型、交互式、面向对象这3个特征。

·Python有极其简单、明确的语法,关键字较少,结构简单。

·Python可跨平台,在Linux、Windows和macOS等操作系统中都能很好地运行。

·Python提供所有主流的商业数据库的接口。

·Python提供了一个很好的结构,支持大型程序开发。

·Python是自由/开放源码的软件之一。

1.2 Web开发框架基本知识

Web开发框架是用于Web开发的成套软件架构。Web开发框架会为Web应用提供成套的功能支持,即一套开发和部署网站的方案。使用Web开发框架,程序员可以只关注业务逻辑代码的编写,其他功能使用框架已有的功能即可,这减少了程序员的代码编写量。

Web服务本质上是由socket(socket是一种通信机制,通过绑定IP地址和端口产生一个通信链,实现计算机间的通信)服务端向socket客户端提供HTTP响应,而浏览器就是一个socket客户端,它向Web发出请求。Django本身是一个Web开发框架,它连接socket两端(服务端、客户端)进行数据交换,当然这种交换按照指定的协议进行,也就是HTTP(Hyper Text Transfer Protocol,超文本传输协议)。

1.2.1 Web应用本质

网络中不同的计算机间进行通信必须经过IP地址和端口。为了降低网络通信开发的复杂度,人们在TCP/IP 4层结构中的应用层与传输层之间加了一层,这个层就是socket层。它把复杂的TCP/IP进行了封装,并提供了一组服务的接口。

网络中服务器主机会提供一种或多种服务,每一种服务打开一个socket,并绑定到一个端口上,也就是说不同的端口对应于不同的服务(如Web服务一般用到80端口),客户端向那个端口发送请求,就会得到相应的服务。

当用户在浏览器地址栏中输入网址(URL,即Uniform Resource Locator,统一资源定位符)并按下Enter键,这个动作称为发送Web请求,在网络上会有一台与网址相对应的服务器按用户请求做出响应,把请求资源发送给用户。这台接收Web请求并做出响应的服务器称为Web服务器,它把用户请求的资源以HTML(Hyper Text Markup Language,超文本标记语言)文件的形式传递到用户的浏览器中,用户就看到网页了。

如上所述,Web应用主要做的事情就是发送HTML文件到浏览器,其核心功能则通过socket服务完成。因此,Web服务器本质上是一个socket服务端,而浏览器本质上是一个socket客户端。

版权:人民邮电出版社