自从看了重构这本书后,为了赶潮流,我习惯不说修改,改说重构了。

最近正好有一个机会,可以向全校各个网站管理员推广Rss技术。如果弄得好的话,全校大部分网站发布的新闻都将支持Rss,这样我们就可以享受到信息推到我们面前的便利。

为了推广Rss,我得跟大家演示如何写这个Rss文件,原先我写网络中心Rss是随手写的,使用xml文本内嵌<%=xxx%>,一团糟,如果这样推广给大家,解释起来麻烦,大家做起来也麻烦,是时候重构了。隔离变化,共享代码,用类写,放到单独的asp文件,这个文件由我维护,其他管理员只需简单调用即可,至于是Rss2.0还是0.9,简单替换文件即可。

asp的class马马虎虎,最多只能做到封装这个特性,不过这已经足够,于是写了一个Rss.Inc.asp。

Client调用

Dim Rss  
Set Rss = New RssClass  

Rss.ChannelTitle = "厦门大学计算机网络管理中心新闻发布"  
Rss.ChannelLink = "http://network.xmu.edu.cn/Index.asp"  
Rss.ChannelDescription = "厦门大学计算机网络管理中心"  
Rss.ChannelLanguage = "zh-cn"  
Rss.ChannelWebmaster = "haishanzheng@sina.com"  
Rss.ChannelImageTitle = "厦门大学计算机网络管理中心"  
Rss.ChannelImageUrl = "https://dog.xmu.edu.cn/images/logo.gif"  
Rss.ChannelImageLink = "http://network.xmu.edu.cn/Index.asp"  

'循环  
    Rss.AddItem Rs("Title"), _  
            "http://network.xmu.edu.cn/AnnShowDetail.asp?aID=" & Rs("xxxID"), _  
            Rs("Content")  

Response.Write Rss.AsString  

Set Rss = Nothing  

非常简单的功能,非常简单地实现。

再看网络中心Rss Feed源代码,清爽多了。