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分析nignx访问日志脚本分享
Feb 26 Python
深入解析Python中的lambda表达式的用法
Aug 28 Python
python实现按任意键继续执行程序
Dec 30 Python
Python编程实现两个文件夹里文件的对比功能示例【包含内容的对比】
Jun 20 Python
Python之reload流程实例代码解析
Jan 29 Python
python 实现数字字符串左侧补零的方法
Dec 04 Python
python实现烟花小程序
Jan 30 Python
python中的函数递归和迭代原理解析
Nov 14 Python
Keras搭建自编码器操作
Jul 03 Python
jupyter notebook更换皮肤主题的实现
Jan 07 Python
Python实现石头剪刀布游戏
Jan 20 Python
python批量更改目录名/文件名的方法
Apr 18 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之apc
2013/05/15 PHP
PHP实现补齐关闭的HTML标签
2016/03/22 PHP
Laravel6.2中用于用户登录的新密码确认流程详解
2019/10/16 PHP
在浏览器窗口上添加遮罩层的方法
2012/11/12 Javascript
javascript alert乱码的解决方法
2013/11/05 Javascript
浅谈Javascript中的Function与Object
2015/01/26 Javascript
jQuery图片轮播滚动切换代码分享
2020/04/20 Javascript
AngularJS中实现显示或隐藏动画效果的方式总结
2015/12/31 Javascript
JavaScript编程中实现对象封装特性的实例讲解
2016/06/24 Javascript
Nodejs抓取html页面内容(推荐)
2016/08/11 NodeJs
jQuery实现导航滚动到指定内容效果完整实例【附demo源码下载】
2016/09/20 Javascript
快速实现JS图片懒加载(可视区域加载)示例代码
2017/01/04 Javascript
canvas绘制环形进度条
2017/02/23 Javascript
React中ES5与ES6写法的区别总结
2017/04/21 Javascript
详解node.js平台下Express的session与cookie模块包的配置
2017/04/26 Javascript
浅谈VUE单页应用首屏加载速度优化方案
2018/08/28 Javascript
Vue2.x通用条件搜索组件的封装及应用详解
2019/05/28 Javascript
Python代码的打包与发布详解
2014/07/30 Python
用Python编写一个简单的Lisp解释器的教程
2015/04/03 Python
用Python PIL实现几个简单的图片特效
2019/01/18 Python
python 动态生成变量名以及动态获取变量的变量名方法
2019/01/20 Python
Python3 中作为一等对象的函数解析
2019/12/11 Python
python实现学生管理系统开发
2020/07/24 Python
Python 如何实现访问者模式
2020/07/28 Python
利用CSS的Sass预处理器(框架)来制作居中效果
2016/03/10 HTML / CSS
俄罗斯外国汽车和国产汽车配件网上商店:Движком
2020/04/19 全球购物
Ibatis如何调用存储过程
2015/05/15 面试题
软件缺陷的分类都有哪些
2014/08/22 面试题
体育教育专业毕业生自荐信
2013/11/15 职场文书
运输服务质量承诺书
2014/03/27 职场文书
家属慰问信
2015/02/14 职场文书
出纳试用期自我评价
2015/03/10 职场文书
python实现股票历史数据可视化分析案例
2021/06/10 Python
Python中可变和不可变对象的深入讲解
2021/08/02 Python
JavaScript的function函数详细介绍
2021/11/20 Javascript
mysql的Buffer Pool存储及原理
2022/04/02 MySQL