星星博客's Archiver

cnangel 发表于 2004-3-5 13:51

关于组件开发的资料

1。
业务模块开发流程

brew开发增值业务是以模块为单位,每一模块可能含一个或多个小程序(applet),模块的调用(以windows平台为例,以下同)是从module_main入口开始,提供以windows动态库类型的小程序为运行单位。业务模块的开发可以独立和同时开发,从而最大限度地缩短开发时间,回避复杂的集成问题。

brew 中的每个类或小程序必须拥有一个唯一的classid,在brew sdk中,提供了classid编程器---生成后缀为mif的文件,它包含支持的类、支持的小程序以及小程序标题。启动时,brew 会在设备屏幕上列举mif文件,并保存从mif 列举收集来的信息,以便在请求类时使用。


2。
创建实例

brew 用于支持小程序和模块创建的机制是ishell_createinstance方法。该机制是brew 模型的核心,也是brew 支持的最强大的api 之一。调用该方法时brew 将在支持的类列表中搜索指定的32 位已注册的classid。该列表包含内核brew api支持的条目,另外还包含添加到系统的所有类和小程序,系统启动时会通过mif 列举进行检测。

类通过brew 模块支持的imodule_createinstance方法来创建。brew 将根据需要加载模块,加载后brew 将使用其imodule实例创建请求的类。一个模块的所有对象在创建时必须增加其imodule的引用计数,而在释放时减少imodule的引用计数。模块在该模块imodule类的引用计数变为零之前,模块会保持加载的状态,一旦引用变为零,brew 将自动释放与该模块相关的所有内存。这种方法的象windows编程中使用com 对象一样;创建实例的过程基本上是统一的,程序员一般必干预此过程,这样有利于开发和运行的效率。
[color=#DC143C]作者:板凳南瓜[/color]

页: [1]

Powered by Discuz! Archiver 7.0.0  © 2001-2009 Comsenz Inc.