Python 开发人员是否选择使用其他框架而不是 Django?
Django的优点
最大的优点是Python。 Python 库非常多,而且非常易于使用。它们与机器学习、数据分析和批处理如此兼容,任何 Python 库都可以在 Django 中使用。它以插件或模块的形式存在于框架中。
学费低廉。我们团队没有基础知识的运维同事最多2周就可以写出手册。这与Python编程的简便性有很大关系。更重要的是,Django本身是一个完整的系统。 ,有自己连贯的逻辑,非常适合长期应试教育的学生,而不是像Java这样的开发风格,需要到处打补丁才能学习整个主流系统。
开发成本低。在没有前端工程师的情况下,Django的模板系统和管理站点简直就是大多数小系统和小项目的救星。 HTML 和简单的语法可以解决这个问题,节省时间和金钱。成本方面,这个特点也是它的一大优势。
Django的缺点
- 太重了,有自己的一套准则,并且集成了大量的功能。这对于一个想要拥有自主知识产权的平台来说确实不适合。
- 它的执行效率很低,尤其是使用内置模板系统时。渲染一个大页面需要几秒钟的时间。使用导入导出库导入时,预览页面有时会花费一些时间。需要几分钟才能完成。
- 随着开发的模块越来越多,整个项目变得非常膨胀。很多功能逐渐更新,但旧代码依然存在,导致大量无用代码的存在。虚拟化后的Docker打包镜像非常大。这对于很多开发者来说是非常不友好的。
双剑
- 关系型数据库是必选的。虽然有支持非关系型数据库的库,但一般还是需要关系型数据库,导致Django对数据结构要求很高。 ,数据之间必须有清晰的逻辑关系。但优点也很明显,逻辑严密,基本不会有错误。
- 程序结构很清晰,但有些模块不是必须的,造成资源浪费,学习使用
Django行业使用现状
Django已经是Python Web开发最流行的框架之一最近几年。然而,在异步编程、无服务器架构和机器学习等新兴技术趋势的推动下,越来越多的开发人员选择用其他框架取代 Django。
以下是开发者逐渐决定使用其他框架的一些原因:
Django的性能问题:虽然Django在开发效率和功能丰富方面表现出色,但在低延迟情况下的高并发应用场景,Django的性能仍显不足。这主要是由于Django采用的同步编程模型,在高并发场景下无法充分利用CPU资源。
异步编程需求:随着异步编程的普及和丰富,越来越多的应用场景需要异步编程来提高吞吐量和响应性能。不过Django本身并没有提供支持异步编程的功能,必须依赖第三方库或者其他框架来支持。
Django ORM的缺陷:Django内置的ORM(对象关系映射)功能虽然简单易用,但性能却不尽如人意。许多新兴的Python应用程序框架,例如FastAPI和Flask,都使用了一些新的ORM技术,例如Pydantic和SQLALChemy。这些新技术更好地支持异步编程。此外,这些框架还具有更灵活的SQL查询方式、更好的安全性和性能。
前后端分离的要求:越来越多的Web开发者需要前后端分离,使用一些JavaScript库和框架来开发前端,使用API与后端进行通信。在这种情况下,使用Django可能会很麻烦,而许多新兴的Python Web应用框架,例如FastAPI,都具有支持API开发的功能,更容易实现前后端分离。
总体来说,Django仍然是一个功能强大、功能丰富的Web应用框架,可以帮助开发者快速开发Web应用。但随着一些新兴技术的普及和需求的变化,一些开发者开始转向其他框架来满足更强的性能、更好的异步编程支持、新的ORM技术、前后端分离等需求。
在敏捷开发的今天,我们需要一个更快的框架来集成更快的开发,并以更友好的方式为用户提供更清晰的API展示。更快的前端和后端交互。对于后端来说,只需要完善标准化的API接口,特别是帮助数据验证即可。这对于前端来说是一件好事,让开发工作变得更加轻松高效。起来作者:有理想的工程师
来源:稀土掘金
版权声明
本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。