如何将 DRY 原则应用于评论?
How can I apply the DRY principle to commenting?
我有多个函数使用我需要评论的同一行复杂代码。
function thisFunction() {
[Some Code..]
// Comment for clarification
*complex code line*
}
function thatFunction() {
[Some Code..]
// Comment for clarification
*complex code line*
}
function anotherFunction() {
[Some Code..]
// Comment for clarification
*complex code line*
}
我看到的主要问题是必须用完全相同的评论.
多次解释不同的功能相同的复杂代码
这违背了DRY原则。我的问题是,"What would be the best practice to resolve this problem and still let readers understand my code?"
我的总体想法是只评论该复杂行的第一个用法。但是,我不知道这对正在阅读的其他人来说是否 100% 直观。
编辑:为了澄清起见,我在多个函数中使用了一行代码。我不知道我是否应该保留重复的注释,只注释复杂行的第一次使用,或者创建一个每个当前函数都可以使用的辅助函数,即使该辅助函数只包含注释和一个复杂代码线。想法?
将复杂的代码封装成自己的函数,并提供一次注释:
function thisFunction() {
[Some Code..]
complexCodeFunction();
}
function thatFunction() {
[Some Code..]
complexCodeFunction();
}
function anotherFunction() {
[Some Code..]
complexCodeFunction();
}
//comment for clarification
function complexCodeFunction(){
*complex code*
}
如果复杂代码的所有行都完全相同,应该可以将它们提取到一个单独的函数中:
function thisFunction() {
[Some Code..]
complexOperation();
}
function thatFunction() {
[Some Code..]
// Comment for clarification
complexOperation();
}
function anotherFunction() {
[Some Code..]
complexOperation();
}
function complexOperation() {
//comment for clarification
*complex code line*
}
如果复杂的代码行不容易提取或代码行在某些关键方面有所不同,我认为重复注释不是问题。 DRY原则主要适用于代码本身,注释是对开发者的澄清,让代码更易懂。如果注释有助于 reader 更好地理解代码,则没有理由避免这种重复。
我有多个函数使用我需要评论的同一行复杂代码。
function thisFunction() {
[Some Code..]
// Comment for clarification
*complex code line*
}
function thatFunction() {
[Some Code..]
// Comment for clarification
*complex code line*
}
function anotherFunction() {
[Some Code..]
// Comment for clarification
*complex code line*
}
我看到的主要问题是必须用完全相同的评论.
多次解释不同的功能相同的复杂代码这违背了DRY原则。我的问题是,"What would be the best practice to resolve this problem and still let readers understand my code?"
我的总体想法是只评论该复杂行的第一个用法。但是,我不知道这对正在阅读的其他人来说是否 100% 直观。
编辑:为了澄清起见,我在多个函数中使用了一行代码。我不知道我是否应该保留重复的注释,只注释复杂行的第一次使用,或者创建一个每个当前函数都可以使用的辅助函数,即使该辅助函数只包含注释和一个复杂代码线。想法?
将复杂的代码封装成自己的函数,并提供一次注释:
function thisFunction() {
[Some Code..]
complexCodeFunction();
}
function thatFunction() {
[Some Code..]
complexCodeFunction();
}
function anotherFunction() {
[Some Code..]
complexCodeFunction();
}
//comment for clarification
function complexCodeFunction(){
*complex code*
}
如果复杂代码的所有行都完全相同,应该可以将它们提取到一个单独的函数中:
function thisFunction() {
[Some Code..]
complexOperation();
}
function thatFunction() {
[Some Code..]
// Comment for clarification
complexOperation();
}
function anotherFunction() {
[Some Code..]
complexOperation();
}
function complexOperation() {
//comment for clarification
*complex code line*
}
如果复杂的代码行不容易提取或代码行在某些关键方面有所不同,我认为重复注释不是问题。 DRY原则主要适用于代码本身,注释是对开发者的澄清,让代码更易懂。如果注释有助于 reader 更好地理解代码,则没有理由避免这种重复。