手机开发实战190——手机软件开发注意事项4
2016-06-14 20:33
246 查看
31嵌入式开发更应该注意资源(内存)的消耗和程序的运行速度;
32具有一定集成度并可以重复使用的软件组成单元称为软构件(Software Component)
33显示功能的统一接口函数
字符串、图片和绘图函数
34每一个模块功能都应该定义相应的编译选项开关;
35设计多语言版本的软件应注意的一些细节:
字体、提示信息、在线帮助;货币、度量单位;数字、日期格式;人的名字、电话号码、通信地址;图标、标签;声音;阅读顺序或习惯;字符串长度;默认城市、网络参数、运营商参数
36用一个全局变量标识前台运行的程序状态,再用一个全局变量标识后台运行的程序状态(背景播放mp3、自动下载彩信和接收短信等)
37设计工具来取代日常的手工工作(代码自动生成工具);
38在对各类菜单操作时,可用数字键实现操作的快捷方式;
39利用AT工具在手机正常运行状态,动态改变程序中变量的值;这样不必在每次改变值后,重新编译,然后再下载到手机中看结果,显著节约了开发时间;
37集成第三方软件注意事项:
a 修改软件中的I/O函数;
b 修改软件中对文件进行操作的函数;
c 修改软件中对内存进行操作的函数;
d 修改软件中的显示函数;
e 修改软件中的定时器函数;
f 修改软件中的多媒体功能函数;
g 修改软件中的网络功能函数;
h 修改软件中的SIM卡功能函数;
i 修改软件中的按键和触控操作功能函数;
38接口函数的参数可以封装在结构体里,这样当调用的函数的参数个数发生变化时,改动比较方便;
39采用ARM处理器,函数的参数最好不要超过4个,这样参数可以存储在寄存器中,有助于提高程序的运行速度;
40在不同的task和层之间,采用消息机制进行交互,调用-反馈的闭环形式;
具体有两种方式:
一种是纯消息机制:
A向B发送REQ消息,B反馈向A发送CNF或ERR消息;(上层调用下层)
A向B发送IND消息,B反馈向A发送RSP或RJT消息;(下层调用上层)
另一种采用回调函数的方式:
A向B发送消息,同时注册回调函数,B执行完成后,调用回调函数向A反馈结果;
41编写关键函数时,要加入输出log信息的语句;
42目前开发手机都是以一个版本为基础,换LCD的尺寸FLASH和对应的文件系统
操作方式从触控换成键盘,或从键盘换成触控改变字体大小等设计这方面的代码都要加适配层,以便于修改
43 对于硬件器件的评估,不但结构要参与,软件也要参与,如有个项目要换FLASH,得使用与之配套的文件系统,但这个文件系统提供的接口函数与通常使用的标准C语言接口函数,而在评估此FALSH时,没有让软件人员参与,没考虑到这个问题。结果导致项目开发阶段才发现此问题,花费了许多资源去解决文件系统的接口函数问题,严重影响的项目的进度和软件的质量。
32具有一定集成度并可以重复使用的软件组成单元称为软构件(Software Component)
33显示功能的统一接口函数
字符串、图片和绘图函数
34每一个模块功能都应该定义相应的编译选项开关;
35设计多语言版本的软件应注意的一些细节:
字体、提示信息、在线帮助;货币、度量单位;数字、日期格式;人的名字、电话号码、通信地址;图标、标签;声音;阅读顺序或习惯;字符串长度;默认城市、网络参数、运营商参数
36用一个全局变量标识前台运行的程序状态,再用一个全局变量标识后台运行的程序状态(背景播放mp3、自动下载彩信和接收短信等)
37设计工具来取代日常的手工工作(代码自动生成工具);
38在对各类菜单操作时,可用数字键实现操作的快捷方式;
39利用AT工具在手机正常运行状态,动态改变程序中变量的值;这样不必在每次改变值后,重新编译,然后再下载到手机中看结果,显著节约了开发时间;
37集成第三方软件注意事项:
a 修改软件中的I/O函数;
b 修改软件中对文件进行操作的函数;
c 修改软件中对内存进行操作的函数;
d 修改软件中的显示函数;
e 修改软件中的定时器函数;
f 修改软件中的多媒体功能函数;
g 修改软件中的网络功能函数;
h 修改软件中的SIM卡功能函数;
i 修改软件中的按键和触控操作功能函数;
38接口函数的参数可以封装在结构体里,这样当调用的函数的参数个数发生变化时,改动比较方便;
39采用ARM处理器,函数的参数最好不要超过4个,这样参数可以存储在寄存器中,有助于提高程序的运行速度;
40在不同的task和层之间,采用消息机制进行交互,调用-反馈的闭环形式;
具体有两种方式:
一种是纯消息机制:
A向B发送REQ消息,B反馈向A发送CNF或ERR消息;(上层调用下层)
A向B发送IND消息,B反馈向A发送RSP或RJT消息;(下层调用上层)
另一种采用回调函数的方式:
A向B发送消息,同时注册回调函数,B执行完成后,调用回调函数向A反馈结果;
41编写关键函数时,要加入输出log信息的语句;
42目前开发手机都是以一个版本为基础,换LCD的尺寸FLASH和对应的文件系统
操作方式从触控换成键盘,或从键盘换成触控改变字体大小等设计这方面的代码都要加适配层,以便于修改
43 对于硬件器件的评估,不但结构要参与,软件也要参与,如有个项目要换FLASH,得使用与之配套的文件系统,但这个文件系统提供的接口函数与通常使用的标准C语言接口函数,而在评估此FALSH时,没有让软件人员参与,没考虑到这个问题。结果导致项目开发阶段才发现此问题,花费了许多资源去解决文件系统的接口函数问题,严重影响的项目的进度和软件的质量。