django和flask哪个值得研究学习


Posted in Python onJuly 31, 2020

对于初学者来说,找到一个好的框架来学习或者项目开发都是非常有必要的,而当你有一定开发经验后,你应该选择适合当前业务需要的框架。我这里并不想探讨哪个框架好哪个不好,这个永恒的话题就跟探讨“世界上哪种编程语言最?拧笔且谎?摹?/p>

分析

面对一个项目需求,不要着急去开发,学会控制开发成本的前提是明白技术难点可能带来的额外的时间消耗。对于我这种中级Python开发人员来说,并没有实质上的项目经验,没有开发过大型的线上项目,无非是爬虫写了一堆又一堆,本质上跟初学者差别不大,充其量也就算一个编码经验丰富的码农而已。所以在遇到难度相对较大的项目需求时,往往会纠结该如何选择框架上,这也会浪费掉大量的时间。

选择

所谓项目的难度大,要么是业务类型繁多,业务逻辑复杂。要么是涉及到一些扩展功能,比如需要调用系统的shell命令、串口通信等等。前者没有技术难点,仅仅是业务复杂,考虑到后期项目扩展,可能需要一个良好的系统架构。对于后者来说,可能存在难以实现的技术难点,要想搞定所有的技术难点,需要重新学习对应的知识,包括后面的代码测试,环境模拟测试等等一系列操作,这个时间是很难估算的。

Pythonweb框架里面比较出名的Django和Flask的选择很是让人头疼。

在初学Python web的时候,很多老手都推荐学习Django,原因是因为Django相对比较完善,功能非常强大,有点像著名的ThinkPHP框架。老手们说的并没有错,但是这样一开始就入手一款重量级框架可能不是一个好的开始。

Django框架的强大就肯定意味着它是一款重量级框架,而对于初学者来说,这可能是一种灾难。如果初学者没有其他语言的基础,没有后端开发的经验,那么这种方式可能直接就导致放弃。

Python web的入门,使用web.py是非常好的选择。不管是Django还是Flask,他们设计的基础都是web.py。不同的是Django设计的更复杂,更像是一间做好硬装的房子,你只需要稍微做一下软装,布置一下家具就能把整个房间设计的很漂亮。

Flask就不太一样了,它仅仅帮你做好了建房子所需要的材料,房子如何搭建,如何装修全都得靠你自己动手,所以同一个项目,使用Flask来做,不同的人可能设计出来的架构完全不同,而使用Django框架做出来的架构可能都差不多了。

对于用过MVC框架的开发者来说,上手Django是很快的,因为Django也是MVC模式。Flask就没有什么模式可言了,仅仅提供了一种服务而已,要搞成什么样子全靠自己。所以如果你想自己去设计目录结构,模块的划分等个性化设计时,推荐使用Flask。弊端也很明显,如果你不是一个经验丰富的开发者,你很可能会把整个项目架构设计的乱七八糟。

对于我来说,很多时候一个项目刚开始并不觉得是个大项目,做到后面功能越来越多,扩展越来越多,就变成了一个大项目,而使用Flask就很容易的完成这个任务,小型项目快速开发,大项目设计灵活。

内容扩展:

Django和flask版本查看

查看Django版本

检查是否安装成功,可以在dos下查看Django版本。

1.输入python
2.输入import django
3.输入django.get_version()

查看flask版本

检查是否安装成功,可以在dos下查看flask版本。

1.输入python
2.输入import flask
3.输入flask.__version__

到此这篇关于django和flask哪个值得研究学习的文章就介绍到这了,更多相关django和flask选哪个内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
在Python的Django框架中生成CSV文件的方法
Jul 22 Python
Python查看微信撤回消息代码
Jun 07 Python
Laravel+Dingo/Api 自定义响应的实现
Feb 17 Python
python数据预处理之数据标准化的几种处理方式
Jul 17 Python
python 统计文件中的字符串数目示例
Dec 24 Python
pytorch::Dataloader中的迭代器和生成器应用详解
Jan 03 Python
利用pytorch实现对CIFAR-10数据集的分类
Jan 14 Python
Python接口自动化判断元素原理解析
Feb 24 Python
用python介绍4种常用的单链表翻转的方法小结
Feb 24 Python
python变量的作用域是什么
May 26 Python
Python机器学习三大件之一numpy
May 10 Python
教你如何使用Python Tkinter库制作记事本
Jun 10 Python
Windows下PyCharm配置Anaconda环境(超详细教程)
Jul 31 #Python
Python如何输出百分比
Jul 31 #Python
PyCharm配置anaconda环境的步骤详解
Jul 31 #Python
Pycharm及python安装详细教程(图解)
Jul 31 #Python
对Python 字典元素进行删除的方法
Jul 31 #Python
pycharm如何使用anaconda中的各种包(操作步骤)
Jul 31 #Python
Pycharm导入anaconda环境的教程图解
Jul 31 #Python
You might like
PHP 面向对象详解
2012/09/13 PHP
深入PHP内存相关的功能特性详解
2013/06/08 PHP
yii2整合百度编辑器umeditor及umeditor图片上传问题的解决办法
2016/04/20 PHP
thinkPHP分页功能实例详解
2017/05/05 PHP
关于文本框的一些限制控制总结~~
2010/04/15 Javascript
汉化英文版的Dreamweaver CS5并自动提示jquery
2010/11/25 Javascript
jQuery Tools tab使用介绍
2012/07/14 Javascript
javascript获取下拉列表框当中的文本值示例代码
2013/07/31 Javascript
Node.js 服务器端应用开发框架 -- Hapi.js
2014/07/29 Javascript
Jquery网页内滑动缓冲导航的实现代码
2015/04/05 Javascript
js通过iframe加载外部网页的实现代码
2015/04/05 Javascript
Angular2 PrimeNG分页模块学习
2017/01/14 Javascript
JavaScript闭包_动力节点Java学院整理
2017/06/27 Javascript
基于Bootstrap分页的实例讲解(必看篇)
2017/07/04 Javascript
微信小程序模板消息限制实现无限制主动推送的示例代码
2019/08/27 Javascript
jquery 回调操作实例分析【回调成功与回调失败的情况】
2019/09/27 jQuery
微信小程序跨页面传递data数据方法解析
2019/12/13 Javascript
jQuery实现放大镜案例
2020/10/19 jQuery
基于elementUI竖向表格、和并列的案例
2020/10/26 Javascript
[36:33]Ti4 循环赛第四日 附加赛NEWBEE vs Mouz
2014/07/13 DOTA
[58:54]EG vs RNG 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/18 DOTA
解读! Python在人工智能中的作用
2017/11/14 Python
python 含子图的gif生成时内存溢出的方法
2019/07/07 Python
Python 实现输入任意多个数,并计算其平均值的例子
2019/07/16 Python
python创建与遍历List二维列表的方法
2019/08/16 Python
python获取全国城市pm2.5、臭氧等空气质量过程解析
2019/10/12 Python
基于python解线性矩阵方程(numpy中的matrix类)
2019/10/21 Python
python实现替换word中的关键文字(使用通配符)
2020/02/13 Python
CSS3 calc()会计算属性详解
2018/02/27 HTML / CSS
关于 HTML5 的七个传说小结
2012/04/12 HTML / CSS
万户网络JAVA程序员岗位招聘笔试试卷
2013/01/08 面试题
生日邀请函范文
2014/01/13 职场文书
旷课检讨书2000字
2014/01/14 职场文书
优秀毕业生自我鉴定
2014/01/19 职场文书
2019大学生社会实践报告汇总
2019/08/16 职场文书
教你漂亮打印Pandas DataFrames和Series
2021/05/29 Python