使用C 7元组语言特性优化数据驱动软件的研究.docVIP

使用C 7元组语言特性优化数据驱动软件的研究.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
使用C 7元组语言特性优化数据驱动软件的研究

使用C 7元组语言特性优化数据驱动软件的研究   摘 要:C#作为一种现代编程语言,广泛应用于通用业务系统开发。由于早期的C#语法限制,在数据密集型领域使用MatLab、Python、IDL(Interactive Data Language)等动态脚本语言更为合适。C# 7新增了简单灵活的轻量级元组类型。分析了元组的几个典型应用场景,并给出了具体示例,包括多变量初始化、多变量赋值、多变量互换、封装函数返回的多变量、作为中间层的数据容器、用于LINQ select表达式获得语义信息,以及利用析构(deconstructing)实现对象到元组的自动转换等。实践表明,元组适合数据驱动领域开发,提高了生产效率,达到了动态语言效果。对C# 7 tuple存在的缺陷,如deconstructing的非对称性、赋值的非传递性和可变性(mutable)等提出了改进意见,为利用开源编译器Roslyn优化C#特性提供了设计思路。   关键词:元组;动态脚本;语言设计;编译器Roslyn   DOI:10.11907/rjdk.171599   中图分类号:TP301 文献标识码:A 文章编号:1672-7800(2017)009-0007-03   Abstract:As a modern developing language, C# was widely used in general-purpose software development. But due to C# syntax limitation in the past, data-intensive application domain were dominated by dynamic script languages such as MatLab, Python, IDL(Interactive Data Language). C# 7 introduces tuple feature which is a simple and flexible data type.Typical application scenarios were analyzed and example details were presented, including initialization, assignment and swap of multiple variables, packing return values of a method, providing semantic information in LINQ select and transform object to tuple members automatically. The study showed that C# tuple is suitable for data-driven software development in order to improve developer productivity and achieves effects of dynamic languages. At last, the C# 7 defects in design, including asymmetry of deconstructing, non-transitivity of assignment and mutable were analyzed, and corresponding updating suggestion were presented, providing ideal for optimize C# 7 features in the future using open source compiler Roslyn.   Key Words:Tuple; Dynamic Script; Language Design; Compiler Roslyn   0 引言   C#作?橐恢滞ㄓ玫拿嫦蚨韵蟊喑逃镅裕?提供了丰富的类型系统,使得编译器可进行强类型语法检查,能较好保证代码的安全性,在用户界面、数据库、网络、多媒体和地理信息系统等通用软件开发领域有着广泛应用。但由于语法限制,过去在数据驱动和交互脚本领域,仅仅是提取数据,开发者需要编写大量额外的类或结构体,掩盖了开发者的设计意图,降低了开发效率;同时C#的类实例(class instance)是引用类型(reference),会带来较大性能损失。   C# 7引入了tuple(元组)类型,由编译器和IDE(Integrated Development Environment)提供上下文智能感知和强类型检查,在Visual St

文档评论(0)

130****9768 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档