不知不觉来千锋Python培训已经三个多月了,通过三个月的学习,从“hello world”都不懂的小白,渐渐的可以自己码一些简单的代码。三个月来,Python基础、web前端、django框架和flask框架、爬虫,在讲师的带领下,从陌生到渐渐的融会贯通,可以真真实实的看到自己的进步。由于正在学习flask,自己对web方面的东西也比较感兴趣,就分享下django框架和flask框架的总结和对比,仅供参考!
flask和django都是非常实用的web框架,django面向比较大的应用,框架内模块比较多,提供web应用开发一站式解决方案,能让开发者不用在开发之前就在选择应用的基础设施上花费大量的时间。django有模板、表单、路由、认证、基本的数据库款里等等的内建功能,框架结构一目了然,总之就是为你做尽量多的事情。而flask就简单多了,flask是一个微框架,它只提供了一些核心功能,非常的简洁优雅。它主要面向一些需求简单的小应用,flask的简洁性同时也给开发者带来多的灵活性,开发者可以自由应用扩展进行开发。
django的模块化也是这个框架的一大特点,djangp的模块化是集成在命令里的,也就是说一开始django的目标就是为以后玩大了做准备的,每一个都是独立的模块,解耦性非常强,当程序出现bug或者上线之后做维护都是非常方便的,只需要在相应的模块内调试即可,但是,任何事都是有利有弊的,模块化的同时,使整个框架变得非常笨重,自带ORM和模板引擎,灵活度和自由度都不够高。flask通过Blueprint来提供模块化,自己对项目结构划分成不同的模块进行组织。即可以自定义模块,灵活度,但是,对拥有良好编程习惯的人来说flask应该是选择框架,对于习惯不好的,代码写得比较乱的同学来说,flask真是太不友好了!
由于现在正在学习flask,而且用的也还不够好,简单说下个人理解。django的设计应该是快速开发功能性web App的,模块化非常好,并且提倡应用化,就是一个应用只负责一个功能,将所有应用组合在一起就是一个整体应用,将复杂的系统拆开来,非常的清晰,而且也便于维护,解耦性强。django的设计思想类似于现在的微服务,可以让每个人写出的项目都有一个清晰统一的结构,非常适合实力参差不齐的团队开发。但是缺点也很明显,就是框架限制了你的项目,只能按照框架结构来,非常的被动。flask轻量级框架,只提供了基本的功能,其他的一切事情都需要自己搞(当然flask有很多的插件),对自己的能力比较有自信或者思路比较开阔的开发者使用flask的话性能一般会比django高,而且也易于扩展。
两者都有利有弊,还是要看实际需求,想开发的又快又稳的话就用django,想有定制性一点,就使用flask。个人目前只会用django,flask还处于起步阶段,还没用明白。
总之,在千锋Python培训的这三个月时间里,自己就像打开了一扇新世界的大门,看到的,听到的都是以前没接触过的,充满好奇,不自觉的开启学习模式,掌握新知识,希望在接下来的时间里继续保持好这种学习状态,好好学习,天天向上!
相关文章
了解千锋动态
关注千锋教育服务号
扫一扫快速进入
千锋移动端页面
扫码匿名提建议
直达CEO信箱