Delphi

本类阅读TOP10

·分布式网络考试系统原型分析及实现
·游戏外挂设计技术探讨①
·使用HOOK随心监视Windows
·Delphi 水晶报表打包解决
·试题库开发中非文本数据的处理
·如何将几个DBGRID里的内容导入同一个EXCEL表中....的问题
·如何使用Delphi设计强大的服务器程序
·工人线程中关闭窗体的实现
·用DLL方式封装MDI子窗体。
·支持XP下托盘栏气球提示的托盘单元

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
DELPHI MVC 实现

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站

昨天我自己引用了一个国外的网页,是关于MVC的,也是给大家做参考的,其实他所理解的MVC我不完全赞成,现将我的MVC 实现公布

下面是C控制层的代码!!!

{*******************************************************}
{ unit name: Controller                                 }
{ class:  TProgramController                            }
{ descripate:  此Class为MVC中的控制层,                 }
{             担任着程序流程的调度工作                  }
{ blog : http://blog.csdn.net/zhuam                     }
{ author: zhuam                                         }
{ date : 2004/10/25                                     }
{ Copyright (c) 1.0                                     }
{*******************************************************}

unit Controller;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Mask, ExtCtrls, Model;


{-----------------------------------
 descripate: 用于分发程序的业务流程
------------------------------------}
type
   TProgramController=class(TObject)
   private
     TempModelClass:IProgramModel; //业务逻辑Class   <Base Model>
   public
     procedure portal(FView:TForm;sOperator:string);


end;

implementation

uses Util, UnitMVCExample;

{ TProgramController }

procedure TProgramController.portal(FView: TForm;sOperator: string);
var
  ClassTemp:TComponentClass;
  SListRead:TSListReader;
  XMLRead:TXMLReader;
  sModel:string;
begin
  try
    SListRead:=TSListReader.Create;
    XMLRead:=TXMLReader.Create;
    sModel:=SListRead.getSListDataToModelString(XMLRead.getXMLDataToList,FView.Name,sOperator);
    if Trim(sModel)<>'' then
    begin
      ClassTemp:=TComponentClass(getClass(sModel));   //类似java中的反射,根据名称产生Class实例
      TempModelClass:=(ClassTemp.Create(nil) as IProgramModel);
      TempModelClass.Execute(FView);
    end;
  except
    //raise
  end;
end;

initialization

  RegisterClass(TForm1Model);

end.




相关文章

相关软件