当前位置:  开发笔记 > 编程语言 > 正文

使用视图或不使用视图

如何解决《使用视图或不使用视图》经验,为你挑选了1个好方法。

我现在似乎正卷入与该项目的另一位程序员的辩论中,他认为这些观点没有任何优点.他提出了一个PHP看起来像这样的系统:

$draw = new Draw;
$nav = $draw->wideHeaderBox().
$draw->left().
    $draw->image().
        Image::get($image,60,array('id'=>'header_image')).
    $draw->imageEnd().
$draw->leftEnd().
$draw->left(10).
    '
'. self::defaultSectionText(). '
'. $draw->leftEnd().

等等(这是在控制器btw).现在他的论点实际上是有道理的,他声称如果重新设计,我们需要做的就是在一个地方改变HTML,它会自动改变.但是出于某种原因,这种方法仍然以错误的方式让我感到困惑,对这种方法有什么看法?我的意思是除了不必手动重新键入HTML.



1> Brian Warsha..:

HTML节省时间很有用,但它们只有在直观且易于理解时才有用.必须实例化一个new Draw听起来不太自然.此外,wideHeaderBoxleft只会有重要意义的人谁知道紧密的系统.而如果有重新设计的,喜欢你的同事缪斯?如果wideHeaderBox变得非常狭窄怎么办?你会改变PHP方法生成的标记(以及样式,可推测)但是留下一个非常不准确的方法名称来调用代码吗?

如果你们只需要使用HTML生成,你应该在视图文件中使用它,你应该在它真正必要/有用的地方使用它,例如:

HTML::link("Wikipedia", "http://en.wikipedia.org");
HTML::bulleted_list(array(
    HTML::list_item("Dogs"),
    HTML::list_item("Cats"),
    HTML::list_item("Armadillos")
));

在上面的示例中,方法名称实际上对不熟悉系统的人有意义.当你回到一个很少访问的文件并想知道你在做什么时,他们也会对你们更有意义.

推荐阅读
N个小灰流_701
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有