如果要做产品,客户化需求千变万化的,而且是非常重要的。
如何对各个地区不同客户做到个性化设计,是一个成品产品的必经之路。
对于机顶盒来说,这就涉及到遥控器的设计。我所在的公司,从事机顶盒研发多年,设计的遥控器有数十种。于是输入驱动和按键控制部分的程序就变得特别复杂,不易维护。
我先撇开驱动不谈,只说应用中对按键的处理。我们的程序是每个界面都有一个HandleMessage接口,用于处理按键消息。代码片断如下:
switch(key)
{
case SK_KBD_TV_RADIO:
//...
case SK_KBD_FORBACK:
//...
}
这样,当某一应用的特定按键只在特定客户出现(比如,“后退”键只用在浏览器中),而别的客户没有此键时,编译程序就出现了问题:Err...extern int SK_KBD_FORBACK。
这是因为当初加入SK_KBD_FORBACK处理代码作者没有考虑到别的情况,如果是这么写的:
#ifdef SK_KBD_FORBACK
case SK_KBD_FORBACK:
//...
#endif
问题就迎刃而解了。所以我们今后写代码一定要考虑全面一些,写得健壮一些,不要一时省事,给以后带来更大的麻烦。
posted on 2006-04-25 15:00
游子 阅读(248)
评论(0) 编辑 收藏 引用