逗B少年搞程序05 代理模式——名字都是后来补的,幸好没人看

    听说酒神又更新视频了,大五一的还让不让人学习了。诶,好像有什么不对。前天听了师哥们的讲座,除了Eclipse别的都没听过,后来一想,这讲的要是连我都听过,咱们也不会出门就挣一万多啊。

    就记得下午听老毕师哥讲的录数据,师哥说不把这么大的数据放到事务中处理,不然会发生出错就一条都进不去的情况。

    当时想了想,能不能做一个纠错的功能,就好像百度搜索的时候,打错了一个字母,比如输入的“Objact”,它会提示“您要找的是不是Object”。我们可以将可以约束的字段进行约束,并且这个约束可以在创建系统的时候由用户自己添加修改。

    比如,当录数据的时候需要录入学校,学院,专业,我们应该得到“廊坊师范学院,外国语学院,英语”,万一有的同学调皮,录信息的时候录入的是“廊坊吃饭学院,外国话学院,进口挖掘机修理系”(。。。)

    这个时候,我们在录入正确的数据之后,可以提示一下,把“廊坊吃饭学院”标记出来,系统提示“您是不是要输入廊坊师范学院”,外国语学院同样进行提示,修改过来之后,提示“外国语学院没有进口挖掘机修理专业,是否修改”如果选的否,再提示“是否创建进口挖掘机修理专业”。

    想想貌似有点复杂,概括的说就是,近似的提示修改,不存在的先提示修改再提示创建。好吧,我就听懂了一点,就提这么个小小的意见吧,也不知道会不会采用。

    之后还听了师傅说的先功能后智能,我倒是觉得做功能的时候设计一点点简单的智能吧,不过既然师傅说了,那先听着,反正我功能都实现不了就别谈智能了。

    好的,这次是学到了代理模式了,貌似有点慢了。

    代理模式的定义:为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。(From 百度百科)

    代理?中介?听起来不是很难理解嘛,客户端通过代理调用真正的实体中的方法。

    看了大神的解释,这个可以用在游戏中用来加载地图,瞬间我就来了兴趣,怪不得玩游戏的时候看起来很大的地图加载的速度还挺快的。由于大神的代码是Java的,那我给翻译成C#的,这样你们就不能说我是复制的代码。

    首先贴上大神博客http://blog.csdn.net/froser/article/details/23611465

    附上例子:在一个射击游戏中,前面有个房子,这个房子我们未必会进去。那么,在我们真正进入这个房子之前,这个房子内部是没有必要实例化的,我们只要通过它的外观判断出它是一个房子即可,房子内部的东西,等我们进去再生成来提升效率。

interface house         //房子的接口,又来存放创建房子的抽象方法
{
    public void Create();
}

class LargeHouse : house    //房子类,真正的实体
{
    public void Create()    //这里既简单写了。。。
    {
        Console.WriteLine("Building a LargeHouse");

        Console.WriteLine("Complete!");
    }
}

class LargeHouseProxy : house       //代理类,用代理类来调用LargeHouse的Create方法
{
    private LargeHouse lh;          //在代理类中定义一个被代理的实体

    public void Proxy()		    //实例化
    {
        lh=new LargeHouse();
    }

    public void Create()	    //这里就可以使用真正实体类中的方法了
    {
        lh.Create();
    }

}

    main过程太简单了,只要实例化一个代理类,之后就可以调用方法了。

    书上说的没太看懂,就看懂一个远程代理,可以提高加载速度,看来还需要在第二遍看书的时候仔细研究啊。

以上

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 9
    评论
智慧城市社区安防管理系统的部署流程分为以下几个步骤: 1. 系统需求调研:确定社区安防管理系统的功能需求和用户需求。在系统设计之前,需先了解社区的规模、特点以及安全管理的要求,确定系统所需的功能模块和性能指标。 2. 系统设计:基于b/s模式,选择适合的平台和开发技术,设计系统的总体架构、功能模块和界面等。同时,确定系统的数据存储方式,以及数据备份和恢复机制。 3. 开发与测试:根据系统设计的蓝图,进行后端和前端的编码工作。后端包括数据库的设计与构建,以及后台程序的开发;前端则负责用户界面的设计和开发。同时,进行系统的集成测试,确保各个功能模块之间的协同工作良好。 4. 部署与配置:选择合适的服务器和数据库,将开发完成的系统部署到服务器中。进行部署前,需进行系统的详细配置,包括数据库的初始化、用户权限管理等。确保系统能够正常运行。 5. 数据导入与迁移:将社区现有的安防管理数据导入系统中,确保系统能继承社区原有的信息和数据。同时,进行数据迁移,确保数据的完整性和一致性。 6. 系统培训与推广:为社区工作人员提供系统的培训和指导,确保他们能够熟练使用系统的各项功能。同时,进行系统的推广宣传,提高社区居民对系统的认知度和接受度。 7. 系统维护与更新:系统部署完成后,需要进行定期的系统维护和更新,保障系统的稳定性和安全性。及时处理漏洞和问题,以便系统能够长期有效地运行。 通过以上的部署流程,智慧城市社区安防管理系统可以快速而高效地在社区中实施,提高社区的安全管理水平,为居民提供更好的生活环境。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值