Loonframwork到SWT的移植测试(JAVA GAME TEST SOURCE)

简介:
愚以为,用SWT作界面,是一种在用Java写VB的体验。

本周心情极度恶劣,一直不想说话,也不想写新代码,郁闷中尝试了一下将Loonframework的代码移植到SWT。(其实我觉得AWT,SWT,Swing用那个真的要根据需求决定,没有绝对的好与坏。)






(用SWT操作WINDOWS界面确实异常简单)

如 预料般,由于Loonframework以AWT白板为基础采取绘制开发,核心代码在SWT上近乎0修改。而借助于 org.eclipse.swt.awt.SWT_AWT,更是完全不用任何变更,因为SWT提供了SWT_AWT.new_Frame方法,而我在 Loonframework中是以.setup(Frame frame)[以及.setup(Applet applet)]方式等将图像描绘在指定窗体上的,所以能无差别使用。顺带一提,有SWT_AWT而无SWT_SWING,可见IBM对Swing的歧 视。(由于JFrame直接继承自Frame,当然也可以加载Swing的界面,但是那个效率啊……)

其实某些人因支持Swing而反 SWT的,或因SWT而反对Swing的做法,感觉真的没什么意义。愚以为Java体系,一脉相承,没有可能你基础很牢固,而对新的Java技术却牛不入 耳,一窍不通。我并不认为会象某些人想象的那样,研究两天没多少人理的Java GUI开发,我做J2EE方面就弱了。事实上,我本是J2EE程序员,业余研究一下游戏开发罢了^^。比如现在,我以爹不痛娘不爱的AWT为基础开发 Loonframework Game包,在转换底层时反而如鱼得水,完全不存在移植问题。(当然,日后向手机移植改的就比较多了。)而事实上,由于Swing以AWT为底层,而 IBM则以一直偏爱的AWT方式构建SWT,也决定了以AWT为基础开发的代码在Java GUI上通用性是最好的(我是说代码通用,而不是指UI通用……)。

顺便提一下,单从支持[&键名]这种定义快捷键的写法和支持 ico图标看,SWT就可说是Java中的怪胎,或者说它到底有多少算Java都要打个问号,我愚昧的认为把SWT技术彻底用在其他语言上可能表现得更 好,真的说起来,还是C#做GUI更容易些……我就一新人菜鸟,有什么认识不对的地方,还望中国亿万万高手(专家)或自诩高手(专家)的同志们谅解。



本文转自 cping 51CTO博客,原文链接:http://blog.51cto.com/cping1982/130225

相关文章
|
2月前
|
XML Java Maven
在 Cucumber 测试中自动将 Cucumber 数据表映射到 Java 对象
在 Cucumber 测试中自动将 Cucumber 数据表映射到 Java 对象
59 7
|
2月前
|
存储 数据采集 分布式计算
Hadoop-17 Flume 介绍与环境配置 实机云服务器测试 分布式日志信息收集 海量数据 实时采集引擎 Source Channel Sink 串行复制负载均衡
Hadoop-17 Flume 介绍与环境配置 实机云服务器测试 分布式日志信息收集 海量数据 实时采集引擎 Source Channel Sink 串行复制负载均衡
48 1
|
4月前
|
XML Java 测试技术
Selenium WebDriver自动化测试(基础篇):不得不掌握的Java基础
关于Selenium WebDriver自动化测试的Java基础篇,涵盖了Java的变量、数据类型、字符串操作、运算符、流程控制、面向对象编程、关键字用法、权限修饰符、异常处理和IO流等基础知识点,为进行自动化测试提供了必要的Java语言基础。
110 1
|
6月前
|
负载均衡 Java 测试技术
性能测试与负载均衡:保证Java应用的稳定性
性能测试与负载均衡:保证Java应用的稳定性
|
5月前
|
XML 测试技术 数据格式
《手把手教你》系列基础篇(八十五)-java+ selenium自动化测试-框架设计基础-TestNG自定义日志-下篇(详解教程)
【7月更文挑战第3天】TestNG教程展示了如何自定义日志记录。首先创建一个名为`TestLog`的测试类,包含3个测试方法,其中一个故意失败以展示日志。使用`Assert.assertTrue`和`Reporter.log`来记录信息。接着创建`CustomReporter`类,继承`TestListenerAdapter`,覆盖`onTestFailure`, `onTestSkipped`, 和 `onTestSuccess`,在这些方法中自定义日志输出。
51 6
|
5月前
|
Java 测试技术 Apache
《手把手教你》系列基础篇(八十六)-java+ selenium自动化测试-框架设计基础-Log4j实现日志输出(详解教程)
【7月更文挑战第4天】Apache Log4j 是一个广泛使用的 Java 日志框架,它允许开发者控制日志信息的输出目的地、格式和级别。Log4j 包含三个主要组件:Loggers(记录器)负责生成日志信息,Appenders(输出源)确定日志输出的位置(如控制台、文件、数据库等),而 Layouts(布局)则控制日志信息的格式。通过配置 Log4j,可以灵活地定制日志记录行为。
58 4
|
4月前
|
Java 测试技术 API
深入理解单元测试:JUnit框架在Java中的应用
【8月更文挑战第3天】本文将引导读者通过JUnit框架的镜头,探索单元测试的奥秘。我们将一起揭开单元测试的神秘面纱,了解其在软件开发中的关键作用,并具体学习如何在Java项目中应用JUnit进行有效的单元测试。文章不仅会涉及理论概念,还将通过具体的代码示例,展示如何编写和运行单元测试,以确保软件质量。让我们开始吧,一起踏上这段提升代码质量和开发效率的旅程。
55 0
java.lang.NullPointerExceptionMybatisPlus出现,测试,java.lang.NullPointe,空指针异常,public方法少写了一个字段,没加注解
java.lang.NullPointerExceptionMybatisPlus出现,测试,java.lang.NullPointe,空指针异常,public方法少写了一个字段,没加注解
|
5月前
|
Java 测试技术
在Java中使用断言函数进行代码测试
在Java中使用断言函数进行代码测试
|
6月前
|
Java 测试技术 Python
《手把手教你》系列基础篇(八十一)-java+ selenium自动化测试-框架设计基础-TestNG如何暂停执行一些case(详解教程)
【6月更文挑战第22天】本文介绍了如何在TestNG中不执行特定测试用例。当部分模块未准备好时,可以通过以下方式暂停测试:③使用`@Test(enabled=false)`注解来禁用测试用例。作者提供了一个Java Selenium自动化测试的示例,展示如何通过修改`enabled`参数控制测试方法的执行。代码中,`testSearch2()`方法被禁用,因此在测试运行时不执行。文章还包含了测试报告和执行过程的截图。
62 7