对于 guichan 的扩展.
要实现 graphics, input, image,imageloader 以及 imagefont 几个类的接口.
其他部分是平台无关的定义。
而hge 事实上也是分隔开定义的, 仔细看的话是 hge,hge_impl graphics system 还有一层是 core, helper
这种设计的模式叫做 Adapter Pattern,
adapter模式是扩展时用。
“当客户类使用它时,接口不匹配,。。用硬代码调用这个类,势必产生大量重复代码”,当接口不匹配时,一般我们要么修改原来的类或者修改现在的类,使它们接口来匹配,但是这种修改原来类的办法不是好办法,我们要把原来的类当做“黑匣子”,尽量不去动它,保证复杂系统的稳定性,这是就只能通过adapter增加一个类,来做转换,就象110/220的变压转换器一样。
这个模式告诉我们,不要随意去修改原来代码,不要自以为很聪明,我个人感觉这是很多年轻程序员最喜欢范的毛病。
adapter 模式在网络里的应用是 gateway(网关),在现实生活中的应用就是 translator/interpretor(翻译)。
#09-10补充, 本来想做ui framework 的, 目前停滞了。