我理想中的网站前端应该是这样的结构:
1.纯html做支架布局采用<div>做布局,这里不要出现任何其他的css和js.
2.一部分css文件做整体的界面布局效果,另一部分css文件做文字或其他局部的小效果
3.一些js文件。
4.一堆只负责操作数据库的动态页面,该部分不做其他事情,只负责从数据库读取数据,然后以某个自己定义的协议显示出来,或接收客户端数据插入和更新数据库。
下面是我刚画的结构图,大家凑合着用吧!
通过这个结构图,大家可以比较直观的理解我的想法。这样的网页架构有些什么优缺点呢?
我比较喜欢先说优点:
1.结构非常清晰明了,分工同样也非常清晰明了,这样的网站,在美工设计完界面后,需要有很懂html和css的人做前面两个步骤,即设计html和css。另外需要有个比较精通js的人写一堆js其中少不了ajax等技术,这个很关键,主要负责和动态页面做交互。最后需要有人做动态页面的人,对这个人要求可以不用很高,会用asp,.net,php...等其中的一门语言就行,而且这个人可以说根本不需要懂得任何的html或css的知识。这个人或这群人只需要认真的做他的业务和逻辑分析(这个个服务端的设计要深入的话涉及到其他的服务端架构知识,这里不扩展讨论,不然写不完了。呵呵。。)
2.用户体验好。首页这样的架构,由于数据可以异步加载,加载到客户端的代码量极大减少,即减少带宽,流量又加快了页面的加载速度,同时整站可以达到无刷新效果。
3.灵活。假如用户想换皮肤,那么只需要美工根据web设计师的需求设计出模板即可,改动非常小,甚至不用改动任何代码,最主要是因为个部分相互独立,所以改这里面3个人的工作,他们之间不会互相影响。另外,如果你原先的系统是用asp做的,现在手头上没有这样的人才怎么办?如果您有先见之明,使用我说的这样的架构,那么恭喜您,让您的程序员做他擅长的就行了!只要按着自己的协议做就可以了。
4.可移值性好。其实上面说的语言无关性也涉及到这个优点了。但还有另外一个有点,就是这个网站,放哪里都可以很好的运行,就算是整个网站拷贝到用户的电脑里,只要请求的动态页面指向您的服务器就ok了。不过这个功能只限制在ie下面使用,因为火狐会有域的问题。
现在说说缺点:
1.主要是搜索引擎的蜘蛛对于这样架构的页面很迷茫,它根本不知道从哪里入手,就算是蜘蛛聪明点回去爬你通过ajax请求的页面,那么它拿的数据也是相当的支离破碎。这样对于想做seo的同志来说,是个心头大患。搜索引擎没办法给你的内容定位。可以说对搜索引擎是免疫状态。
2.如果有用户喜欢使用浏览器的返回功能的话,这样架构的页面对你非常爱莫能助,但你可以自己做个类似返回功能按钮甚至鼠标手势动作(当然你够强又有很多时间的话可以试下)。
3.您的动态页面的内容对于广大的网民是开放的,所以难免会有人利用这个特点,做一个跟你一模一样的网站,就跟外挂一样了,用你的内容建设他人的网站。不过这个缺点我觉得还是有得弥补的。大家开动您的脑筋想想怎么防止吧。看谁的方案最好。
总结:今晚跟大家分享我的想法,其实这个想法是去年做毕业设计后产生的,但一直没有归纳和总结。从用户体验和代码结构来说,我觉得这是我理想中的网站架构。