2018年最好用的5个python网站开发框架

2023-05-24 0 689

2018年最好用的5个python网站开发框架

Python部族(python.freelycode.com)组织政府机构译者,明令禁止转发,热烈欢迎转贴。

python做为说明型脚本词汇,是一类通用型的编程词汇。虽然python街道社区保有大批的库文档、架构和其它的许多新颖工具,他们能用python顺利完成各式各样的各项任务。除此之外,虽然python的标识符形成和内部结构就像英文语句那样大自然,此种词汇的TypeScript也较为陡峭。因而和其它词汇较之,好些中文网站合作开发者更喜欢用python来保证标识符的时效性。

不过,python一已经开始被内部结构设计出的这时候,并没不光偏激于中文网站合作开发。便是虽然那个其原因,他们在采用python做中文网站时,就不得已借助于数目多样的web合作开发架构。在这首诗里,他们聊一聊2018年将会盛行的web架构。

2018年最好用的5个python网站开发框架

最新颖的架构条目:他们归纳的5个

透过大批的测试归纳,他们重新整理了5个最新颖、最合适用的架构。上面让他们细看道来:

Django

名次第三的总之是Django。实际上,便是虽然Django的存有,成千上万的中文网站工程项目就能获得成功,python就能正式成为中文网站合作开发中最常见的词汇。主要包括 Instagram, Mozilla Firefox, National Geographic, Pinterest, NASA等其中的小型政府机构、子公司,都在采用Django做为中文网站合作开发架构。

这也就是为什么对于大多数中文网站合作开发者来说,如果采用python做为合作开发词汇,那么Django就是唯一一个最常被提及的框架。尤其是因为上面的许多特性和优点,Django CMS总是做为中文网站合作开发中最基础、最常见的管理系统:

1、有好些拿来就能直接采用的模板

2、操作数据库

3、面向对象的编程方法

4、网络地址映射

5、内置中文网站服务器

7、安全可靠的用户权限

8、直观的管理界面

9、强大的XML/JSON处理功能

虽然上面提到的这些方面,Django能够胜任各种小型中文网站工程项目。你对那个架构心动了吗?如果没,那他们看下一个。

CherryPy

CherryPy是仅次于Django的中文网站合作开发架构,它最大的特性就是能够同时运行好几个web服务。Django和CherryPy最大的区别在于,后者没像前者那样多的模板,而是提供能导入的库文档。实际上,此种方式给合作开发者以很大的自由度和扩展性,程序员能自由的选择采用或者禁用各种模板、用户权限和数据库。

除此之外,CherryPy实际上是一个基于Python的简约而不简单的HTTP架构,允许和所有类型的服务器(如Apache等)进行交互。如果你是刚刚接触中文网站合作开发,一定要记住在工程项目中最合适形成一套自己用着顺手的工具集合(他们应该清楚地知道,CherryPy具有灵活强大的插件系统)。

TurboGears

TurboGears是一类MVC架构的中文网站合作开发架构,它基于许多WSGI组件(比如SQLAlchemy, Ming, Repoze等)、模板引擎( Genshi, Kajiki, Cheetah, Myghty)和大批的库文档以及中间件(middleware)。同时它具有 widgets控件,能非常方便的生成许多特定的功能。

TurboGears的主要特色是:用FormEncode进行表单验证;采用 Gearbox做为工程项目管理工具,并提供网络服务(新的版本也支持采用Apache或者Nginx做为服务器);许多新颖的命令行工具;支持MochiKit模块,一类处理文本内容的genshi模板引擎,同时包含创建UI和Tosca Widgets的库文档。这些常见功能给程序员带来的方便,是其它架构所不能替代的。还有一点——许多采用TurboGears的程序员都会推荐它的精简模式,也就是说,TurboGears能配置成最轻量级的架构。

Flask

Flask是一个相当新的架构,他的合作开发者在深入彻底的研究了现有的各种架构后,分析了它们利弊,在此基础上合作开发出了这一个取所有精华,去所有糟粕的web架构。

Flask是一个轻量级架构,简单易学,它在许多仅有一两个功能的小型工程项目上得到了大批应用。比如httpbin这样的工程项目,简单但非常强大。跟CherryPy差不多,支持所有的DBMS和模板引擎。Flask的优势在于保有众多的扩展工具来创建基于中文网站的应用(应当鼓励初学者多采用这些工具),它的标识符同样简洁明了(只要3行标识符就能搭建一个显示“Hello World”的主页),透过蓝图(blueprint)实现模块化管理,支持Django官方模板词汇Jinja2,能够创建基于API的方案和一次性工具(用其它架构实现这些功能的话,既费时又费力)。

Pyramid

他们提到的最后一个架构是Pyramid,它由Pylons工程项目中的一部分演变而来。Pyramid最大的特点就是灵活性和可扩展性(尤其和Django较之)。在采用Pyramid时,程序员能自由的选择采用什么样的数据库、URL内部结构、模板风格等等,正如那个架构的合作开发者所说:

“那些重量级的架构都在替用户做决定。但是如果这些不适合你,你也候,你并不能真正的预测到工程项目后期会有多大、功能会有多复杂。你需要一个注重中文网站后期合作开发的架构,这样不管你的工程项目后期是大是小,它都能很好地满足你的需求。Pyramid就是这样一个架构,可大可小,刚刚好。”

采用Pyramid,能不费劲的利用SQLAI创建传统的RDBMS应用。和Flask那样,Pyramid支持多种类型的模板词汇和引擎,主要包括Jinja2和Mako,而且它自己也内置有解决方案。甚至,它还兼容Chameleon——一个便捷的、通用型的ZPT模板工具。

Pyramid被大家广泛认可的优点主要包括:能将一个完整的中文网站生成一个单一的文档;能修改的模板;可配置的资源;灵活的身份验证和授权;高级的引导工具——pcreate;基于view的方法;支持命令型和陈述型的配置语法;HTTP缓存;内建Session会话等等。一般而言,Pyramid是目前最盛行的构建大中小型应用的架构。另一方面,便是虽然这么强大的灵活性,可能会让许多有选择困难症的初学者纠结于采用哪些功能,如果选择不好,可能会掉进一个又一个的坑里去。

选择Python web架构:怎样避免错误的选择

让他们归纳一下。正如你所看到的,他们在选择合适的架构时,应该是依据自身的需求和工程项目的特点,量体裁衣。对于上面的几个架构,我都一视同仁,我并不坚持认为哪一个更好或者更差。

如果你想合作开发一款网络应用,却不知道选择哪一个合适的架构,最合适的方法是找一些有经验的人请教。总之,你也能联系他们。

英文原文:https://webcase.studio/blog/best-python-frameworks/?utm_source=catalogs&utm_campaign=python 译者:bird

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务