深度好文收藏:Flask,Django, Pyramid,你该选什么?

  大约十年前,Java占据主导地位,它功能多,很是灵活,是开发人员首选的开发平台。如今,当Python逐渐受欢迎,技术领域已经发生了变化。Python领先Java以前发展成一种解释性的高级动态编程语言,具备灵活性,代码可重用性和高级别兼容性。程序员

  不少框架都是用Python编写的,当中有Django,Flask和Pyramid很是流行,被用于为企业开发Web应用程序。三选一,不只天秤座的程序猿会纠结,其余程序员们也照样纠结:该选谁呢?数据库

  做为开发人员,您要么拥有最爱的一个框架,要么犯选择困难症。在深刻分析以前,让咱们先对这三个框架进行概述。Flask是一个微型Web框架,由于它不须要工具或库,也没有数据库抽象层。若是要向此Web框架添加功能,则须要使用扩展。Flask基本上针对只须要简单组件的小型应用程序。编程

Flask,Django, Pyramid,你该选什么?

  框架之别app

  Django和Pyramid都是使用Python开发的开源框架,适用于更大的应用程序。这二者在技术方面存在很大差别,在它们处理应用程序可扩展性及适应性的方式也有不一样。在Pyramid的状况下,开发人员须要混合和匹配组件来构建应用程序,由于开发人员须要选择URL结构,模板样式,数据库和其余相关组件来构建应用程序。另外一方面,使用Django,您会发现一切都是内置的,您只须要安装框架并开始编写和开发部分。您不须要获取组件或将它们与您的框架混合使用。Django由对象关系映射(ORM)组成,它将数据模型与关系数据库链接起来,以存储,保存和检索来自Web框架的数据。Flask和Pyramid为开发人员提供了保存和检索数据的方法灵活性。Flask和Pyramid的首选ORM是DynamoDB或MongoDB以及常规SQLite。框架

  如今您已经基本了解这三个框架,让咱们开始比较这三个框架,以便为开发人员轻松选择合适的框架。curl

  社区之别编程语言

  开源框架网站都有社区,您能够去留言,和其余小伙伴们互动。Django拥有最活跃的社区,其中包含近80,000个StackOverflow问题。Django开发人员和用户都有本身的博客,有不少妙文来帮助您开发使用这个框架。工具

  然而,Flask和Pyramid的社区就相形见绌了,由于与Django相比,他们的成员更少。但就邮件列表和IRC活动而言,他们也有不错的贡献。固然,Flask的StackOverflow问题只有5000,比Django创建的要少得多。这两位“明星”在Github上地位几乎不相上下。若是要使用这些框架,则须要BSD派生的许可证实。学习

  因此,当你谈论社区和支持时,你就会知道Django赢了。网站

  自助引导之异

  Bootstrapping是指您无需任何外部输入便可开始构建应用程序。当你比较三个框架的引导功能时,你会发现Django和Pyramid都带有内置的引导工具,而Flask没有任何内置功能。您将须要依赖扩展来构建应用程序,由于此框架仅针对小型应用程序。

  Flask编码很是简洁,简单。所以,学习难度较低,这也是此框架不须要引导的缘由。Flask使用蓝图,以防有一个应用程序须要在组件之间进行更多分离。

  Pyramid和Django适用于更大的项目,这也是须要引导的缘由。对于Django,项目是由各个应用程序组成,Django的引导以这种方式建立。Flask和Pyramid将项目视为一整个应用程序。学习Django有点困难,由于此框架可用的示例代码较少。

  模板之别

  这是三个框架的最终比较点。大多数开发人员所关注的是一个能够轻松快速响应HTTP请求的应用程序,而用户则但愿使用curl与Web应用程序进行通讯。

  这三个框架都提供了对HTTP的出色响应,并提供了填充HTML的简单方法。经过这种模板,开发人员能够轻松地将信息注入网页而无需使用AJAX,从而提供细心的用户体验。这里发生的是你只须要往返一次页面及动态数据来检索结果,这是移动网站所须要的,由于移动用户须要网页加载更快,以便用户继续使用应用程序。

  结论

  在这三个框架中,Pyramid是最灵活的,由于它可用于构建小型和大型应用程序。许多开源社区都信任Pyramid用于基于事件的应用程序。该框架的惟一问题是它提供了许多可能让开发人员都感到困惑的替代方案。

  Django很是受欢迎,而且已经被用于开发Pinterest,Instagram等应用程序。对于常见的要求,Django使用默认案例,是中大型文段的最佳选择。

  若是您想开发一个小应用程序并快速启动它,那么您必须使用Flask。它能够在现有API上构建简单的界面,并创造出色的体验。

相关文章
相关标签/搜索