嗨,老铁,欢迎来到我的博客!

如果觉得我的内容还不错的话,可以关注下我在 segmentfault.com 上的直播。我主要从事 PHP 和 Java 方面的开发,《深入 PHP 内核》作者之一。

[视频直播] PHP 进阶之路 - 亿级 pv 网站架构的技术细节与套路 直播中我将毫无保留的分享我这六年的全部工作经验和踩坑的故事,以及会穿插着一些面试中的 考点难点加分点

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

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

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

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

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

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

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

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

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


嗨,老铁,欢迎来到我的博客!

如果觉得我的内容还不错的话,可以关注下我在 segmentfault.com 上的直播。我主要从事 PHP 和 Java 方面的开发,《深入 PHP 内核》作者之一。

[视频直播] PHP 进阶之路 - 亿级 pv 网站架构的技术细节与套路 直播中我将毫无保留的分享我这六年的全部工作经验和踩坑的故事,以及会穿插着一些面试中的 考点难点加分点

评论列表

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