一站式Python开发框架简评之—Django

开发 后端
谈到框架使用经验,我相信很多开发者都能写出一套属于自己的框架实践手册。很多人都说“开源”是未来技术发展的方向,2013这一年,更是开源框架活跃在开发者视线的一年。

谈到框架使用经验,我相信很多开发者都能写出一套属于自己的框架实践手册。很多人都说“开源”是未来技术发展的方向,2013这一年,更是开源框架活跃在开发者视线的一年。

不同于Ruby语言中Rails呈现霸主地位,JavaScript、Python、PHP等领域的框架出现“百家争鸣”的现象。小编今天不谈JavaScript框架,因为今年已经说的太多了。而另一脚本语言PHP,虽然也有不少的框架,但远没有Python框架之势。所以,今天我们来谈谈Python框架。

如果从繁多的Python框架中挑出一个***的、最壮硕的框架。一定是Django无疑了。Google App Engine甚至Erlang都有框架受它影响。要说Django让众多开发者驻足的原因,最最最重要的应当是Django拥有和其他框架相比最完善的官方文档。当然肯定还会有其他的原因,但只有这一因素,小编敢打保票没有人会反对。因此,Django成功的很大一部分原因要归功于此。

Django还有很多的有点,最出名的是其全自动化的管理后台:只需要使用起ORM,做简单的对象定义,就可以自动生成数据库结构、以及全功能的管理后台。如此方便的功能实现,背后同时意味着Django内置的ORM跟框架内的其他模块耦合程度高。所有的应用程序都默认使用Django内置的ORM,否则,就不能享受框架内部提供的一系列基于其ORM的功能。

Django有个很有意思的模板系统设计,却也是其框架内影响***、争议***的部分。

从Django模板的设计哲学角度出发,它将代码、样式分离。但其设计理念与Asp.net提倡的将代码和模板分离有所不同。Asp.net虽倡导此种模式,但在技术上还是能混合的。而Django则是从根本上杜绝在模板中进行编码、处理数据的可能。

举个简单的例子:

  1. <% 
  2.   int i; 
  3.   for(i==0;i<10;i++){ 
  4.   .... 
  5.   } 
  6. %> 

类似上面这种代码,Django是彻底不支持的。函数的使用上,仅限于其模板的内置函数。换句话说,实际是为其模板构造了一种“新语言”。不过“新语言”简单易懂,能很轻松的将其模板移植到不同的平台。

基于上述原因,是否容忍在模板中编程,成了Django模板争议的***之处。在大多数情况下,Django模板能够满足一切需求。如遇“特殊”情况,不得不在模板中嵌入代码的时候,就要根据模板的规则进行扩展。只是有时候,模板中直接写一行代码能够解决的问题,用模板扩展实现后,会变成十几行代码。这样看来,怎么都是麻烦了。

宗上所述,就Django的特性而言,Django更适合中小型网站的建设,或者是作为大型网站快速实现产品雏形的工具。

责任编辑:陈四芳 来源: 51CTO
相关推荐

2023-04-25 16:30:58

设备开发鸿蒙

2022-12-21 18:31:00

游戏开发鸿蒙

2024-01-26 08:56:24

PathlibPython操作工具

2017-05-04 21:30:32

前端异常监控捕获方案

2009-10-23 09:42:24

2009-07-30 21:16:29

布线服务电缆架设

2022-09-16 11:27:46

建设微服务

2023-10-26 06:59:58

FinOps云原生

2017-02-23 16:07:59

网易

2018-04-03 13:15:24

AI实验室开发

2012-04-09 17:36:38

华为智真

2013-10-24 17:35:01

云网络H3C电子政务

2009-07-27 11:37:04

网络拓扑摩卡

2021-12-07 10:04:34

Azure Kuber场景应用

2011-06-21 14:35:27

2010-05-06 16:02:26

2021-06-11 13:56:27

大数据DataWorks数据开发

2012-07-12 14:01:48

酒店达人移动应用酒店

2011-07-18 10:12:59

华为新一代智真TP3106
点赞
收藏

51CTO技术栈公众号