代码基地博客站

学习web标准、用户体验改善、Ajax&Asp.Net

  IT博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  3 随笔 :: 0 文章 :: 0 评论 :: 0 Trackbacks

2007年11月13日 #

 亲爱的蓝色理想网站经典论坛的会员朋友们,我们在这里非常遗憾地通知大家,在未来的一段时间里,我们将不能保证经典论坛的正常访问,由于来自外部的不可抗力,论坛服务器所在的机房已对我们进行封网处理,原因是相关监管部门接到举报,在我们的服务器上发现了有害内容,这已经是六天来的第二次封网了。

  经过和主管部门的积极沟通后,获知这次的举报信息中没有涉及到具体的 URL 和内容,只提交了 IP 地址,从这点来看,无论我们如何迁移设备,都始终无法从根本上解决问题,排除人为因素,依靠我们卑微的智商实在想不出有什么原因会造成这样的结果。所以我们决定在没有得出行之有效的解决方案前,暂时关闭论坛的访问,请相信我们做出这样的决定也是万分无奈和十分痛心的,在此请允许我们致以最诚挚的歉意。

  众所周知,蓝色理想是一个纯技术的网站,一直低调务实地为网友服务,为中国互联网做基础技术的普及工作,是广大网站开发设计同行在互联网上温馨的家,这也是这些年我们坚持下来的动力。希望了解我们网站的会员朋友,如有一定相关知识或公安关系资源的,与我们取得联系,协商解决方案,万分感谢!联系方式: blueidea[at]gmail[dot]com

  本篇通告冀望藉由 blogosphere 传播,请有 blog 和门户站点的朋友广为转载及引用此篇日志,谢谢。

posted @ 2007-11-13 01:47 代码基地博客站 阅读(220) | 评论 (-1)编辑 收藏

2007年4月24日 #

尝试着做了一个xml+xsl的博客首页。
http://www.iwcn.net/xml.asp

在蓝色看到了Aether发起的讨论,应该说我是比较赞同的。XHTML不就是为了过渡到XML而努力的吗?有兴趣的朋友可以去看一下。

赞同是需要行动的,Blank这家伙速度是最快的。两天就把他的试验田给拿出来了。虽然现在手上的事情非常的乱,但我想,这个方向是值得大家去尝试的。最起码对于分工合作,我觉得是一个很好的例子,后台程序员只需要输出xml,随便命名,没有html标签的限制。

当然,初次尝试,还有很多不懂和困惑的地方,等待有时间慢慢尝试!
posted @ 2007-04-24 12:13 代码基地博客站 阅读(422) | 评论 (0)编辑 收藏

2007年4月6日 #


     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
        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

        
Public Property Id() As Integer
            
Get
                Return _id
            
End Get
            
Set(ByVal Value As Integer)
                _id 
= Value
            
End Set
        
End Property

        
Public Property TypeId() As Integer
            
Get
                Return _typeId
            
End Get
            
Set(ByVal Value As Integer)
                _typeId 
= Value
            
End Set
        
End Property

        
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
    
End Class

就像这样,把网站里所有的表都试着对象化。然后再定义对象相关的记录集,上边定义的是单个的新闻对象,再定义一个新闻的记录集。

Public Class Newss

End Class

第三步:定义一套公共的数据访问方法。
    定义一些操纵数据库、执行存储过程的公共方法。
第四步:编写基于对象的方法层。如:

    Public Function ReadNews(ByVal ID As IntegerAs News

    
End Function

函数返回的就是一个新闻对象。根据功能的需要,一般还会定义一些相关的函数,如:
    '读取新闻列表
    Public Function ReadNewss(ByVal newsType As eNewsType, ByVal nCount As IntegerAs News

    
End Function
    
'增加一新闻
    Public Function InsertNews(ByVal n As News) As Integer

    
End Function

    
'更新一条新闻
    Public Function UpdateNews(ByVal n As News) As Integer

    
End Function

    
'删除一条新闻
    Public Function DeleteNews(ByVal ID As IntegerAs Integer

    
End Function

这样来做,网站开发可以分成对象层、数据访问层、方法层、表现层。而程序员则只需要提供表现层所需要的方法。这样一来,在表现层需要显示新闻列表时,页面设计师只需要用.net中的Repeater控件,如下代码:

            <asp:Repeater ID="topNewsList" runat="server" >
                
<HeaderTemplate>
                    
<ul>
                
</HeaderTemplate>
                
<ItemTemplate>
                    
<li><href="shownews.asp?id=<%#Container.DataItem(" temp_href="shownews.asp?id=<%#Container.DataItem("id")%>"><%#Container.DataItem("title")%></a></li>
                
</ItemTemplate>
                
<FooterTemplate>
                    
</ul>
                
</FooterTemplate>
            
</asp:Repeater>



而在表现层的程序代码中我们只需要加上:

topNewsList.DataSource = New facade.newsFacade().ReadNewss(eNewsType, newsCount)

这样的话,程序员基本上可以与HTML完全脱离了。而且这样的话,整个项目组的成员都可以并行工作了。能非常明显地提高整个项目的开发效率。况且现在web2.0模式的兴起,对后台数据库开发提出了更高的要求。如豆瓣网、365Kit等网站,后台的数据库挖掘工作是非常复杂的。所以在分工明晰的今天,除了HTML代码,其它有很多更重要的工作等待网站程序员去做。

3:以用户为中心的设计,离不开前端开发工程师。

如果你觉得脱离了熟悉的HTML代码,你有点舍不得的话,不要紧。干脆将自己推到web技术的风口浪尖。做一个成产品设计关系密切的前台开发工程师。

随着网络、计算机硬件设施的不断提升,我们正在朝着富客户端的方向前进。为了产品的易用性,给网站程序员提出了非常高的要求。前台开发工程师这个岗位也越来越显得重要。这个职位应该说也是近年才有的,而这个职位也不是一般的网页设计师能胜任的,所以网站程序员也自然分开了,分后台开发工程师和前台开发工程师,这个方向应该说也是一个非常好的选择。而这个则需要你对web标准有一个比较全面的认识。既需要你对javascript非常了解,同时也需要你对DOM文档对象模型、CSS表现层样式代码、ajax异步都非常了解。相关的例子就非常多了,比如:在线注册表单的即时检测、密码强度的提示、多级下拉菜单的联动等。对于改善用户体验、提高网站访问速度都有非常重要的作用。

原文地址:http://www.iwcn.net/article.asp?id=35

posted @ 2007-04-06 23:43 代码基地博客站 阅读(471) | 评论 (0)编辑 收藏

仅列出标题