微软研究院里的“下一代”语言

来源:百度文库 编辑:神马文学网 时间:2024/04/29 16:01:22
编者注:Cω自去年7月份就要微软研究院的网页上公布出来,但C#的光芒完全把这门语言掩盖住了,近期在微软的官方站点上又刊登了一些有关Cω的文章,不知它是否会如当年C#的出现一样再次吸引住开发者的眼球,再次带来生产力的突破?  Cω引入的数据类型
使用Content保存XML数据的杂志类具有图书数据和内容2大要素。而前者则又具有书名和发行日期,后者则具有报道内容和作者2个要素。只要将属于此数据类型的XML数据代入杂志型变量,就会生成对象,而且XML数据的内容将会作为类的成员变量保存起来
该语言具有C#所没有的一些特点,比如,非同步执行方法的功能、从数据库获取数据的标记等。其中尤为值得关注
的是提供了用于处理XML数据的数据类型。
Cω最新引入的数据类型有4种。其中主要用于处理XML数据的是“Content”。只要根据Content的格式定义类,就能轻松生成处理XML数据的对象。
我们可以这样认为,Content可通过类和结构对象描述XML数据类型。相当于使用XML Schema和DTD定义的数据类型。
还能够描述C#过去不能描述的XML数据特有的数据类型。比如,要任意重复同样的数据要素时,就在结构对象的定义末尾加上“*”。可有可无的数据要素则用“?”来定义。
可直接将XML数据代入上述定义的类对象中。XML数据所包含的各种要素将自动保存在成员变量(member variable)中。
可轻松访问XML数据
通常情况下,处理XML数据时都是根据DOM(Document Object Model)的规则进行操作。绝大多数用于读取及处理XML数据的对象生成工具均基于DOM。DOM不限制所保存的数据类型。正因为如此,即便只是单纯地获取值,也要求进行复杂的描述。
作为DOM,以每个要素为对象,以基于XML数据类型的工具形式保存这些对象。要想访问某个要素的值,首先要依据工具调出目的对象,然后再取得要素值。另外,所取出的要素值将重新保存在专用类(Private Class)对象中。Content可以消除这种负担。
Cω好像并没有与C#合并的计划。不过,今后如果C#能够很好地汲取其优点,定将成为功能强大的语言。
(Matthew转)