我最近常常在各大站长站看各种类型的文章,突然我发现其中关于网站构架这方面的教程十分的稀少,有的只是在千篇一律的重复说要合理,怎么个合理法确没看到什么下文。刚好,本人在这方面有一些经验。因为我自己独立开发过一个游戏整站程序,目前还在使用,功能上已经接近于CMS。可是我在设计之初由于没有认真思考。所以导致我现在程序的扩展性很差。此时我才明白,为什么软件要有设计这个职业,一个好的设计也是网站优化的很重要的一步,它就像人一样,如果你身体强壮但缺乏一个活跃的心脏后果是不堪设想的。
虽然大部分站长可能用CMS的居多。似乎在程序的构架上不需要你操心,但是我认为设计一个合理的构架你要把它当作一种习惯。那么今天我将以我自己的网站构架开发日志,来引领您认识网站构架所存在的一些问题,当然这不是全部!只是做一个引申的作用。
本人在大概1年多以前,决定做一个游戏新手卡发布系统。当时我只是为了给自己使用,所以设计上我初步的设定为如下几个方面:栏目管理,游戏介绍,卡号管理程序。这三个主要功能。决定下来就开始制作。当制作完成以后。我那么发现,如果仅仅有这三个功能是不合理的,因为游戏有分厂商,必须得需要一个一级栏目来却别对待各个游戏的所属问题。所以,我不得不部分的改进程序代码从单栏目设计改成二级别分类的设计。在处理完这个程序后台的问题后,轮到页面了。因为当初想法的简单,前台使用的是动态显示,后期由于想更好的发展所以决定改成静态显示。那么这又衍生出一个问题,程序模板将用何种方法实现,最开始没有考虑仔细,我就直接在数据库里定义好了模板。当网站日渐形成规模后,麻烦的事情又来了。因为当初没有认真的思考构架。模板的问题就日益显现出设计的不合理性。第一,在数据库里自己定义模板代码,可见性差,不可直接修改。第二,如果我的一级栏目,比如盛大游戏需要一个单独的模板那就无法解决。在比如二级栏目如盛大的永恒之塔也需要一个模板如何解决?
另外内容管理上,在网站成规模后又引来了一个巨大的问题。首先,本人设计的是二级分类,可是在我网站的长期发展上这个是不利的。比如,一栏目盛大游戏里的永恒之塔,我想单独发布一个永恒之塔的经验攻略,那么就无法实现三级分类。要是如果将来还需要在三级分类里面细分,那么程序就更无法配置。当然,说到这里大家可以说改啊,请记住一点,当你网站规模日益庞大时,网站构架的更改将有许多问题需要处理,花费的时间是巨大的。二我们草根站长,虽然时间多。但需要应付网站各个方面的问题,精力是不够的。更不需要我们花费大量的时间在程序上。除非你不想发展你的网站了。
当然,还有一些巨量的小细节我就不讲了,否这篇幅太长。还是拿我自己那个游戏程序说事吧!经过了它这一折腾,也好。让我对程序的构架有了一些小小的理解。这里也说出来让大家举一反三。
构架设计一定要充分考虑未来。未来你将怎么发展,按照这个思路设计一个大的框架,千万不可随性而为,今天想到一点就做一点。当然在内容页上也要充分的考虑导航应该怎么设计。不要小看这么一点。因为现在用的是静态HMTL。你一但未处理好将来会非常的麻烦。程序应该在设计之初就要考虑扩展性的问题、谁能保证我将来不做大?预留好程序接口,将来的改进直接通过接口完成。一个普通类型的网站,核心代码其实就那么一段。就像我的游戏程序,核心代码现在就是在“页面标签”这块。当然当初没有留下接口现在也是非常的麻烦。因为你的核心代码将嵌套到程序的各个方面。而且代码巨多。比如我的“页面标签”代码这块,就长达1600多行。这也只是仅仅为了更好的配合模板做到数据与显示分离。还有N多的外部函数。你想想,如果改的话,那等同于重行设计程序。如果当初把构架做好,是不是就没有这些问题?
好了,今天就讲到这里。本文首发游戏先锋 http://www.key28.cn/