网站程序员如何应对web标准
作者:jxdawei
jxdawei的blog:http://www.iwcn.net/
本文讨论的是在web标准普及的形势下,网站程序员的定位以及如何与设计师配合开发符合web标准的网站项目。
本文适合的读者是传统TABLE布局下分工不是非常明晰的程序员。
1:学习web标准,让你的工作变得更加简单。
web标准是大势所趋,所以作为网站程序员。你必须*,必须去学习web标准。去重新认识html标签,去了解如何让程序输出页面需要的代码。
比如:
上边是美工出来的效果图,下边是符合标准的程序代码:
Dim oHtml
set rs=server.createobject("adodb.recordset")
Sql = "select top 10 id,Title From tbl_News order by id desc"
rs.open sql,conn,1,1
oHtml="<ul>"
do while not rs.eof
oHtml=oHtml & "<li><a href=""shownews.asp?id=" & rs("id") & """ title=""" & rs("title") & """>" & rs("title") & "</a></li>"
rs.movenext
loop
oHtml=oHtml & "</ul>"
rs.close
set rs=nothing
response.write (oHtml)
而如果是传统的TABLE布局下,程序员要写的HTML代码就会多很多,要写出TABLE、要判断什么时候输出TR来换行、要在每条新闻的前边加个一个IMG来输出小图标、要用程序去控制输出的标题长度。所有的工作都需要先出页面代码,程序员才能去写出这段程序。
对于程序员而言,你应该把web标准当成是一种福音,你应该把它当圣经一样去读,去了解页面代码到底需要什么,明白之后你就会发现。你比以前要轻松多了。由于web标准注重的是表现与内容相脱离,而程序只负责内容数据。从此你就不再需要考虑用程序代码如何控制隔行换色、一行分几列输出等等。你需要去做的,就是向页面输出最直接的内容,没有任何装饰的内容。
当然如果你是用.net开发的话,你就可以更彻底一点了。你可以完全将工作重点放在建立对象、类库、数据访问等,向表现层提供方法即可。下边的例子是我以前做项目的,应该有点参考价值。
2:网站程序员,别让HTML标签阻挡了你的视线。
如果你觉得你真的非常讨厌繁琐的HTML标签,而且自己的学习方向也不在网站的表现层,那你就和HTML标签彻底地说再见吧。
我曾经在传统桌面软件开发的公司工作,程序员都不会HTML,网站项目紧的时候又不得不让他们来帮忙。我们就拿着Visual Studio .Net 2003自带的几个例子仔细分析,按照面向对象的结构化分层开发模式,也能非常好的进行配合。以新闻模块的开发为例:
第一步:网站程序员可以按需求分析进行数据库设计,你可以负责建表、编写存储过程。这类的事情程序员都非常的熟悉。
第二步:定义对象。将网站的信息对象化,比如:
Public Class News Public Property Id() As Integer Public Property TypeId() As Integer Public Property Title() As String End Property Public Property Author() As String End Property Public Property original() As String End Property Public Property UpdateTime() As DateTime End Property Public Property Content() As String End Property Public Property ClickCount() As Integer End Property
Protected _id As Integer
Protected _typeId As Integer
Protected _title As String
Protected _author As String
Protected _original As String
Protected _updateTime As DateTime
Protected _content As String
Protected _clickCount As Integer
Get
Return _id
End Get
Set(ByVal Value As Integer)
_id = Value
End Set
End Property
Get
Return _typeId
End Get
Set(ByVal Value As Integer)
_typeId = Value
End Set
End Property
End Class
就像这样,把网站里所有的表都试着对象化。然后再定义对象相关的记录集,上边定义的是单个的新闻对象,再定义一个新闻的记录集。
Public Class Newss
......
End Class