打印回调函数和跳转回调函数 都是一样的代码。但是依旧保存了各个Table具有相同的代码。这个优化放在整体重构才能解决。
searchpanle是独立的、内部很清晰的、高质量代码。
SEARCHPANEL开发总结。
类级别:
SEARCHPANEL类的设计构建过程分别采用了:自上而下、自下而上、迭代设计方法。
自下而上提供了SEARCHPANEL核心功能search的功能的开发。从Serach函数为切入点,向周边依次扩充SearchDB和SearchTree函数。又从这一层次
依次独立的辅助函数。比如SearchDB扩充支持针对DID对象而做的特定的SQL修正功能(RiviseSql函数),针对Tree数据结构提供的递归函数FindNodeByName。
SearchDB和SearchTree只提供检索数据,数据呈现由RenderResult多个重载进行处理,Search函数调配两者协同工作。Search支持DB和TREE数据源的探测。
总体过程总结:类似与战争中的中心开花战术。
自上而下的提供了SEARCHPANEL为调用放公开接口的设计:让接口公布达到最小限制。
接口一览
SetTreesearchOff 启用TREE检索接口
SetTreeSearchoOn 关闭TREE检索接口
ChangeDIDOjbect 改变检索对象接口
Initialization 控件初始化接口
setCallBack 回调函数设置接口
迭代则在整个构建过程中都起作用。整个过程的构建过程还使用了伪代码编程。
函数级别
函数设计和开发用到了:嗅探、断言、隔栏
嗅探:提供对一些关键性问题的探测。比如何种数据源来工作;控件依靠的MDI子窗体是否加载完毕...
断言:简便验证函数参数的合法性...
隔栏:过滤处理用户输入数据,负责该工作的是InputSearchDataVarify类。该类经过重构:针对特定字段进行分类。然后对各个分类进行函数的编写。而相对底层公用验证代码段为
精简的底层函数。
外部限制:
开头所说的问题;该问题主要还是受限于现有架构。通过对MDI子窗体进行继承可解决这个问题。
searchpanle是独立的、内部很清晰的、高质量代码。
SEARCHPANEL开发总结。
类级别:
SEARCHPANEL类的设计构建过程分别采用了:自上而下、自下而上、迭代设计方法。
自下而上提供了SEARCHPANEL核心功能search的功能的开发。从Serach函数为切入点,向周边依次扩充SearchDB和SearchTree函数。又从这一层次
依次独立的辅助函数。比如SearchDB扩充支持针对DID对象而做的特定的SQL修正功能(RiviseSql函数),针对Tree数据结构提供的递归函数FindNodeByName。
SearchDB和SearchTree只提供检索数据,数据呈现由RenderResult多个重载进行处理,Search函数调配两者协同工作。Search支持DB和TREE数据源的探测。
总体过程总结:类似与战争中的中心开花战术。
自上而下的提供了SEARCHPANEL为调用放公开接口的设计:让接口公布达到最小限制。
接口一览
SetTreesearchOff 启用TREE检索接口
SetTreeSearchoOn 关闭TREE检索接口
ChangeDIDOjbect 改变检索对象接口
Initialization 控件初始化接口
setCallBack 回调函数设置接口
迭代则在整个构建过程中都起作用。整个过程的构建过程还使用了伪代码编程。
函数级别
函数设计和开发用到了:嗅探、断言、隔栏
嗅探:提供对一些关键性问题的探测。比如何种数据源来工作;控件依靠的MDI子窗体是否加载完毕...
断言:简便验证函数参数的合法性...
隔栏:过滤处理用户输入数据,负责该工作的是InputSearchDataVarify类。该类经过重构:针对特定字段进行分类。然后对各个分类进行函数的编写。而相对底层公用验证代码段为
精简的底层函数。
外部限制:
开头所说的问题;该问题主要还是受限于现有架构。通过对MDI子窗体进行继承可解决这个问题。