学习c#有一年了,基本应用没什么问题,但就是接口和委托一直没用过,可能是自己开发软件小,没注意到这些,再一个就是开发不规范吧。所以请教高手给予一些总结,谢谢! 
    顺便问一下序列/反序列什么作用?再就是应用程序域、程序集、进程、*.DLL文件,这些个之间的区别是什么? 
    希望大家指点一二!不胜感激了! 

解决方案 »

  1.   

    接口的作用就是规范化,将一些业务逻辑抽象化,因为他只定义函数,不提供实现,所以我们只要继承接口,那方便你写出满足不断变化的业务逻辑需求,比如我要查学生的信息,具体怎么查,要返回哪些字段你只要继承后就可以根据你的需求写了,而且方便其他开发人员实现,这样将大大提高工作效率(类但只能继承一个类,但能继承多个接口)委托也很好理解,说白了就是代理嘛,比如我叫我儿子买包烟,我儿子就是我的代理,而买烟这个动作就是委托中传递的参数(处理方法)序列化/反序列化 应用程序域(AppDomain)说白了也就是程序运行的范围,用进程边界来隔离在同一台计算机上运行的应用程序。每一个应用程序被加载到单独的进程中,这样就将该应用程序与在同一台计算机上运行的其他应用程序相隔离程序集是 .NET Framework 编程的基本组成部分,可以这么说, 整个.net类库就是由若干个程序集组成的
    比如我们创建asp.net常用的命名空间,比如System.Web,System.Configuration其实他们都可以说是程序集,*.dll就可以算是一个进程 计算机基础有,我就不解释了*.dll  程序集的一种表现形式,比如我们开发自己的类库,编译之后就是以*.dll存在的,到时候在项目中引用,就能使用类库中的函数了
      

  2.   

    还有序列化和反序列化序列化的目的:
      1、以某种存储形式使自定义对象持久化;
      2、将对象从一个地方传递到另一个地方。比如我用的序列化之前的数据是DataTable,我想以二进制方式传输该类型的数据,然后通过反序化得到先前的DataTable类型再加以处理,说白了就是将数据以另外一种格式传输然后得到原来的格式,在开发中很有用的哦
      

  3.   

    委托是一个类(面向对象的东西都离不开这个,编译器解释成一个类),它定义了函数的类型,使得函数可以像其它参数一样(比如int\string类型)作为函数的参数进行传递。事件就是对委托的进一步封装,在一个类中定义了事件,你在其他的类或者模块可以注册事件,然后实现这个类的事件中的函数。