很久以来一直为页面工作的繁琐和杂乱而苦恼,做B/S很多时候痛苦就在做表现层这一块,业务逻辑和数据层的处理反而轻松不少。为什么?因为不能复用,大量的CSS和Javascript和HTML交错在一起,然后再夹杂一些程序代码,维护的时候只有痛苦的感觉,往往做好了就不愿意动,不愿意改。同时又想客户端的操作尽可能的漂亮易用,javascript不用是不可能的。在做.NET的时候这种感觉到并不强烈,因为.NET已经把控件做的很完善,常用控件也都有了。直到遇到JSP……
基于.NET的开发经验,我非常想把页面上的代码能够写的比较清晰,但是JSP里面没有服务端控件,突然想到.NET里面的TREEVIEW控件是采用HTC制作的,于是从这开始我进入的HTC的殿堂。
HTC (HTML Component)
HTML组件
通过不断的学习与研究,我认为他就是基于脚本的面向对象编程技术。由于Javascript和Html的基础还比较好,所以很快就能够熟练应用。而其中DOM 文档对象模型将会在HTC中成为主要的应用点。
采用HTC带来的好处是巨大的,服务端程序不用再考虑样式之类的问题,所有的样式都可以在HTC中进行设置,服务端只需要装填数据,然后HTC根据设置的属性来显示出想 要的效果,我在做一个TreeView控件的时候,甚至把递归都写在了HTC里面,服务端只是把数据取出来而已。
另外的好处是复用,大家采用统一的HTC控件,带来了风格的一致,同时节省了大量的编码时间,很多不懂Javascript的程序员也能非常容易的使用。有时候想什么MVC,STRUTS之类的技术在某些方面带来的好处也许还不如HTC带来的好处多,因为表现层的工作一直以来都是最繁重的。
这是我的一点感受,希望能够对大家的工作带来一点帮助。
下面是学习HTC的MSDN站点,有时间我也会写一些。
http://msdn.microsoft.com/library/default.asp?url=/workshop/components/htc/reference/htcref.asp