【AICon】AI 基础设施、LLM运维、大模型训练与推理,一场会议,全方位涵盖! >>> 了解详情
写点什么

用 Roslyn 项目分析代码

  • 2012-04-27
  • 本文字数:620 字

    阅读完需:约 2 分钟

微软这个月在 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 发布进行部署。

查看英文原文: Code Analysis with Project Roslyn

2012-04-27 11:091739
用户头像

发布了 479 篇内容, 共 152.6 次阅读, 收获喜欢 47 次。

关注

评论

发布
暂无评论
发现更多内容

HikariCP-技术专题-配置介绍和使用

洛神灬殇

APM-技术专题-监控系统选型

洛神灬殇

APM 监控

入职字节跳动那一天,我哭了(蘑菇街被裁,奋战7个月拿下offer)

Java架构追梦

Java 架构 字节跳动 面试

GitHub持续霸榜!2021年Java核心知识:面试突击版

Java架构之路

Java 程序员 架构 面试 编程语言

代码回现 | 如何实现交易反欺诈?

VoltDB

数据分析 金融科技 VoltDB

全国沿海港口首个区块链木材业务服务平台上线试运行,“区块链+港口”撬动数千万元“福利”

CECBC

港口

canvas小球绕斜椭圆轨迹运动

空城机

JavaScript 大前端 canvas 4月日更

理论 + 标准 + 工程 —— 阿里云视频云编码优化的思考与发现

阿里云视频云

阿里云 视频编码 视频算法 视频处理

从中国企业进入IEC最高决策机构,看科技领先的产业价值与用户价值

脑极体

一篇文章了解CI/CD管道全流程

禅道项目管理

DevOps 持续集成 持续交付

工业互联网的脖子被卡死了?

浪潮云

工业互联网

自学Java走进阿里,仅用了六个月,他是怎么做到的?

Java架构师迁哥

spring中让你眼前一亮的代码技巧

AI乔治

Java spring 架构 微服务

一个CURD三年的Java程序员刷完这份《阿里面试指南(恒山版)》,居然斩获了十七个offer

Java架构之路

Java 程序员 架构 面试 编程语言

当造车成为风潮,谁帮助“造车党”连接未来?

脑极体

阿里总结出Java九大核心专题,1159页内容,吃透后我上个月砍下5个大厂Offer!

Java架构追梦

Java 阿里巴巴 架构 面试 九大核心专题

面试官:聊一聊SpringBoot服务监控机制

AI乔治

Java spring 架构 微服务 springboot

小厂逆袭美团|5年经验|一二三面经,已拿offer|

Java架构追梦

Java 架构 面试 美团Offer

想来百万流量技术公众号发布文章吗? InfoQ 开放内容平台了!

InfoQ写作社区官方

热门活动

聪明人的训练(十四)

Changing Lin

4月日更

特权访问管理(PAM)即服务

龙归科技

云上接单不空跑 京东云助力“佬司机”为货运物流业降本增效

CECBC

京东云

剖析6个MySQL死锁案例的原因以及死锁预防策略

北游学Java

Java MySQL 数据库 死锁

阿里巴巴架构师王小瑞“墙裂”推荐:RocketMQ核心实战原理

Java架构师迁哥

iOS--面试题:多线程

ios 面试 多线程

硬核!阿里内部这份《Java面试核心知识手册》在Github上已获赞高达89.7K!

Java架构之路

Java 程序员 架构 面试 编程语言

卧槽,误删数据库了,会被开除吗?

AI乔治

Java 数据库 sql 架构 SQL语法

架构实战营 - 模块 2- 作业

carl

架构实战营

如果以这样的方式,你愿参与到碳普惠行动中吗?

CECBC

区块链

2021金三银四:狂刷398道Java最新MySQL笔记;成功收获9个Offer

比伯

Java MySQL 编程 架构 计算机

一份完美的阿里开源Java面试宝典,Github上star数已30K+

Java架构师迁哥

用Roslyn项目分析代码_.NET_Jeff Martin_InfoQ精选文章