WEB开发网
开发学院手机开发Symbian 开发 Symbian OS C++程序员编码诀窍-系统资源的使用(R... 阅读

Symbian OS C++程序员编码诀窍-系统资源的使用(ROM 和 RAM)

 2010-09-06 08:12:00 来源:WEB开发网   
核心提示:重要性移动电话是一种资源有限设备,然而,Symbian OS C++程序员编码诀窍-系统资源的使用(ROM 和 RAM),它却存在大量的可用功能,这对现有的系统资源提出了很高的要求,而不是去开发新的控件,_L宏的误用现在已经不建议使用带字母_L的宏了,开发者需要注意这些制约,尽可能地少用这些有限的资源

重要性

移动电话是一种资源有限设备。然而,它却存在大量的可用功能,这对现有的系统资源提出了很高的要求。开发者需要注意这些制约,尽可能地少用这些有限的资源。

减少代码量

最终编译后的代码必须尽可能得小,以便为设备留出尽可能多的可用空间,这一点非常重要。以下诀窍就如何保证不浪费存储空间提供了一些指导性意见。为解决这一问题,你需要花一点时间去检查代码,同时还要考虑一些其他的方法,使得编译后的代码量变小。

不必要的导出函数

当使用 IMPORT_C和EXPORT_C从某个 DLL 中导出一些函数时,它们会因为导出表而耗尽空间。只需要导出那些必需在该 DLL 外使用的函数。

复制和粘贴

复制和粘贴经常导致代码臃肿。当需要重用其他模块中的代码时,请向自己提问下列问题:

1. 这段代码是否实际需要?

2. 为此任务是否复制了过多的代码?

3. 如果将该函数提取到某个基类,或到一个帮助模块,使一个以上的地方都能使用它,这样是不是更好?

4. 针对所需任务,该代码是否能重写,使其更为有效,而不是去复制那些接近需求的东西?

明显不可分解的函数

在许多地方,一些函数出现在同一个类中,这些函数实现非常类似的任务。经常的情况是:可以把这些公共代码提取到一个单一的函数中去,对该函数实施参数化,以便完成所需的不同任务。

过分的TRAP模块

当编译错误捕捉代码模块时,它们会消耗内存空间。含有许多 TRAP宏的代码(如,在一个类中含有五个以上的 TRAP宏)将消耗太多的空间。另一种可能的情形是:设计不正确,使得 TRAP模块不是广泛地用于正常代码。在这里,我们允许高级开发工作中有特别的出错处理和恢复程序。

调试发行代码

如果有任何用于登录、调试,或测试的代码,必须将它们从发布版中剔除。可以为此目的使用编译指示#ifdef_DEBUG。

不必要的虚函数

不必要的虚函数是有害的,原因类似于函数导出,它们会创建额外的 vtable(虚表)函数。

使用公共控件

如果可能,请使用系统(或其它共享 DLL)提供的框架控件,而不是去开发新的控件。

_L宏的误用

现在已经不建议使用带字母_L的宏了,取而代之的是效率更高的_ LIT宏。

减少使用RAM

1 2 3 4  下一页

Tags:Symbian OS 程序员

编辑录入:coldstar [复制链接] [打 印]
赞助商链接