论文部分内容阅读
随着嵌入式软硬件技术的飞速发展,越来越多的嵌入式产品走进了人们的日常生活。其中DVD录像机就是近几年来出现的新型嵌入式产品,它以显示终端为媒介,通过画面与用户进行交互,包括如设置机器参数的菜单,编辑文件的列表,提示录像、播放等相关信息的图标等。本文从DVD录像机图形接口软件开发时使用的设计模式着手,剖析其中的不足,并分析不足产生的原因,继而提出使用MVC模式进行设计的方案,并最终实现。
在目前的DVD录像机图形接口的设计中,基于底层框架,进行了View/Control划分。在这种划分中存在的不足,主要表现有以下几点:1.在一个文件中既包含菜单的描绘函数,又包含响应事件的分发函数导致代码不容易阅读;2.底层接口封装不彻底,在程序中View侧和Control侧都会调用底层接口函数,没有达到View/Control划分的真正目的;3.没有设计菜单刷新时机,进行了大量冗余的刷新工作,导致系统性能降低。尽管有的问题在产品初次开发时表现的不是十分明显,但是当客户的需求发生变化或底层接口变更时,就不得不对原系统进行大范围的改造。随着系统的不断升级,重复冗余的代码会越来越多,系统会变得越来越难以维护。
为了解决这些问题,论文将MVC模式引入到了DVD录像机图形接口的设计中,在原有View/Control划分的基础上添加了Model部分,并重新划分了各部分包含的内容,将分发任务的函数作为Controller单独处理,View部分文件只包含菜单相关的描绘函数,Model部分只包含功能函数,明确了各文件的功能。通过对Model部分动作函数的改善,和Model内部函数的追加,明显降低了调用底层接口的次数。在View部分中,通过明确菜单刷新时机、刷新内容,显著减轻了不必要刷新给系统带来的沉重负担。
进行了MVC划分后,除了能够带来上述改善外,更重要的是划分后各部分职责更加明确,降低了模块之间的耦合度,提高了模块的内聚性,增强了代码的易读性和重用性,提高了开发效率,并且使系统更易于维护和升级。此外,本文更重要的意义在于提出了一种将优秀的设计模式引入到嵌入式软件产品开发中的思想。在其他嵌入式产品开发过程中,也可以根据各自的特征选择适合的模式,从而提高产品质量,缩短开发周期。