• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

基于Java的界面布局DSL的设计与实现[4]

发布: 2008-5-07 10:44 | 作者: 不详 | 来源: developerWorks | 查看: 38次 | 进入软件测试论坛讨论

领测软件测试网


  为了保证组合操作的闭包性质,这两个组合子都实现了 Component 接口,并且把组合的结果当作一个 Component 返回。这两个组合子的主要功能就是把给定的布局空间按照指定的比例进行分隔,并把给定的组件放到分隔好的布局空间中去。其中的算法比较简单,就不再赘述。

  基于这些基本的原子元素和组合子,就可以构建出任意复杂程度的布局样式。在前面语言介绍小节中,我们给出了一些如:center、h_seq、v_seq、block 以及 block_with_margin 等简单布局样式的实现。读者可以根据自己的需要定义并积累自己的布局样式库。

  前面提到过,我们的界面布局语言是分层的,大家可以看出,在最底层是我们的 Java  Swing 界面开发语言,我们在其上构建出了界面布局位置描述语言,使用该布局位置描述语言中的组合子:beside 和 above,我们在其上又构建出了用来定义和表达各种布局样式的布局样式描述语言。

  敏锐的读者会发现,在前面讲述的界面布局语言中仅仅涉及了界面布局元素的显示样式方面的内容,但是一个完整的界面是需要和后端的应用逻辑交互的,因此还需要一个粘合界面显示和应用模型的层次。

  确实是这样的,我们在这里之所以没有提这项内容主要是为了避免陷入其实现的琐碎细节中,从而可以集中介绍界面布局语言本身。为了能够对界面布局元素进行编程控制,我们让每个布局元素都有一个“拥有者”。和布局元素在物理上的包含关系不同,“拥有者”是编程语义上的。也就是说,对布局元素在编程意义上的所有控制操作都在其“拥有者”中完成,这种思路完全隔离了显示和控制,其实就是 MVP 模式的一种实现。

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/

64/6<123456>

关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网