【发布时间】:2010-03-26 09:39:44
【问题描述】:
我们的软件开发人员团队由一群经验丰富的程序员组成,他们具有各种编程风格和偏好。我们没有针对所有事情的标准,只有防止彻底混乱的基本必需品。
最近,我遇到了一位同事所做的一些重构。我的代码看起来有点像这样:
public Person CreateNewPerson(string firstName, string lastName) {
var person = new Person() {
FirstName = firstName,
LastName = lastName
};
return person;
}
重构为:
public Person CreateNewPerson (string firstName, string lastName) {
Person person = new Person ();
person.FirstName = firstName;
person.LastName = lastName;
return person;
}
仅仅因为我的同事需要在我写的一个类中更新一些其他方法,他还“重构”了上面的方法。郑重声明,他是那些鄙视 syntactic sugar 并使用与我们其他人不同的括号放置/标识方案的开发人员之一。
我的问题是:(C#)程序员重构其他人的源代码(语义和句法)的礼仪是什么?
【问题讨论】:
-
你应该把它变成一个社区维基。
-
至于礼仪,最好的办法可能是与他对质,让他知道你不喜欢他重构你的代码。您还可以更微妙地播放它并还原您的代码并更改他的代码以匹配您的风格。虽然一开始很有趣,但最终可能什么也得不到。
-
我确实将它恢复到我的版本,并将其签入到 SVN 中,并附上评论“改进的代码一致性”。之后没有进行任何更新。当我把它告诉他时,他或多或少地承认这并不是真的必要。所以基本上,我们同意除非需要,否则不碰对方的代码。
-
“同意除非需要,否则不碰对方的代码”——这是一个错误。你的团队需要解决这个问题——这样它才能真正作为一个团队工作。建立每个人都可以接受、每个人都可以遵循的标准——然后每个人都将重构(实际上是重新格式化)到同一个目标。
-
我会是那些将第二个版本重构为第一个版本的人之一......
标签: c# refactoring