首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >乔姆拉还是白手起家?

乔姆拉还是白手起家?
EN

Software Engineering用户
提问于 2011-03-31 06:20:34
回答 7查看 3.7K关注 0票数 9

作为一个经验很少的人,我想知道你为什么认为Joomla能满足你所有的要求?是什么让您从零开始选择它而不是开发(或者使用像Yii或Kohana这样的框架)。

在使用Joomla时,您面临的最常见或最关键的问题是什么?由于我在这方面的经验不多,我认为最大的问题之一是灵活性。您不能缩放或自定义应用程序的行为,即使可以,您也需要在Joomla中打破一些规则,或者等待下一个版本的发布。这是真的吗?

目前我正在建设一个长期的项目,其中可能有许多具体的功能和行为。我想从头开始构建它,或者在一些PHP框架的帮助下构建。但我看到很多网站(其中一些网站的复杂性很高)都在使用Joomla。这让我对选择正确的技术产生了一些怀疑。

我想知道是否有任何,一个或两个最终的理由选择Joomla/其他。

EN

回答 7

Software Engineering用户

发布于 2011-04-02 03:38:51

如果你正在建立一个网站,你可以使用像Joomla和其他的CMS。

但是如果你要构建一个web应用程序,我认为它应该从头开始构建。那时,您可以使用框架。

票数 13
EN

Software Engineering用户

发布于 2011-11-03 09:30:24

我经常被问到关于三大CMS的问题,我感到很遗憾没有任何答案,从来没有使用过任何一个。直到大约1.5年前,我突然别无选择,只能跳进Joomla1.5.x。

  • 忘记学习Joomla扩展开发的任何其他方式,而不是阅读源代码。我保证,如果你偏离了这条规则,那么许多卫星就会消失。
  • Joomla对您帮助不大(是的,我知道1.7+,这里只讨论1.5.x )。不要期望Joomla提供任何RAD功能,事实上,您将手工编写所有的HTML、表单、表格、网格、过滤器、搜索,是的,所有这些都是。
  • Joomla具有1种关系型ORM类型能力,即JModel的canDelete方法,它可以专门告诉您要检查哪些表才能返回布尔值"canDelete",也就是说,您必须手工编写所有ORM查询。
  • 使用JxExtractor (我认为)生成所需的表模式文件,或者在任何db模式更改后手动修改表文件。
  • Joomla1.5‘S的ACL是一个谎言,阅读源代码,你会得到它。只是浪费了一个月的时间假设他们会在我需要的时候在那里。
  • VirtueMart。天啊,嗯。快,鸭子!呼。打得很近。
  • JInstaller的人生目标是失败和推卸责任,它抱怨那些与导致失败的原因无关的事情,或者至少在术语上抱怨就像我有过的任何女朋友一样神秘。这是不可信的,它的谎言,你是傻瓜,如果你借给它任何信任!
  • 配置超过约定,或只是一般的不一致贯穿。GetVar()get()getValue()getConfig()getCfg()getParam()。永远不要猜测任何事情,一切都需要查看源/api。
  • 至少有4种为Joomla构建的“方法”,它们没有任何共同点,只需复制com_weblinks组件就可以省去痛苦。
  • 乔姆拉是个很稀疏的代码库。一方面,我喜欢它的这一点,它的来源是短和功能(虽然无能)。如果你来自一个框架,不要错误的期待任何类似框架提供的东西,假装你回到过去大约8年,因为你是。
  • 代码生成器。必须的话,扩展目录中的Jacc相当不错。
  • 不要指望来自网络的帮助,也许我是弱智,但是看起来joomla有大量的在线浏览,找到有用的教程/指南/参考只是浪费时间,请阅读源代码朋友。
  • Joomla对开发人员的文档不感兴趣,不幸的是,这最终是有意义的,因为代码库是如此简单。

总之,如果你已经熟悉了更高级的工具,就不要使用Joomla,否则你可能会自杀,有10个地方可以像我一样从谷歌地图上跳下来。

附注:Joomla1.6 ( 1.7 )改进了许多这些缺点,但这并不重要,因为让客户端网络商店(VM)迁移到1.7上是一个白日梦,不管我多么乞求。

票数 6
EN

Software Engineering用户

发布于 2011-04-02 04:59:01

我对Joomla的看法:

  • 对于技术知识/经验很少的人来说,点击CMS就更有意义了。
  • 作为一个点并点击类型产品,它需要更多的开销来实现这个功能(我发现它很慢--即使启用了缓存)。
  • 因为它是相当大的,作出改变,我发现修改或增加需要更多的时间,他们应该。
  • 不要误解我,有一些伟大的插件/模块为Joomla,但有吨,不正常工作,或试图做太多的事情中途。
  • 经常需要修补。我记得有一次在星期一发现了一个黑客,第二天出现了一个补丁,星期三我们的一个客户网站被黑了。即使我们有一个升级/补丁策略,如果我们每周做一次补丁(如果需要的话),并且是在每周四完成,那么在这种情况下,我们已经太晚了。加上#补丁次数#的客户端可能非常耗时。
  • 现在,任何能够编写echo 'hello world';的人都称自己为php程序员。Joomla是一种让非技术人员不费吹灰之力就能制作出体面的网站的方法(点击点击,记住)。

对于一个长期的项目,我建议:

  • 使用框架为您提供基本功能(如CodeIgniter)
  • 保持您的代码库倾斜,因为太大的臃肿在早期是很难削减的,沿着这条路。
  • 使用框架还可以更容易地改变方向或更快地进行调整(如果Joomla没有插件还没有完成您想做的事情,您就必须构建它)
  • 一旦您了解了框架的基本知识,您就了解了代码的内部和外部。添加、修改、更改都要简单得多,所花费的时间也少得多。
  • 避开乔姆拉。特别是对于长期的项目,我发现它吃了很多时间。

只有我的两分钱。希望能帮上忙。

票数 4
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/63839

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档