用户界面的数据结构表示

 从学习计算机的第一天开始,我们都学到了这样一个公式:
程序 = 数据结构 + 算法
不过有意思的是,这里的程序,究竟指的是什么呢?譬如,开发一个Web应用程序,用到了目前流行的SSH架构,那么JSP算不算是程序呢?如果算的话,它的数据结构又是怎么样的呢?

我的看法是,长期以来,我们对数据结构的认识,往往局限在用Java等书写的代码上,而对HTML,javascript这些脚本型的语言,往往会忽视他们的存在,忽视他们本身也是需要数据结构的定义和支持的,因此在系统架构中,这一部分的数据结构和算法往往被忽视掉了.

扯远了,赶紧拉回来.

在Web开发中,用户界面部分,最终传递到客户端浏览器的,一般就是HTML语法和Javascript语法.然后浏览器本身负责对HTML语句进行渲染,把他们变成一个图形界面,有文本,有编辑框,有按钮等元素,展示给最终用户来使用.在这一过程中,HTML语言本身实际上是界面的数据结构表示,只不过其中既有元素的定义,也有元素的属性,没有完全进行分离.而javascript本身是不直接可见的,浏览器需要充当它的解释器,当需要时,来解释执行javascript.

Web开发的复杂性,就在于仅仅在最终界面层,就至少涉及两种语言,HTML,Javascript,如果再加上CSS的话,就至少是三种不同的语言.而这些还仅仅是在静态的情况下,而在实际中,无论HTML,javascript,css,都可能是后台服务器动态生成的,调试需要在后台来完成.这种生产者和消费者隔离的模式,更加加剧了系统开发的复杂性.

更加要命的是,说到现在为止,后台所采用的技术架构还没有开始涉及呢,一旦加上SSH,来点缓存,再来点JSF之类的东西,架构师很快发现,系统中充斥了太多的技术名词,理解他们还来不及呢,更别提用好了.

现在的很多系统开发,简直就是一个大杂烩,把能用的全用上,其实这些技术真的需要吗,往往连考虑这个问题的时间都没有了.

往系统里面增加一个技术是很容易的,想把它拿出来就困难多了.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值