VB.NET小结


VB.NET是在VB6.0的基础上发展而来的,它完全支持面向对象的程序设计,而VB6.0是部分面向对象的,VB.NET语法和VB6相似,又有自己新增的功能,由于它完全面向对象,因此,支持继承、多态、封装。

  1. (Class)的组成
    1. 字段(Fields)、属性(Property)、方法(Methods)
    2. 浅拷贝(Shallow Copy)与深拷贝(Deep Copy)
      1. Shallow Copy:指将对象中的数值类型的字段拷贝到新的对象中,而对象中的引用型字段只复制它的一个引用到目标对象;这样的复制如果改变目标对象中引用类型字段的值,它也将反映在原对象中,因为,目标对象和原对象是一个引用。
      1. Deep Copy:指对值类型字段与Shallow Copy处理相同,不同的是对于引用类型字段,Deep Copy会重新创建对象,即复制对象的引用和对象内容。
      1. 实现的机制:Shallow Copy是通过MemberWiseClone()方法实现,而Deep Copy是实现ICloneable接口中的Clone方法实现对象的深拷贝。
      1. C#中的原型模式(Prototype)就是一个浅拷贝的例子。
    1. Shared关键字
      1. Shared看起来陌生,其实,它的作用我们已经学过,它就像C#里面的Static关键字,表示一些需要共享的字段、属性、方法等
      1. 实例与实例之间往往需要共享一些数据,如银行用户的利率数据每个用户都一样,就没必要放在每一个实例里面,可以拿出来共享.

 

  1. 继承(Inherits)类、接口(Interface)
    1. VB.NET中用Inherits关键字表示继承,有两种写法。

      1. Base

        表示父类

        Parent

        表示父类

        Super

        没有继承其它类的类,如Object

        Derived\sub\child

        表示衍生类、子类

    1. 接口(Interface):由一些共同的操作、行为或其它抽象出来的共享边界。
      1. 接口名字InterfaceName首字母大写“I

        1. 上面是实现了IDataReader接口,可以访问不同的数据源或数据库
      1. .NET中常用接口有

  1. ADO.NET与关联式数据库设计
    1. 什么是ADO.NET?、
      1. 在面向对象程序设计里面,所有操作都是面向对象的。
      1. ADO.NET是数据存取技术,也可称为对数据库存取对象的集合。
      1. 不同的数据库对应不同的ADO.NET组件,如下图

    1. ADO.NET五大对象
      1. DataSet对象
        1. 可以从数据库中复制出数据保存在DataSet中,因此,可以处理脱机数据,在多层次、分散式应用程序中很有用。
        2. XML完整性,可以DataSet对象和XML文档可以互换。
      1. DataReader对象
        1. 通过DataReader对象可以从数据库读取记录,占用一个数据库连线。

      1. DataAdapter对象
        1. 用来向DataSet数据集中填充数据。
      1. Connection:用来连接数据库
      2. Command:执行T-SQL语句
    1. 关联式数据库设计原则
      1. 表中一般要建立主索引键:防止有重复记录与表之间进行关联
      2. 数据库正规化设计
  1. 程序设计方式
    1. 事件驱动程序设计
    2. 以元件为基础的程序设计

    1. 分散式程序设计
      1. 一个系统或软件不仅分布在一台主机上,而是很多机器,成为分散式程序设计。
      1. 同步分散式
        1. 用户端等待服务器响应之后,在继续执行。
        2. 机制RPC(Romote Pocedure Call)

        1. 常见形式
          1. Form-Based-Web
          1. Web Server
          1. Romoting
      1. 非同步分散式
        1. 用户端传送要求,然后,用户端继续进行其它工作,等服务器执行完后,再将结果传给用户端

 

  1. 部署
    1. 一个软件系统可能分布在很多电脑上,包括用户端、服务器、数据库等,让一个系统运行所需要做的设置成为部署。
    1. .NET开发的程序需要在.NET平台上才能运行,所以,首先需要测试目标主机有没有安装.NET Framework
      1. 通过Windows UpdateInstaller Script 让用户自己选择安装
      2. VS.NET可以设置安装过程,在安装软件之前检查机器里是否有.NET Framework,如果没有进行安装。
      3. .NET Framework有不同的版本,DLLs默认在编译它时的Framework上运行,可以通过.config指定运行.net Framework版本。
    1. 部署方式
      1. Copy部署
        1. 将应用程序的.EXE DLLs 、相关文件,拷贝到同一个文件夹目录下
      1. “零接触”部署
        1. 给应用程序的.EXE设定一个URL,用户端通过浏览器(IE)等,打开URL连接应用程序。
        2. .NETAppBase设为Web Server的虚拟目录
          1. AppBase即应用程序主目录,.EXE所在目录
        1. 用户从AppBase下载.EXEDLLs,然后,显示,用户请求结果
      1. 共用部署
        1. 将具有强名称(Strong Name)的组件安装到GAC
          1. GAC(Global Assembly Cache)全局程序集缓存:主要存放一些很多程序都要用的Assembly,System.Data
          2. GAC中的Assembly必须有Strong Name
          3. Strong Name是有一组程序集的标识组成并通过公钥和数字签名加强的名称。
            1. 强名称保护程序集的版本沿袭。
            2. 强名称提供可靠的完整性检查
        1. 具有Strong Name的组件载入效率会比较快
      1. 下载部署
        1. 使用CodeBase来指定DLLs位置
          1. CodeBase即某个DLLs所在位置
        1. 更新了新版.EXE就会触发下载新版DLLs
          1. 利于版本更新
posted @ 2012-01-31 15:28  李龙生的博客  阅读(208)  评论(0编辑  收藏  举报