仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 816|回复: 8
打印 上一主题 下一主题

[学习教程] ASP.NET网页设计StyleCop:微软C#源代码剖析器仓酷云

[复制链接]
只想知道 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:28:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
以前很热炒跨平台,主要是由于硅谷挑战微软霸主地位的热情,但是冷静下来后,跨平台往往不是那么一回事。假设你有个软件,所谓的跨平台,你只需要为第二个平台上重新编译一次就行了,这样很难么?强迫编码作风是一个临时被强烈热闹争辩的话题。人们不但为团队应当遵守何种编码作风而争辩不休,同时还要争辩事实是不是应当建立一个尺度的编码作风。如今,微软公布了StyleCop,这是他们在外部利用的一个编码作风强迫工具,微软的这一举动无疑将起到火上加油的感化。StyleCop,也即所谓的微软C#源代码剖析器(MicrosoftSourceAnalysisforC#),用处和FxCop类似,只不外感化对象是源代码。别的,它和FxCop一样是源于微软的外部工具,在开展到必定水平以后,微软以为对其别人也有用,因而被公然公布。不外,StyleCop的自界说水平不如FxCop那末高。
SourceAnalysis的终极方针是同意你天生文雅、分歧的代码,让你的团队成员和其他检察你代码的人简单浏览。为到达这一目标,SourceAnalysis不同意它的划定规矩被过量的设置。SourceAnalysis利用一种一致的体例来处置代码作风、结构和可读性划定规矩。你极可能其实不认同一切的划定规矩,乃至会发明某些划定规矩并不是如你所愿。但是,在微软外部利用这个工具的年夜部分团队在经由长久的调剂期后,都可以怅然承受SourceAnalysis强迫请求的这些划定规矩,乃至入手下手以为假如不利用这类作风来编写代码,就很难浏览。
JasonAllor宣称由这个工具所强迫请求的约莫200条划定规矩与VisualStudio的默许设置是兼容的。遗憾的是,他健忘提到VisualStudio具有6个完整分歧的默许设置汇合,个中多半与这个工具相互冲突的。
这个工具触及的方面包含:



  • 撑持文件内容
  • 调试文本
  • 编排元素头和文件头中的文档格局
  • 元素、语句、表达式和查询子句的结构
  • 行空格
  • 元素、字段和变量的定名
  • 年夜括号、圆括号、方括号等的地位
  • 在办法声明或办法挪用中办法参数的地位
  • 关头字和操纵符四周的空格
  • 在类中元素的尺度按次
  • 会见润色符的利用
  • 内置范例的利用
在空缺的把持台使用程序上运转这些划定规矩,会前往9个毛病,假如你翻开“KeepTabs”设置,则会呈现16个毛病。一些划定规矩稍显愚笨,比方请求“using”唆使符必需放在定名空间内,而不是放在文件顶部。

已有人在埋怨这个工具缺少校订的撑持。DustinNorman写道:
在将这个工具运转在一个较小的程序集上时,这个工具要我手动修正561个背规毛病,而它却不克不及在不影响代码语义的基本上主动为我修复毛病——这真的要让我溃散了!
陈旧的tabsvsspaces争辩【译者注:即代码的缩进是用Tabs来完成仍是用Spaces来完成】又被说起,并且我们还不克不及禁用这一划定规矩。NickBerardi写道:
真是开顽笑。Tabs竟然不被同意。相反,只能利用空格。这个主张糟透了,由于它会损坏语句块的结构,比方一个变量利用3个空格,而其他变量则利用了4个。不管怎样,应当同意禁用相似tab划定规矩如许毫偶然义的划定规矩。如果可以禁用这些划定规矩,这个工具就更好了。我晓得你会说他们已够好了。可是我完整分歧意利用空格来取代tab。这是毫无逻辑可言的,也许只要在Vi编纂器第一次呈现从而激发了开辟职员之间的“圣战”可堪对比吧。我喜好用Tab的体例编写我的代码,但它老是告诫我,我的每行代码都有tab在个中。
同时,DanielStolt也问到了关于VB的情形:
为.NET开辟职员供应一些分外工具老是受接待的——但为何只要C#的?代码格局的强迫划定规矩关于VB开辟职员来讲也长短常必要的。明显,VB代码编纂器在对关头字和操纵符举行缩进和空格的处置中,已具有主动格局化的一些开端撑持,但还不敷靠近StyleCop所撑持的效果。
特地说来,我完整批准NickBerardi关于tabsvsspaces的概念:利用tabs有甚么成绩?岂非按4-5次偏向按钮比间接指向某个地位更有某种上风?仍是在源代码文件中保留4-5个空缺字符存在着某种优点?
在撑持主动校订方面的确存在一些成绩,今朝还没有给出办理这个成绩的工夫表呢。

检察英文原文:StyleCop–Microsoft"sStyleEnforcementToolforC#
来自:http://www.infoq.com/cn/news/2008/05/StyleCop我认为,可以通过更加简单的首次编译,而增加第二次编译的负担,来提高net网页编程的运行效率。只是将net网页编程源代码进行简单的等价转换,而不假设编译成某种虚拟机器的目标格式,而由本地编译器针对性的二次编译。
爱飞 该用户已被删除
沙发
发表于 2015-1-21 07:45:27 | 只看该作者
那么,ASP.Net有哪些改进呢?
再见西城 该用户已被删除
板凳
发表于 2015-1-24 11:23:33 | 只看该作者
它可通过内置的组件实现更强大的功能,如使用A-DO可以轻松地访问数据库。
若相依 该用户已被删除
地板
发表于 2015-2-1 07:03:52 来自手机 | 只看该作者
众所周知,Windows以易用而出名,也因此占据不少的服务器市场。
活着的死人 该用户已被删除
5#
发表于 2015-2-7 01:29:48 | 只看该作者
在一个项目中谁敢保证每天几千万甚至几亿条的数据不丢失?谁敢保证应用的高可靠性?有可以借签的项目吗?
小魔女 该用户已被删除
6#
发表于 2015-2-27 12:07:29 | 只看该作者
我的意思是.net好用,从功能上来说比JAVA强还是很明显的。
变相怪杰 该用户已被删除
7#
发表于 2015-3-7 03:31:03 | 只看该作者
那么,ASP.Net有哪些改进呢?
兰色精灵 该用户已被删除
8#
发表于 2015-3-14 06:48:32 | 只看该作者
可以通过在现有ASP应用程序中逐渐添加ASP.NET功能,随时增强ASP应用程序的功能。ASP.NET是一个已编译的、基于.NET的环境,可以用任何与.NET兼容的语言(包括VisualBasic.NET、C#和JScript.NET.)创作应用程序。另外,任何ASP.NET应用程序都可以使用整个.NETFramework。开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。
飘飘悠悠 该用户已被删除
9#
发表于 2015-3-21 00:43:00 | 只看该作者
那么,ASP.Net有哪些改进呢?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2025-1-7 11:25

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表