VB.NET小结

页面导航:首页 > 软件编程 > vb.net > VB.NET小结

VB.NET小结

来源: 作者: 时间:2016-01-18 16:54 【

VB.NET是在VB6.0的基础上发展而来的,它完全支持面向对象的程序设计,而VB6.0是部分面向对象的,VB.NET语法和VB6相似,又有自己新增的功能,由于它完全面向对象,因此,支持继承、多态
VB.NET是在VB6.0的基础上发展而来的,它完全支持面向对象的程序设计,而VB6.0是部分面向对象的,VB.NET语法和VB6相似,又有自己新增的功能,由于它完全面向对象,因此,支持继承、多态、封装。
类(Class)的组成
字段(Fields)、属性(Property)、方法(Methods)
浅拷贝(Shallow Copy)与深拷贝(Deep Copy)
Shallow Copy:指将对象中的数值类型的字段拷贝到新的对象中,而对象中的引用型字段只复制它的一个引用到目标对象;这样的复制如果改变目标对象中引用类型字段的值,它也将反映在原对象中,因为,目标对象和原对象是一个引用。
Deep Copy:指对值类型字段与Shallow Copy处理相同,不同的是对于引用类型字段,Deep Copy会重新创建对象,即复制对象的引用和对象内容。
实现的机制:Shallow Copy是通过MemberWiseClone()方法实现,而Deep Copy是实现ICloneable接口中的Clone方法实现对象的深拷贝。
C#中的原型模式(Prototype)就是一个浅拷贝的例子。
Shared关键字
Shared看起来陌生,其实,它的作用我们已经学过,它就像C#里面的Static关键字,表示一些需要共享的字段、属性、方法等
实例与实例之间往往需要共享一些数据,如银行用户的利率数据每个用户都一样,就没必要放在每一个实例里面,可以拿出来共享.
 
继承(Inherits)类、接口(Interface)类
在VB.NET中用Inherits关键字表示继承,有两种写法。
      1. \
      2. Base

        表示父类

        Parent

        表示父类

        Super

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

        Derived\sub\child

        表示衍生类、子类

    1. 接口(Interface):由一些共同的操作、行为或其它抽象出来的共享边界。
      1. 接口名字InterfaceName首字母大写“I
      1. \
        1. 上面是实现了IDataReader接口,可以访问不同的数据源或数据库
      1. .NET中常用接口有
        1. \
  1. ADO.NET与关联式数据库设计
    1. 什么是ADO.NET?、
      1. 在面向对象程序设计里面,所有操作都是面向对象的。
      1. ADO.NET是数据存取技术,也可称为对数据库存取对象的集合。
      1. 不同的数据库对应不同的ADO.NET组件,如下图
        1. \
    1. ADO.NET五大对象
      1. DataSet对象
        1. 可以从数据库中复制出数据保存在DataSet中,因此,可以处理脱机数据,在多层次、分散式应用程序中很有用。
        2. XML完整性,可以DataSet对象和XML文档可以互换。
      1. DataReader对象
        1. 通过DataReader对象可以从数据库读取记录,占用一个数据库连线。
        1. \
      1. DataAdapter对象
        1. 用来向DataSet数据集中填充数据。
      1. Connection:用来连接数据库
      2. Command:执行T-SQL语句
    1. 关联式数据库设计原则
      1. 表中一般要建立主索引键:防止有重复记录与表之间进行关联
      2. 数据库正规化设计
  1. 程序设计方式
    1. 事件驱动程序设计
    2. 以元件为基础的程序设计
      1. \
    3. 分散式程序设计
      1. 一个系统或软件不仅分布在一台主机上,而是很多机器,成为分散式程序设计。
      2. 同步分散式
        1. 用户端等待服务器响应之后,在继续执行。
        2. 机制RPC(Romote Pocedure Call)
          1. \



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



摘自 李龙生的专栏
Tags:

文章评论

最 近 更 新
热 点 排 行
Js与CSS工具
代码转换工具

<