设计模式之策略模式(strategy)(组件模式) C#

适用条件:每一个功能独立,互不干涉

效果:实现代码的封闭开放原则,代码的复用性(复用性:二进制层面的复用)

总结:添加新功能时不用在源码上重新修改,增加了可扩展性

实例代码:

//实现一个根据用户国籍选择语言的功能

普通方案:

enum Contury{

    english,

    china,

    amarica // 更改

}

public class GetWord(){

    public Contury con;

    public void getword(){

        if(con == contury.english){

            //...................

        }

        else if(con == contury.china){

            //..............

         }

        else if(con == contury.amarica){ // 更改

            //............................

         }

    }

}

 

设计模式方案

public abstuct class contury{

    public abstruct void getword();

}

 

public class english : contury{

    public void getword(){

    //..............

    }

}

 

public class china : contury{

    public void getword(){

    //...............

    }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值