今天第一次接触.net,对他们2个我的初步理解。
1、如果将机器系统和语言执行程序分层
以前的vc,pb,c等等,都是2层,编译后直接面对机器。
.net则在机器系统和语言执行程序中间加多了一层--虚拟机,
程序面对的是虚拟机了,不是面对机器了。虚拟机与机器打交道了。
似乎这样可以避免程序与机器系统兼容问题。
2、我觉得虚拟机就像编译器,只是比编译器功能强大一些。
虚拟机执行的是我们没有编译过的源程序,是到时解析执行的。
这样似乎有一个好处,就是源程序编辑可以任意性,反正到时候丢给虚拟机一个源文件就可以了。
同时可以利用当今internet数据流 传播的通用方式XML,把源程序以XML格式存放,
在internet上流转。在系统更新上,只要设计合理,就能达到开发与实际应用而二为一。
加速开发和应用效率。
3、快速开发平台的设计理解
由于.net使得开发与应用的概念模糊不清。
举个例子说吧:以PB为例子,我们开发一套基本类库包含常用和特殊功能,作为快速开发的平台,在它上面
进行业务开发,使得开发效率加倍。然而无论怎样,在开发的时候我们必须启动PowerBulider。
我们没有办法用PB开发出一个平台,使得这个平台能进行业务开发,能开发的时候调用PB的基本函数,
并且最终能生成PB源码。
也就是说PB不能开发出一个简化版的PB
.net做法(初步理解):能用.net开发出一个快速开发平台A,在这个平台上可以进行任何业务的开发,
并且在平台A上能调用.net的一切函数,语法等。最终生成的也.net能解析运行的.net代码,
多数以XML格式保存。(我不明白的是A平台是怎样像.net进行语法检测的,和A平台如何得知.net有那些库,
那些函数,那些基本语法)。
实际上理解,net可以开发出一个简化版适合自己使用的.net。
至于如何开发出这个快速开发平台A,我想这就是他们常说的.net架构的主要一部分。
4、快速开发的接口理解。
如果一个企业,我们事先定义好让程序执行.net程序的方法步骤。
例如,我们把系统模块放在数据库一个系统模块表里,该模块的实现.net源码我们存放在一组XML文件
或者一个数据库表里,我们的程序有一个通用的方法:读取系统模块生成模块树,在树上增加一个方法:
打开节点后即查找对应模块的源码XML文件或者源码表,这样让虚拟机直接读取XML文件或者内存区域把源码解析运行起来。
这样一来,我们采用该方法的嵌套递归做法。当企业的需要变更和版本更新,权限控制就变得简单多了。
基本上做到实做实用。
5、对于什么跨平台,支撑多种数据库格式,文件传播方式,报表体系等等这些就还没有想。
另外,虚拟机到底是否是做所说的这些工作,和其中工作原理,也是刚开始接触,理解的错误,不当,以后慢慢更正