Django vs Laravel

2013-07-04 11:32:29 +08:00
 andyhu
最近想找一个高效简洁的框架用来开发一个定制化的cms,主要需求是可以比较灵活的开发没有过多的限制,开发效率高代码稳健容易维护
目前锁定两种框架,Python的Django和PHP的Laravel,请用过的V友帮忙分析下各自的优缺点?
谢谢
15056 次点击
所在节点    Python
18 条回复
walnutist
2013-07-09 14:29:17 +08:00
我只用过django。不是专业软件攻城师,胡乱弹弹
2010年下半年为自己所在的一个论坛选型技术框架
确定了django。

后来用下来,大体感觉:
1、开发简单的web应用,django确实挺快的,而且community很成熟,一堆现成的东西可以用。
2、如果开发相对复杂一些的,就会觉得django自身的功能不够用,或者就是性能不好,于是开始折腾各种插件和各种重新造轮子,痛苦还是有的,不过适应了django的思路就好很多。
3、一旦提到扩展性,最终还是看Python,我只写过2-3年Java,业余写点前端的JS,后来小十年其实工作已经和开发无关,但我觉得Python挺好上手的,而且语法糖伍的挺好用,比JS强。php……十五年前上学时候用过,总觉得扩展性不够,不知现在如何了。
4、nginx+uwsgi+django+postgresql+memcached,我觉得这个架构很稳定,我们论坛300万+的帖子,日均200+在线,几乎没出现过什么的大的系统问题。

最终,尝试回答你的问题:
1、django的灵活性不错,不够的地方python来补,完全无压力
2、django本身有些限制,但基本上都可以透过插件或者定制化绕过去
3、开发效率见仁见智,不过python/django在业界的普及率必然无法和php相提并论,好点的python攻城师都在诸如douban之类的互联网公司呆着呢吧
4、代码稳健度,django这个项目本身很稳定了,不过要小心社区贡献的一堆插件,质量良莠不齐。
5、维护性那是团队自己的问题了,和框架无关。
6、基于django本身已经有几个相对成熟些的CMS了,上www.djangopackages.com找找看。
6、最终,我当时可以选择django纯粹因为这是一个个人项目,没有任何商业冲突在里面,个人兴趣使然。但楼主既然要做商业化的系统,我认为技术层面的这些问题不是核心,看你打算怎么个投入投入多少吧。
kidblg
2013-07-09 15:02:46 +08:00
@walnutist 可否看看你用django写的论坛? :)
andyhu
2013-07-09 16:16:48 +08:00
@walnutist 十分感谢您的回复!我搞PHP六七年了,最近学了下Laravel感觉非常不错,暂时打算用Laravel来写了, Laravel 4非常不错,开发效率高代码结构很优雅,全部基于composer的package来构建,使得所有组件都可以灵活替换,自带的ORM Eloquent被很多资深PHP大牛称之为最好用的PHP ORM。唯一的缺点就是太新了,用户贡献的扩展很少,会有狠多“重复造轮子”的情形,不过对比起来重复学习 Python+Django的成本,感觉这个还是最适合的,如果有足够时间能开发这个cms基础框架的话,打算基于Laravel写一个cms然后开源出来
ipconfiger
2013-07-09 16:39:00 +08:00
Django绝逼没有Flask好用
shinwood
2013-07-09 16:43:03 +08:00
从 PHP 转战过一段时间的 django,各种不适应,主要不适应是模板这一块。
coffeego
2013-07-09 21:37:11 +08:00
感觉django的有些语法确实不如rails,padrino这类ruby框架来的简洁和优美,个人之见哈
walnutist
2013-07-09 21:43:43 +08:00
@shinwood 是的,django自己的模板就是垃圾。难用先不说,速度实在让人抓狂。
我后来是混用的jinja2+django原生模板
walnutist
2013-07-09 22:04:07 +08:00
@kidblg 恩,发现v2ex居然没私信功能……
我们的论坛没备案,so……不太方便公布地址
kidblg
2013-07-10 08:31:55 +08:00
@walnutist 我昨天也准备发私信,但是没找到,只好在这里留言了。 :) 我也准备用django写个论坛,以后多向你请教。:D
walnutist
2013-07-10 09:44:31 +08:00
@kidblg 微博上找我吧,AT眉间尺先生
66beta
2013-07-10 10:09:07 +08:00
Laravel 4 真心不错,除了文档简陋、学习资源少
Laravel 3和4,完全不同的东西

Laravel最大的诟病,应该就在于composer之后,真个框架有25M之大,文件数量貌似好几千。这也是好多人死守CI的缘故。

不过作者号称这并不影响性能~~
kiancyc
2013-07-10 10:31:35 +08:00
@66beta
对的,因为引入了Symfony的包,symfony比较庞大,速度也比较慢。
不过Laravel4是用到的时候才加载组建,所以性能还不错。
那个文档实在太简单了,都没有什么例子,全靠自己框架的经验来领悟的。
66beta
2013-07-10 10:38:42 +08:00
@kiancyc
最喜欢CI的文档,索引很方便,而且有都有举例
但是L4的文档,没距离就算了,还不全,真的就是个guide而已,不能算文档

像我这样的新手,横竖都不会知道blade里面引入css要这样:
{{ HTML::style('css/bootstrap.css') }}
文档里面没有啊 T..T
Rabbit52
2013-07-15 02:20:29 +08:00
@kiancyc
@66beta
就是啊,首页的文档感觉框架很精简,但是看了API之后居然有那么多功能,现在就只能搜到些国外网站上写的例子。真心希望早日完善文档啊
PrideChung
2013-07-15 02:59:12 +08:00
@66beta
@Rabbit52
Laravel3 的文档其实挺好的,不比CI差,作者Taylor也说写代码时文档先行是军规,结果到了Laravel4 就长歪了……

有些没有写入文档的API其实还是能查到的,不过就没写得那么仔细了。
http://laravel.com/api/
Rabbit52
2013-07-15 10:58:10 +08:00
@66beta
@kiancyc
@PrideChung
话说大家有没有推荐的 laravel 4相关教程文章或者网站勒~?
PrideChung
2013-07-15 14:32:57 +08:00
Rabbit52
2013-07-15 14:39:25 +08:00
@PrideChung WoW!thanks very much!

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/74723

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX