小编Jan*_*Jan的帖子

关于Juval Lowy的IDesign C#编码标准的问题

我们正在尝试使用IDesign C#编码标准.不幸的是,我没有发现任何全面的文件来解释它给出的所有规则,而且他的书并不总是有用.

以下是我的常见问题(来自第2章编码实践):

  1. 第26项:避免为枚举提供显式值,除非它们是2的整数幂
  2. No. 34:始终使用for循环显式初始化引用类型数组
  3. 第50号:避免将事件作为接口成员
  4. No. 52:在类层次结构上公开接口
  5. No. 73:不要在接口中定义特定于方法的约束
  6. No. 74:不要在代表中定义约束

以下是我对这些的看法:

  1. 我认为在稍后添加新的枚举成员时,提供显式值会特别有用.如果在其他已存在的成员之间添加这些成员,我将提供显式值以确保现有成员的整数表示不会更改.
  2. 不知道我为什么要这样做.我会说这完全取决于我的程序的逻辑.
  3. 我看到有另外一种方法可以提供"Sink接口"(简单地提供所有"OnXxxHappened"方法),但是优先选择另一种方法的原因是什么?
  4. 不确定他在这里的含义:这是否意味着"在非密封类中明确实现接口时,请考虑在可以覆盖的受保护虚拟方法中提供实现"?(请参阅".NET组件第2版","接口和类层次结构"一章末尾).
  5. 我想这是关于在使用泛型时提供"where"子句,但是为什么在接口上这很糟糕呢?
  6. 我想这是关于在使用泛型时提供"where"子句,但为什么这对委托不好呢?

.net c# standards coding-style

12
推荐指数
1
解决办法
2216
查看次数

ClearCase希望在交付到备用目标后合并未更改的文件

将Rational ClearCase v.7.0.1.1与UCM一起使用时,我在使用ClearCase的"从流交换到备用目标"功能时遇到了问题.

想象一下,我们有一个项目集成流和两个从它派生的开发人员流A和B. 现在我在流A中更改了一个文件.我希望delevoper拥有流B能够使用我的工作而不必将文件传递到集成流,所以我从流A传递到备用目标流B.

到现在为止还挺好.我继续对文件进行另一次更改,但是流B开发人员不需要这个更改,所以我不会将它交给他.

经过一段时间,我将我的工作交付给主要的集成流.这很好,虽然我想知道为什么ClearCase将合并标记为正常的"合并"而不是"合并(平凡)" - 除了我之外没有人对文件进行了更改.

交付后,将在主集成流上创建新基线.

当开发人员B试图改变他的流时,会出现真正的问题.由于开发人员B从未对文件进行任何更改,因此我希望合并是一个简单的合并,无需进行任何交互.但是,开发人员B被迫以图形方式解决该文件上的合并冲突,让他在集成流上的基本版本,我提供给他的版本和我提供给集成流的版本之间进行选择.

在解决合并并完成rebase后,开发人员B想要执行到主集成流的交付时,会出现混淆.除了我最初交付给他的活动之外,他还被要求提供一项名为rebase _...的活动,我绝不期望提供交付.

我在这里错过了什么吗?我们是否错误地使用ClearCase或者这是一个已知的限制/错误?有没有人体验过这个功能?

在此先感谢您的帮助!

一月

clearcase clearcase-ucm

7
推荐指数
1
解决办法
6813
查看次数

ClearCase:查找只有一个特定标签的文件,而不是更多

我想在ClearCase中找到标有特定标签但没有设置任何其他标签的文件.

例如,如果我有像这样标记的文件:

file1 LBL_A, LBL_B
file2 LBL_A
Run Code Online (Sandbox Code Playgroud)

我想有一个查询,只给我file2而不是file1.

有没有办法用cleartool找到这个?如果单个查询无法做到这一点,我也很高兴有任何想法如何在几个步骤中执行此操作(我将从perl脚本调用cleartool,因此保存文件列表很容易暂时并在它们上运行更多命令).

非常感谢提前!

一月

clearcase labels cleartool

6
推荐指数
2
解决办法
2万
查看次数