周梦康 发表于 2014-03-19 4097 次浏览 标签 : ZzBlog

这两天一直折腾自己博客的路由,我发现我的路由越写越复杂,最开始可以看作是我对路由的一种扩展,但是仔细一想,反而发现与最开始的整体布局有关。比如我在一个控制器(首页控制器)中通过传递参数实现了首页和分类浏览,分标签的功能。这样的设计,在最开始是觉得是很方便,而且避免了代码的重复。但是现在路由的规则中发现为了要区分同一控制器下的不同参数,我不得不做了N次if...esle嵌套,使得代码极不友好,虽然能都能实现地址的转发,但是明显感觉到我传递的分类的参数已经超过了一个参数的功能,反而有点越俎代庖,担任起控制器的功能。

如果照此继续写下去,实现是没问题,但是整个代码的布局却不清晰了。

而造成这个问题的原因是什么呢?

前期架构草率是一个种可能,就算在项目开始前可以做足够的预期估计,但是实际的开发过程总却是会因为各种原因而使得需求时时变化。所以导致了后期代码在原架构的基础上写得举步维艰,很多地方变成了鸡肋。经过一段时间的挣扎,只能对旧版本的代码说拜拜。

我这样理解不知道对不对:

首页显示所有文章列表/不同的导航显示该导航下的文章列表/不同的标签显示该标签下的文章列表

我可以通过index+不同的参数去访问到首页各个导航的分类各个标签的分类三个页面,就好像index一个人创业,同时做三份工作,不同的参数就如同偶尔雇下的零时工人,随着业务的发展,这三项工作越来越细化,越来越繁杂,index一个人忙不过来,之前打下手的参数就上位变成了管理各个部门,index也变成了主管或者老总。正因为如此,所以整个公司的结构也进行了一次rebuild

所以重构是事物发展的必然,不可阻挡。


👇 下面是我的公众号,高质量的博文我会第一时间同步到公众号,给个关注吧!

评论列表

回复 亮亮 2016-02-22 11:53:27
最后的比喻好!一个人有三份工作。