用过比较完整的Java界面系统算了Android一共四个。
一、最早的是一个叫VisualFrame的产品,刚接触的时候感觉比较新颖:
①、一个比较完整的Java界面编辑工具。界面编辑,画面迁移都作的挺不错。最后以xml保存。
②、服务器通信等做的也挺不错。
③、而且还能通过excel定义其中的界面逻辑。不过里面的界面逻辑编辑的部分真是狗血。直接将编程的那一套判断方法搬过去,每个算式一个Rule。如果要作if A=0 && B=1的话就要搞三个Rule,这样一搞一些复杂点的功能就是惨不忍睹了。
二、后来要做一个Web的项目,对方想用SWT加JWS。当时为了减轻开发负担决定作一个客户端框架。找来找去就接触过上面的那个VisualFrame,所以就参照那个东西作了下面的一个东西:
①、界面编辑工程太大,没做。用了当时Eclipse上的一个开源的SWT编辑插件。由于这次画面就几种类型,所以在所有画面上加了一层。这一层主要负责画面中共同部分的描画、画面风格的定义、提供各种界面类型的接口和事件处理的借口。项目里评价还不错。
②、将服务器通信共通化。通信电文有XML定义,画面中只要指定Action番号就可以,画面取值,返回值设置,异常状态表示都共通化。不过现在想来,本地的简单检查没做,当时没想到。
③、逻辑编辑部分,没想到什么好方法,还是直接写代码吧。至少方便点。
三、再后来做了另一个Web项目,用的是Swing加JWS。这个是我用过商用界面编辑器中作的最好的一个,基本上想到的没想到的他都做好了。
①、界面编辑工具以Eclipse插件形式提供,功能十分完整。最终数据已xml保存。
②、服务器通信部分提供了一些Excel工具定义电文格式,最后与界面xml一起生成电文代码。并且提供了物理名到伦理名的自动转换与生成时检查,review起来非常方便。
③、界面逻辑提供了几种常用的逻辑可供选择,基本上设设参数就搞定了。这块要很大的功力,没有长期的积累肯定总结不出来这些逻辑。
④、本地验证提供了简单的集中验证方式和正则表达式验证。
⑤、支持通过正则表达式定义画面表示形式。相当方便
四、最后来说说Android,其实Android和上面几种完全不同,上面的都是针对某种业务定制的,而Android要提供一个通用的接口所以侧重点不一样。
①、将界面分为Layout的画面定义文件和Activity的事件处理部分,灵活。
②、将画面资源针对画面大小分类,可以很好的对应各种画面大小。.9.png可能更好的处理图片的缩放。
③、文字信息全部放入string.xml中,国际化非常方便
④、动画模块原理还没有仔细看,不过使用起来也非常方便。
一、最早的是一个叫VisualFrame的产品,刚接触的时候感觉比较新颖:
①、一个比较完整的Java界面编辑工具。界面编辑,画面迁移都作的挺不错。最后以xml保存。
②、服务器通信等做的也挺不错。
③、而且还能通过excel定义其中的界面逻辑。不过里面的界面逻辑编辑的部分真是狗血。直接将编程的那一套判断方法搬过去,每个算式一个Rule。如果要作if A=0 && B=1的话就要搞三个Rule,这样一搞一些复杂点的功能就是惨不忍睹了。
二、后来要做一个Web的项目,对方想用SWT加JWS。当时为了减轻开发负担决定作一个客户端框架。找来找去就接触过上面的那个VisualFrame,所以就参照那个东西作了下面的一个东西:
①、界面编辑工程太大,没做。用了当时Eclipse上的一个开源的SWT编辑插件。由于这次画面就几种类型,所以在所有画面上加了一层。这一层主要负责画面中共同部分的描画、画面风格的定义、提供各种界面类型的接口和事件处理的借口。项目里评价还不错。
②、将服务器通信共通化。通信电文有XML定义,画面中只要指定Action番号就可以,画面取值,返回值设置,异常状态表示都共通化。不过现在想来,本地的简单检查没做,当时没想到。
③、逻辑编辑部分,没想到什么好方法,还是直接写代码吧。至少方便点。
三、再后来做了另一个Web项目,用的是Swing加JWS。这个是我用过商用界面编辑器中作的最好的一个,基本上想到的没想到的他都做好了。
①、界面编辑工具以Eclipse插件形式提供,功能十分完整。最终数据已xml保存。
②、服务器通信部分提供了一些Excel工具定义电文格式,最后与界面xml一起生成电文代码。并且提供了物理名到伦理名的自动转换与生成时检查,review起来非常方便。
③、界面逻辑提供了几种常用的逻辑可供选择,基本上设设参数就搞定了。这块要很大的功力,没有长期的积累肯定总结不出来这些逻辑。
④、本地验证提供了简单的集中验证方式和正则表达式验证。
⑤、支持通过正则表达式定义画面表示形式。相当方便
四、最后来说说Android,其实Android和上面几种完全不同,上面的都是针对某种业务定制的,而Android要提供一个通用的接口所以侧重点不一样。
①、将界面分为Layout的画面定义文件和Activity的事件处理部分,灵活。
②、将画面资源针对画面大小分类,可以很好的对应各种画面大小。.9.png可能更好的处理图片的缩放。
③、文字信息全部放入string.xml中,国际化非常方便
④、动画模块原理还没有仔细看,不过使用起来也非常方便。