django有哪些好处和优点


Posted in Python onSeptember 01, 2020

Django简介

Django是一种开源的大而且全的Web应用框架,是由python语言来编写的。它采用了MVC模式,什么是MVC?大家不要着急,MVC这么好的东西我在下面会精细的讲一下!Django最初是被开发来用于管理劳伦斯出版集团下的一些以新闻为主内容的网站。一款CMS(内容管理系统)软件。并于 2005 年 7 月在 BSD 许可证下发布。这套框架是以比利时的吉普赛爵士吉他手 Django Reinhardt 来命名的。

Django优点

强大的数据库功能

用 python 的类继承,几行代码就可以拥有一个丰富、动态的数据库操作接口(API),如果需要,你也能执行 SQL 语句ORM(Object-Relational Mapping“对象-关系-映射”),它实现了数据模型与数据库的解耦,即数据模型的设计不需要依赖于特定的数据库,通过简单的配置就可以轻松更换数据库

自带强大的后台功能

在admin.py中写入需要实现功能的代码,几行简单的代码就可以实现你当管理员的梦。再也不用为设计管理员而发愁了!

优雅的网址

在urls.py中用正则匹配网址,传递到对应的函数,随意你自己定义,网址可以如你所想,如你所愿。(需要注意的是:正则是一种独立的语法,并不是哪个语言所拥有的。)

具有模板系统

模板系统大大的降低了开发者头疼脑热的概率。因为模板系统设计简单,容易扩展。代码,样式分开设计。查找更清晰,修改更容易!

缓存系统

Django和memcached、redis或者其他的缓存系统联用,提高了页面的加载速度。让用户的体验度更好了!

templates 文件夹views.py 中的函数渲染 templates 中的 Html 模板,得到动态内容的网页,当然可以用缓存来提高速度。

国际化

这么好的东西,想不走上国际化都难啊。想要网页显示不同语言,比如中文、英文、还有各种语言。只需要在一个文件的设置中稍微那么修改一下。页面就会穿上各种语言的外衣。

Django 的 App 理念很好。

App 可插拔,是不可多得的思想。不需要了,可以直接删除,对系统影响不大。怎么样?Django是否强大到不可想象的地步了?不过大家也不用高兴的太早了。因为代码还是要写的,只不过用上了Django开发网站的时候更快速,更便捷了而已!

内容扩展:

Django的优点

功能完善、要素齐全:自带大量常用工具和框架(比如分页,auth,权限管理), 适合快速开发企业级网站。

完善的文档:经过十多年的发展和完善,Django有广泛的实践案例和完善的在线文档。开发者遇到问题时可以搜索在线文档寻求解决方案。

强大的数据库访问组件:Django的Model层自带数据库ORM组件,使得开发者无须学习SQL语言即可对数据库进行操作。

Django先进的App设计理念: App是可插拔的,是不可多得的思想。不需要了,可以直接删除,对系统整体影响不大。

自带台管理系统admin:只需要通过简单的几行配置和代码就可以实现一个完整的后台数据管理控制平台。

Django debug信息详尽: 很容易找出代码错误所在。

Django的缺点

大包大揽: 对于一些轻量级应用不需要的功能模块Django也包括了,不如Flask轻便。

过度封装: 很多类和方法都封装了,直接使用比较简单,但改动起来就比较困难。

性能劣势: 与C, C++性能上相比,Django性能偏低,当然这是python的锅,其它python框架在流量上来后会有同样问题。

模板问题: django的模板实现了代码和样式完全分离,不允许模板里出现python代码,灵活度对某些程序员来说可能不够。

到此这篇关于django有哪些好处和优点的文章就介绍到这了,更多相关django的好处总结内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
在Lighttpd服务器中运行Django应用的方法
Jul 22 Python
Python结巴中文分词工具使用过程中遇到的问题及解决方法
Apr 15 Python
python3 模拟登录v2ex实例讲解
Jul 13 Python
利用python获取当前日期前后N天或N月日期的方法示例
Jul 30 Python
python安装Scrapy图文教程
Aug 14 Python
python中学习K-Means和图片压缩
Nov 20 Python
python调用xlsxwriter创建xlsx的方法
May 03 Python
一条命令解决mac版本python IDLE不能输入中文问题
May 15 Python
浅谈tensorflow中几个随机函数的用法
Jul 27 Python
Python OpenCV中的resize()函数的使用
Jun 20 Python
使用Django和Postgres进行全文搜索的实例代码
Feb 13 Python
关于Python字符编码与二进制不得不说的一些事
Oct 04 Python
python实现简单的五子棋游戏
Sep 01 #Python
Pycharm连接gitlab实现过程图解
Sep 01 #Python
pycharm不以pytest方式运行,想要切换回普通模式运行的操作
Sep 01 #Python
python selenium xpath定位操作
Sep 01 #Python
使用python库xlsxwriter库来输出各种xlsx文件的示例
Sep 01 #Python
Python3实现英文字母转换哥特式字体实例代码
Sep 01 #Python
python 解决pycharm运行py文件只有unittest选项的问题
Sep 01 #Python
You might like
php,不用COM,生成excel文件
2006/10/09 PHP
php中变量及部分适用方法
2008/03/27 PHP
PHP 使用header函数设置HTTP头的示例解析 表头
2013/06/17 PHP
PHP高效获取远程图片尺寸和大小的实现方法
2017/10/20 PHP
Laravel基础-关于引入公共文件的两种方式
2019/10/18 PHP
为JavaScript类型增加方法的实现代码(增加功能)
2011/12/29 Javascript
jQuery $.get 的妙用 访问本地文本文件
2012/07/12 Javascript
Javascript 多浏览器兼容总结(实战经验)
2013/10/30 Javascript
IE6下拉框图层问题探讨及解决
2014/01/03 Javascript
node.js中的fs.lchmodSync方法使用说明
2014/12/16 Javascript
JS长整型精度问题实例分析
2015/01/13 Javascript
JavaScript通过setTimeout实时显示当前时间的方法
2015/04/16 Javascript
javascript函数特点实例分析
2015/05/14 Javascript
javascript与jquery中的this关键字用法实例分析
2015/12/24 Javascript
js实现3D图片环展示效果
2017/03/09 Javascript
easyui-datagrid特殊字符不能显示的处理方法
2017/04/12 Javascript
除Console.log()外更多的Javascript调试命令
2018/01/24 Javascript
vue+element树组件 实现树懒加载的过程详解
2019/10/21 Javascript
解决vue+elementui项目打包后样式变化问题
2020/08/03 Javascript
[01:00:04]DOTA2上海特级锦标赛B组小组赛#1 Alliance VS Spirit第二局
2016/02/26 DOTA
Python中subprocess的简单使用示例
2015/07/28 Python
在Python中居然可以定义两个同名通参数的函数
2019/01/31 Python
python写文件时覆盖原来的实例方法
2020/07/22 Python
Python通过yagmail实现发送邮件代码解析
2020/10/27 Python
最新版 Windows10上安装Python 3.8.5的步骤详解
2020/11/28 Python
CSS3 仿微信聊天小气泡实例代码
2017/04/05 HTML / CSS
New Balance澳大利亚官网:运动鞋和健身服装
2019/02/23 全球购物
美国孕妇装购物网站:Motherhood Maternity
2019/09/22 全球购物
高中生期末评语
2014/01/28 职场文书
幼儿园教师工作感言
2014/02/15 职场文书
电气自动化专业职业规划范文
2014/02/16 职场文书
不服从上级领导安排的检讨书
2014/09/14 职场文书
2014年领导班子专项整治整改方案
2014/09/28 职场文书
学术研讨会主持词
2015/07/04 职场文书
2019年图书室自查报告范本
2019/10/12 职场文书
使用Python解决图表与画布的间距问题
2022/04/11 Python