Sikuli:截图也能编程

标签:Python

前几天在cnBeta看到一个使用截图来编程的新语言:Sikuli。不过没放出地址,我也懒得去看。

今天在Google Groups的Python论坛里看到有人说Sikuli是他见过最酷的项目,于是点了进去,看了首页的一段youtube演示视频,才发现这就是前几天看到的那个。

不过与其说是语言,不如说是一个工具或库。它是用Jython实现的,可以使用Jython的API,而最强大的功能就是识别截图了。只是感觉不像cnBeta上吹得那么强大,充其量就是一个加强版的按键精灵…

动态设置变量名

标签:Python

如果要写一个程序,让x1为1,x2为2,然后直到x100为100,你会怎么做?

在C这种静态语言里,变量名这个标识符实际上会被编译器直接翻译成内存地址,所以除了手动设置每个变量的值以外,没办法做到这点。而Python这种动态语言则是可以做到的。

最容易想到的自然是eval,但是实际上根本不需要这种危险的东西,因为Python的变量名就是一个字典的key而已。要获取这个字典,直接用locals和globals函数即可。

解决IE 6的缓存bug

标签:无

今天在写YUI的缓存部分时,遇到了IE 6的一个bug(我没有IE 7+,所以没有测试更高的版本,但以下都简称IE),在这记录一下。

ANI:比C更快,比Java更安全,比*sh更简单?

标签:无

昨天上午在JavaEye看到一门新语言ANI,号称“Faster than C, safer than Java, simpler than *sh”(注:*sh表示Unix shell,例如bash,相当于Windows上的bat)。

看到这种宣传口号,JavaEye上自然是吵成一片。而我也自然不能视而不见,马上去看了下它的文档,立马被它的优美折服了,有种不介绍不足以平民愤的感觉。

转向WAP 2.0

标签:无

之前曾在用GAE架设WAP站点一文中说过WAP 1.0的基本实现,昨天发现我的手机也支持WAP 2.0了,所以开始向新版本转移了。

感觉2.0最大的好处是与XHTML兼容,因为Doctype就是XHTML Mobile Profile 1.0。这样就不必花费太大力气进行移植,而且也可以用任意浏览器进行测试了。

W3C有中文版了

标签:无

刚去了一趟W3C,那丑陋的页面终于改得美观了。

不小心在右上角看到一个下拉框,里面有“中国(China)”一项,选择后点Go按钮就到了万维网联盟中国办事处

当工厂方法遇到静态方法

标签:Java, Python, 设计模式

项目中遇到个问题,虽然还没和别人沟通过,不过先记录一下自己的想法吧。
在第一阶段的开发中,我们只针对美国和加拿大;现在要开始第二阶段的开发了,需要面向欧洲6国;而第三阶段则要面向亚洲。
问题是每个国家除了语言不一样,连逻辑都不一样,于是调用类的逻辑就得改了。简单来说就是要针对不同的国家,调用不同的类。

最容易想到的方法就是使用工厂方法模式:传递国家名,找到对应的类,再调用该类的方法。
可是被调用的方法不是实例方法,而是静态方法,这就导致了不能通过构造一个子类对象,转换成抽象基类的对象来调用该静态方法,因为调用静态方法时不会调用子类的方法。

编辑ALV后更新对应的内表

标签:ABAP

好久没碰ABAP了,今天同事问我一个ALV的问题,稀里糊涂地解决了,于是记录下来。

这个问题是有一个可编辑的ALV表格,用户编辑完后点update按钮,需要将编辑后的数据更新到数据库。

« 看看还有什么好玩意