Python Web开发比较流行的框架都有什么?

Python Web开发比较流行的框架都有什么?,第1张

目前Python流行的Web框架包括:Django、Flask和Tornado。框架把构建Web应用的通用的代码进行了封装,把相应的模块组织起来,使用Web框架可以更轻松、快捷的创建web应用,不用去关注一些底层细节。

1、Django框架

Django是基于Python的免费和开放源代码Web框架,它遵循模型-模板-视图(MTV)体系结构模式。它由Django Software Foundation(DSF)维护,这是一个由非营利组织成立的独立组织。Django对基础的代码进行了封装并提供相应的 API,开发者在使用框架是直接调用封装好的 API 可以省去很多代码编写,从而提高工作效率和开发速度。

Django的设计理念如下:

①松耦合——Django的目标是使堆栈中的每个元素彼此独立。

②更少的编码——更少的代码,因此可以快速开发。

③不重复自己(DRY)——一切都应该只在一个地方开发,而不是一次又一次地重复。

④快速开发——Django的理念是尽一切可能促进超快速开发。

⑤简洁的设计——Django严格按照自己的代码维护简洁的设计,并易于遵循最佳的Web开发实践。

Django的一些优势如下:

①对象关系映射(ORM)支持——Django在数据模型和数据库引擎之间建立了桥梁,并支持包括MySQL,Oracle,Postgres等在内的大量数据库系统。

②多语言支持——Django通过其内置的国际化系统支持多语言网站。因此,您可以开发支持多种语言的网站。

③框架支持——Django内置了对Ajax,RSS,缓存和其他各种框架的支持。

④GUI——Django为管理活动提供了一个很好的即用型用户界面。

⑤开发环境——Django带有轻量级的Web服务器,以促进端到端应用程序的开发和测试。

⑥Django是Python Web框架。和大多数现代框架一样,Django支持MVC模式。

2、Flask框架

Flask 是 Python 编写的一种轻量级 ( 微 ) 的 Web 开发框架,只提供 Web 框架的核心功能,较其他类型的框架更为的自由、灵活、更加适合高度定制化的 Web 项目。Flask 在功能上面没有欠缺,只不过更多的选择及功能的实现交给了开发者去完成,因此 Flask 对开发人员的水平有了一定的要求。

3、Tornado框架

在之前的学习过程当中,学习过了 Flask 和 Django 这两个 Python Web 框架,现在来认识一个更加复杂但是高效的 Python Web 框架 : Tornado。

Tornado 是 Python 编写的一个强大的可扩展的 Web 服务器,在处理高网络流量的时候表现的足够强大,但是在创建的时候,和 Flask 类似又足够轻量,并且可以被用到大量的工具当中。相对于其他的框架,

Tornado 有如下特点:

1、完整的 Web 开发框架,和 Django,Flask 一样,Tornado 也提供了路由映射,request 上下文,基于模板的页面渲染这些功能。

2、同样是一个高效的网络库,性能可以和 Python 的 Twisted,Gevent 等底层框架媲美,同时提供了异步IO, 超时事件处理,功能,这样 twisted 除了做 Web 之外还可以做爬虫,物联网关或者游戏服务器等后台应用。

3、提供了高效的 >

4、提供了高效的内部服务器,Tornado 的内部服务器可以直接用于生产环境

5、完备的 WebSocket 支持

关于Python的基础问题可以看下这个网页的视频教程,网页链接,希望我的回答能帮到你。

在Laravel5中出现了一个新的东西,叫做contracts,那么它到底是什么?有什么用?怎么用?我们就来探讨下吧。 我们先来看看官方文档中对contracts的定义: Laravel's Contracts are a set of interfaces that define the core services provided by the framework
意思是说Laravel的Contracts是一个由 框架提供 的定义了 核心服务接口 的集合。 也就是说,每一个Contract都是一个接口,对应一个框架核心服务。 那它的意义何在?官网给出的解释也很简单:使用接口是为了 松耦合 和 简单 。 先不讲大道理,先来点干货,看看怎么使用contract 先浏览下contracts接口列表: 代码如下:
IlluminateContractsAuthGuard
IlluminateContractsAuthPasswordBroker
IlluminateContractsBusDispatcher
IlluminateContractsCacheRepository
IlluminateContractsCacheFactory
IlluminateContractsConfigRepository
IlluminateContractsContainerContainer
IlluminateContractsCookieFactory
IlluminateContractsCookieQueueingFactory
IlluminateContractsEncryptionEncrypter
IlluminateContractsRoutingRegistrar …… 太多了,懒得继续贴了,官网手册里有。我们就拿 IlluminateContractsRoutingRegistrar 这个contract来演示一下吧。
首先,打开 app/Providers/AppServiceProviderphp,注意register方法: 代码如下:
public function register()
{
$this->app->bind(
'IlluminateContractsAuthRegistrar',
'AppServicesRegistrar'
);
} $this->app 就是Application对象,也是容器对象,通过 $this->app->bind 方法我们绑定了一个实现IlluminateContractsAuthRegistrar接口的类AppServicesRegistrar。 注意,IlluminateContractsAuthRegistrar就是一个contract。AppServicesRegistrar 这个类文件在 app/Services/Registrarphp。 接着我们看 App>Java 的应用服务器很多,从功能上分为两大类,JSP 服务器和 Java EE 服务器,也可分其他小类。
JBoss AS
在J2EE应用服务器领域,Jboss是发展最为迅速的应用服务器。由于Jboss遵循商业友好的LGPL授权分发,并且由开源社区开发,这使得Jboss广为流行。另外,Jboss应用服务器还具有许多优秀的特质。
其一,它将具有革命性的JMX微内核服务作为其总线结构;
其二,它本身就是面向服务的架构(Service-Oriented Architecture,SOA);
其三,它还具有统一的类装载器,从而能够实现应用的热部署和热卸载能力。因此,它是高度模块化的和松耦合的。Jboss用户的积极反馈告,Jboss应用服务器是健壮的、高质量的,而且还具有良好的性能。为满足企业级市场日益增长的需求,Jboss公司从2003年开始就推出了247、专业级产品支持服务。同时,为拓展Jboss的企业级市场,Jboss公司还签订了许多渠道合作伙伴。比如,Jboss公司同HP、Novell、Computer Associates、Unisys等都是合作伙伴。
JOnAS
JOnAS是一个开放源代码的J2EE实现,在ObjectWeb协会中开发。整合了Tomcat或Jetty成为它的Web容器,以确保符合Servlet 23和JSP 12规范。JOnAS服务器依赖或实现以下的Java API:JCA、JDBC、JTA 、JMS、JMX、JNDI、JAAS、JavaMail 。
JFox30
JFox 是 Open Source Java EE Application Server,致力于提供轻量级的Java EE应用服务器,从30开始,JFox提供了一个支持模块化的MVC框架,以简化EJB以及Web应用的开发! 如果您正在寻找一个简单、轻量、高效、完善的Java EE开发平台


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10660442.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-10
下一篇 2023-05-10

发表评论

登录后才能评论

评论列表(0条)

保存