序言: 我一直在使用PHP超过8年,但从未使用过框架,只编写脚本和插件。 大多数情况下,我使用CodeCharge Studio等代码生成器或Intranet应用程序的自定义代码。 由于我对设计模式没有问题, Zend框架对我来说看起来并不太难。
从ZF开始:我已经阅读了QuickStart手册,并想知道什么可以促使我快速使用基本的Zend Web应用程序开发。据我所知,重复任务需要花费大量时间。
问题: 例如,对于我开发的几乎每个站点,都必须有用户注册过程,我不想重新发明轮子并花一周时间登录/配置文件表单。
1)Zend开发人员是否使用您编写的某种原型来快速推出基本网站?
2)或者是否有一些网站源代码可以建立?
3)是否有一些应用程序生成器或次要工具用于包含网格,记录等的页面?
P.S。我在6年前停止学习EJB,因为我没有人问过类似的问题。 TIA!
答案 0 :(得分:20)
1)ZF开发人员是否使用了一些 那种原型 快速推出一个基本网站?
Zend Framework对于该领域的组件来说还有点年轻,但有an unofficial PEAR channel。截至2009年3月,思想领袖似乎仍在辩论组织一切的最佳方式。我个人对domain-driven initiatives最为兴奋,因为它们将是最强大的。
2)是否有一些网站源代码 建立在可用之上?
目前最好的消息来源是ZF思想领袖的博客,网站和知识库。这里有一些链接可以帮助您入门:
Brian在评论说明中Rob Allen's tutorial。这是第一个真正超越基础知识,并且是他的书Zend Framework In Action的基础。
Padraic Brady的blog application tutorial和svn repository是最完整的例子之一,展示了很多组件如何组合在一起。它正在迁移到名为Survive The Deep End的在线图书中,但需要一些时间he mentions in his blog that he's extremely busy。
Matthew Weier O'Phinney做了一些有趣的设置,你可以read about和clone from his github repository。特别是在那个回购中的'bugapp'分支有一些有趣的技术。他最近一直在当地工作,所以latest updates are in his blog。
Damien Mathieu根据最佳做法一直致力于DRY framework。
3)是否有一些应用程序生成器或 带网格的页面的小工具, 记录等?
在ZF v1.8中有一个scaffolding-generator as a part of Zend_Tool版本。它目前在孵化器中,我上周尝试了它并且它可以工作,但是在当前状态下生成的组件不多。
上周我终于抽出时间一起收集资源(其中包括Stack Overflow ZF问题供稿)。我把它们放在Zend Framework tag in Google Reader之下,随着时间的推移会改进饲料来源。如果你宁愿自己管理它们,这是当前的OPML。
祝你好运! -Matt
<?xml version="1.0" encoding="UTF-8"?>
<opml version="1.0">
<head>
<title>expertseries | Zend Framework | Google Reader</title>
</head>
<body>
<outline title="Zend Framework" text="Zend Framework">
<outline text="A.J. Brown" title="A.J. Brown" type="rss"
xmlUrl="http://feeds.feedburner.com/ajbrowns_blog" htmlUrl="http://ajbrown.org/blog"/>
<outline text="Armando Padilla" title="Armando Padilla"
type="rss" xmlUrl="http://www.armando.ws/?feed=rss2" htmlUrl="http://www.armando.ws"/>
<outline text="Benjamin Eberlei" title="Benjamin Eberlei"
type="rss"
xmlUrl="http://www.whitewashing.de/about/rss/all" htmlUrl="http://www.whitewashing.de"/>
<outline text="Bradley Holt" title="Bradley Holt" type="rss"
xmlUrl="http://bradley-holt.blogspot.com/feeds/posts/default" htmlUrl="http://bradley-holt.blogspot.com/"/>
<outline text="Cal Evans" title="Cal Evans" type="rss"
xmlUrl="http://blog.calevans.com/feed/" htmlUrl="http://blog.calevans.com"/>
<outline text="Chris Hope" title="Chris Hope" type="rss"
xmlUrl="http://feedproxy.google.com/ElectricToolboxBlog" htmlUrl="http://www.electrictoolbox.com"/>
<outline text="Codecaine.co.za" title="Codecaine.co.za"
type="rss" xmlUrl="http://www.codecaine.co.za/rss/" htmlUrl="http://www.codecaine.co.za/"/>
<outline text="Douglas Brown" title="Douglas Brown"
type="rss" xmlUrl="http://www.brownphp.com/feed/" htmlUrl="http://www.brownphp.com"/>
<outline text="Federico Cargnelutti"
title="Federico Cargnelutti" type="rss"
xmlUrl="http://blog.fedecarg.com/feed/" htmlUrl="http://blog.fedecarg.com"/>
<outline text="Jani Hartikainen" title="Jani Hartikainen"
type="rss" xmlUrl="http://codeutopia.net/blog/feed/" htmlUrl="http://codeutopia.net/blog"/>
<outline text="Juozas Kaziukėnas" title="Juozas Kaziukėnas"
type="rss" xmlUrl="http://dev.juokaz.com/feed/rdf" htmlUrl="http://dev.juokaz.com"/>
<outline text="Matthew Turland" title="Matthew Turland"
type="rss" xmlUrl="http://ishouldbecoding.com/atom/1" htmlUrl="http://ishouldbecoding.com/"/>
<outline text="Matthew Weier O'Phinney"
title="Matthew Weier O'Phinney" type="rss"
xmlUrl="http://weierophinney.net/matthew/feeds/index.rss2" htmlUrl="http://weierophinney.net/matthew/"/>
<outline text="Michelangelo van Dam"
title="Michelangelo van Dam" type="rss"
xmlUrl="http://www.dragonbe.com/feeds/posts/default" htmlUrl="http://www.dragonbe.com/"/>
<outline text="Mike Rötgers" title="Mike Rötgers" type="rss"
xmlUrl="http://www.roetgers.org/feed/" htmlUrl="http://www.roetgers.org"/>
<outline text="Nick Lo" title="Nick Lo" type="rss"
xmlUrl="http://www.ingredients.com.au/nick/feed/" htmlUrl="http://www.ingredients.com.au/nick"/>
<outline text="Pádraic Brady" title="Pádraic Brady"
type="rss"
xmlUrl="http://blog.astrumfutura.com/feeds/index.rss2" htmlUrl="http://blog.astrumfutura.com/"/>
<outline text="Raphael Stolt" title="Raphael Stolt"
type="rss"
xmlUrl="http://raphaelstolt.blogspot.com/feeds/posts/default" htmlUrl="http://raphaelstolt.blogspot.com/"/>
<outline text="Rob Allen" title="Rob Allen" type="rss"
xmlUrl="http://akrabat.com/feed/" htmlUrl="http://akrabat.com"/>
<outline text="Robert Basic" title="Robert Basic" type="rss"
xmlUrl="http://feeds2.feedburner.com/robertbasic/blog/" htmlUrl="http://robertbasic.com/blog"/>
<outline text="Stack Overflow ZF" title="Stack Overflow ZF"
type="rss"
xmlUrl="http://stackoverflow.com/feeds/tag/zend-framework" htmlUrl="http://stackoverflow.com/questions/tagged/zend-framework"/>
<outline text="Thomas Weidner" title="Thomas Weidner"
type="rss"
xmlUrl="http://www.thomasweidner.com/flatpress/feed/rss2/" htmlUrl="http://www.thomasweidner.com/flatpress/"/>
<outline text="Tom Graham" title="Tom Graham" type="rss"
xmlUrl="http://www.noginn.com/feed/" htmlUrl="http://www.noginn.com"/>
<outline text="Zend Dev Zone" title="Zend Dev Zone"
type="rss"
xmlUrl="http://feeds.feedburner.com/ZendDeveloperZone" htmlUrl="http://devzone.zend.com/"/>
</outline>
</body>
</opml>
答案 1 :(得分:3)
答案 2 :(得分:2)
如果您已经熟悉MVC和设计模式,那么为什么不研究工具来帮助您更快地编写代码呢?
虽然我一般都喜欢免费工具,但我必须说使用Zend Studio IDE(基于Eclipse)可以帮助提高速度(30天免费试用)。
主要观点(除了调试器/分析器):
和-last但并非最不重要 -
确保拥有一台拥有大量内存的计算机!
答案 3 :(得分:1)
我现在处于你的确切情况(使用php:P的时间少了几年)
目前我正在使用Zend FrameWork作为参考,到目前为止我已经看到它很容易从旧的工作中重用你的结构。一旦设置了首选选项和树结构,就可以反复使用它。
所以我认为最好不要依赖第三方生成器并创建自己的骨架。在这种模式下,您将更加熟悉代码结构,并且您可以更好地掌握代码。
答案 4 :(得分:1)
使用框架意味着你不必完成所有繁琐的重复工作。
答案 5 :(得分:1)
据我所知有重复 需要花费大量时间的任务。
这是事实,正如您所说,几乎每个网站都有注册流程等。虽然我同意一遍又一遍地实现这些功能可能是重复的,但在某种程度上,每个应用程序都有自己独特的需求集 - 这意味着至少会涉及一些自定义工作,即使您重复使用代码一个较旧的基于ZF的项目。我现在要回答你的问题
你是Zend的开发者,使用某种方式 你写的滚动原型 快速推出基本网站?
不是真的。我不会选择ZF作为“基本”站点,也不会使用任何MVC框架。我目前的假设是基本站点由大约8到12个独立部分组成,没有真正特殊的功能和有限的要求。请记住,一旦我们说“框架”,除了该框架中可能存在的任何错误和问题之外,几乎总会有明显的性能损失。 你所说的'原型'将在Zend Framework中可用的类中,例如,Zend_Auth用于在大约15分钟内创建一个功能齐全的身份验证系统。
2)或者是否有一些网站源代码 建立在可用之上?
可能,虽然我不得不说,我最糟糕的噩梦是必须支持一个基于某种框架构建的应用程序,该框架包含另一个框架。图像调试它会有多么有趣。想象一下,教别人支持它会有多么有趣。你已经在使用框架,现在不要贪得无厌。
3)是否有一些应用程序生成器或 带网格的页面的小工具, 记录等?
我不太清楚你的意思,但如果我不得不猜测,也许是Zend Studio?
答案 6 :(得分:0)
有一本很好的德语书籍,你可以在这个网站的档案中找到一个入门应用程序并研究代码:http://www.zend-framework-buch.de/
答案 7 :(得分:0)
我们有一个可以提供帮助的工具:nWire for PHP分析您的代码,帮助您浏览它并直观地表示组件和关联。您最终需要阅读代码并使用nWire,这变得更加容易。
答案 8 :(得分:0)
对于快速入门,您可以阅读“Learn ZF2”一书。它是在核心Zend Framework 2(ZF2)团队成员和ZF2课程创建者的帮助下编写的,可能是获得有关Zend Framework 2及其功能的最佳见解的最佳匹配。书籍附有源代码,它会引导您逐步完成不同的概念。有趣的阅读,每页都变得更好。