zoukankan      html  css  js  c++  java
  • 用Roslyn项目分析代码

    微软这个月在Redmond召开了Lang.NEXT大会,会上有一个演讲,演示了Roslyn项目这个代码分析工具。Dustin Campbell的演讲“更深入了解Roslyn项目”对它做了介绍,并以一个示例项目代码的构建作为结束。

    Roslyn框架并没有打算用来作为可定制的编译器,它的目的是将C#和Visual Basic的使用尽可能最大化。这两个语言的编译器都已经全部重新编写,这样Roslyn的C#编译器用C#开发,Roslyn的VB编译器用VB开发。 Campbell发现:这让原来的编辑器中很多不合理的地方和bug都有机会修正。

    Roslyn的设计特性包括:

    • 不可变:对象不能改变,要想改变,只能在原来版本上创建新对象。
    • 完整:源代码重新表示,包括空格、注释、错误等等。
    • 弹性:用容错来处理错误。比如:失败的代码上几乎总是会做到完成语句,这样让分析器必须可以处理。
    • 高效:项目在构建快照上体现了效率,而且能够增量分析代码。

    当Roslyn环境打开后,存在两个活跃的工作空间实例。第一个是传统工作空间,存留现在加载的VS解决方案。另一个实例是交互窗口(REPL)。这种分离有助于语句完成,并让IntelliSense在开发环境中的代码提示更为正确。

    Campbell指出:Roslyn在10月份会以Beta版本提供,发布版本代码(1.0)不会与Visual Studio 11一同交付。实际上,它会作为未来VS的一部分发布。尽管Campbell没有明确说明:考虑到Beta版本支持VS2010,看来微软会将其独立于正式的VS发布进行部署。

  • 相关阅读:
    undefined与null的区别
    js 合并多个对象 Object.assign
    No 'Access-Control-Allow-Origin' Ajax跨域访问解决方案
    CSS3的REM设置字体大小
    延迟运行方法
    如何用 SQL Tuning Advisor (STA) 优化SQL语句
    Oracle数据库查找持有锁的SQL语句,而不是请求锁的SQL语句(原创)
    Oracle记录登录失败的触发器
    11g ASM新特性
    闪回事务(Flashback Transaction)
  • 原文地址:https://www.cnblogs.com/shihao/p/2475459.html
Copyright © 2011-2022 走看看