Roslyn模型是否以C#/ VB.NET为中心,它现在和将来都会排除XAML分析?

bra*_*ing 15 c# vb.net xaml visual-studio roslyn

我刚刚阅读了JetBrains(Resharper)的博客文章,该文章表明Roslyn永远不会进行XAML分析:

另一个核心区别是Roslyn涵盖了两种语言,C#和VB.NET,而ReSharper架构是多语言的

(引自resharper博客)

对于没有经验的Resharper,可以对XAML代码进行非常好的静态分析,允许代码完成和C#一起重构.

我好奇.Roslyn架构是否足以扩展到除C#和VB.Net之外的其他语言,例如XAML,还是非常具体.

为了避免暗示这是基于意见,我在源头寻找证据.显然,任何代码都可以随着时间的推移进行重构/重新设计以适应其他目的,但我只对源中的当前证据或对Roslyn develepors引用的引用感兴趣,表明有意将Roslyn作为分析引擎扩展到其他XAML等语言.

svi*_*ick -2

我对新克隆的 Roslyn 源代码副本(特别是目录Compilers)进行了简单分析,以了解有多少代码在这些语言之间共享以及有多少代码是特定于语言的。

结果:

  • 总共有 3072 个代码文件(.cs 和 .vb 文件扩展名),总计 78 MB
  • 其中,该CSharp目录包含 1060 个代码文件,价值 30 MB
  • VisualBasic目录包含 1165 个代码文件,总计 41 MB
  • 剩下 847 个文件和 7 MB 的通用代码

因此,正如您所看到的,这两个编译器仅共享其代码的相对较小部分。如果你想为一种新语言创建一个编译器,基于 Roslyn 不会有太大帮助。

  • -1:您的结果不以任何有意义的方式支持您的结论。 (8认同)