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 相关文章推荐
python静态方法实例
Jan 14 Python
Python连接PostgreSQL数据库的方法
Nov 28 Python
Python日志模块logging基本用法分析
Aug 23 Python
对Pycharm创建py文件时自定义头部模板的方法详解
Feb 12 Python
pyqt弹出新对话框,以及关闭对话框获取数据的实例
Jun 18 Python
python适合人工智能的理由和优势
Jun 28 Python
python实现批量修改服务器密码的方法
Aug 13 Python
python 五子棋如何获得鼠标点击坐标
Nov 04 Python
python反转列表的三种方式解析
Nov 08 Python
python匿名函数lambda原理及实例解析
Feb 07 Python
TensorFLow 数学运算的示例代码
Apr 21 Python
Python 下载Bing壁纸的示例
Sep 29 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中操作MySQL数据库的一些要注意的问题
2006/10/09 PHP
PHP入门学习笔记之一
2010/10/12 PHP
php入门之连接mysql数据库的一个类
2012/04/21 PHP
php提取身份证号码中的生日日期以及验证是否为成年人的函数
2015/09/29 PHP
PHP简单实现循环链表功能示例
2017/11/10 PHP
php框架CodeIgniter主从数据库配置方法分析
2018/05/25 PHP
PHP的new static和new self的区别与使用
2019/11/27 PHP
jquery 简单的进度条实现代码
2010/03/11 Javascript
Jquery同辈元素选中/未选中效果的实例代码
2013/08/01 Javascript
js正则表达式匹配数字字母下划线等
2015/04/14 Javascript
DIV随滚动条滚动而滚动的实现代码【推荐】
2016/04/12 Javascript
js css实现垂直方向自适应的三角提示菜单
2016/06/26 Javascript
BOM系列第二篇之定时器requestAnimationFrame
2016/08/17 Javascript
基于JavaScript实现购物车功能
2017/02/07 Javascript
浅谈Node.js ORM框架Sequlize之表间关系
2017/07/24 Javascript
vue2过滤器模糊查询方法
2018/09/16 Javascript
Vue中JS动画与Velocity.js的结合使用
2019/02/13 Javascript
关于vue2强制刷新,解决页面不会重新渲染的问题
2019/10/29 Javascript
原生js实现自定义滚动条组件
2021/01/20 Javascript
python 将字符串转换成字典dict
2013/03/24 Python
Python实现的百度站长自动URL提交小工具
2014/06/27 Python
Python with用法实例
2015/04/14 Python
python脚本实现xls(xlsx)转成csv
2016/04/10 Python
pandas数据预处理之dataframe的groupby操作方法
2018/04/13 Python
基于python神经卷积网络的人脸识别
2018/05/24 Python
python中多个装饰器的调用顺序详解
2019/07/16 Python
超简单的Python HTTP服务
2019/07/22 Python
python matplotlib实现将图例放在图外
2020/04/17 Python
使用Python爬取Json数据的示例代码
2020/12/07 Python
Shell如何接收变量输入
2012/09/24 面试题
过滤器的用法
2013/10/08 面试题
高中打架检讨书
2014/02/13 职场文书
基层党员干部四风问题整改方向和措施
2014/09/25 职场文书
技术员个人工作总结
2015/03/03 职场文书
Python爬取英雄联盟MSI直播间弹幕并生成词云图
2021/06/01 Python
nginx配置文件使用环境变量的操作方法
2021/06/02 Servers