抽象工厂+放射+配置文件

前言

      动手敲机房了,用的时候才知道当时学设计模式的时候不是真的理解了。自己敲了后又重新认识了一次。

内容

      抽象工厂很好的遵守了开放封闭原则,在不影响系统运行的情况下用户灵活的更换数据库。

      初步理解的反射:B层调用D层的东西不去直接用,调用的是抽象工厂,通过抽象工厂层返给B层D层的东西,反射是在抽象工厂里实现的。
      反射的优点:很好的降低了耦合性,增加了程序的灵活性和扩展性。(理解的很抽象)

      官方定义:反射,一种计算机处理方式。是程序可以访问、检测和修改它本身状态或行为的一种能力。(我没有懂!)

      机房的抽象工厂代码:

public class Factory
    {
        // 取配置文件里的值。
        private static readonly string AssemblyName = ConfigurationManager.AppSettings["AssemblyName"];
        private static readonly string className = ConfigurationManager.AppSettings["className"];

        public  IDAL.IuserinfoDAL select()
        {
            // 返回给B层D层的类。
            return (IDAL.IuserinfoDAL)Assembly.Load(AssemblyName).CreateInstance(className);
        }
    } 

                                                                                                                                                                                                                                                                   配置文件优点:项目开发完便于维护,当有需要修改的地方不用改程序,直接改配置文件,不会对程序造成什么副作用。

       配置文件代码:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <startup> 
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
    </startup>
  <appSettings>
    <add key ="connstring" value ="Server=DESKTOP-A9EEBCD; Database=JFCG; User ID=sa; Password=1"/>
    <add key ="AssemblyName" value ="DAL"/>
    <add key ="className" value ="DAL.SqlServerUser"/>
  </appSettings>
</configuration>

总结

       注意:配置文件写在什么位置,不是哪层用写在哪,是统一都写在U层的。嘻嘻,通过我犯错来长大家的经验了。

       去做,不懂就要刨根问底儿。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 23
    评论
评论 23
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值