コメントにはコードの場所がありますか
6980 ワード
ホットトピック🔥
これはどんな開発チームにおいても常に大きな話題です.私は彼らのキャリアのいくつかの時点で開発者がコメントを追加するかどうかの周りの激しい議論があったことを保証することができます.
そして、私の考えは、ここにあります..…を待つ.
I believe code comments have a time and place! Comments are great, they do no harm and should be used whenever the developer feels they're suitable to explain their code.
他の共通のイデオロギー
まったくコメントはありません。
このイデオロギーは、完全に記述的な名前で、クラス、メソッド、変数の命名に焦点を当てます.これは、それが何をするかについて説明するコメントの必要がないことを意味します.
この例を挙げましょう
var x = GetDate(tomorrowsDate);
Console.WriteLine(x);
public string GetDate(DateTime date){
return date.DayOfWeek;
}
これは、メソッドがあまりにも名前が曖昧であり、どのような日付が返されるのかについては曖昧である.コメントを使用しないように、“no - comment - devs”と書いてください.
var dayOfWeek = GetDayOfWeekFromDate(tomorrowsDate);
Console.WriteLine(dayOfWeek);
public string GetDayOfWeekFromDate(DateTime date){
return date.DayOfWeek;
}
この例は簡単ですが、ポイントはよくわかります.私たちが正確に何が返されるか、そして、方法が何をしようとしているかを知っているように、どんなコメントも加える必要はありません.コメントすべて
これは、すべての例では、すべてがコメントされるべきであると信じています.
//get day of the week from tomorrows date
var day = getDayOfTheWeek(tomorrowsDate);
Console.WriteLine(day);
// method returns the day of the week as string from provided datetime object
public string GetDayOfTheWeek(DateTime date){
return date.DayOfWeek;
}
私はいくつかのDEVSもそのようなクラスのプロパティをコメントを見てきた.public class User {
//Date user was created
public DateTime CreateDate {get;set;}
//Username of User
public string Username {get;set;}
}
あなたは、この陽気な愚かを見つけるかもしれません、しかし、私は前に解決でこれを見ました.私にとって、これはオーバーキルです.変数と呼ばれるものとメソッドを見ることができます.したがって、簡単にすべての詳細なコメントを必要とせずに実行しているコードを推測することができます.
私の意見-場所と時間がある
過多なコメントをしないでください、彼らのために時間と場所があります.コードが自己説明的でないとき、私はコメントを利用します.私が過去に取り組んだいくつかのシステムは、非常に特定の状況のためにそこでそこでいくつかの「奇妙な」コードを畳み込むことができます.
多分、あなたが何かをためした時間がありました、しかし、それはシステム限界または何かのために働きません.あなたはあなたの将来の自己または他の開発者にこれを説明する簡単なコメントを残すことができます.
非常に基本的な例は次のようになります.
public void SaveUser(User user){
user.DateCreated = DateTime.Now();
user.Role = Roles.Sysadmin;
//need to save user and role before saving user due to system constraints.
Db.UserRoles.Add(user);
Db.SaveChanges();
Db.Users.Add(user);
Db.SaveChanges();
}
はい、そこのscepticsは、これが貧しいコード設計であると主張するでしょう、しかし、私たちは、時々、我々がすべてがレガシーシステムの巨大な部分を書き直すことなく、教科書でありえるコード状況に遭遇しないことを知っています.このように、我々はまだ新しいコードを書くことができます、そして、なぜ、我々が彼が何かをしなければならない理由の説明を残してください、他の人には奇妙なようです.ここでの議論は、次の開発者が長い間来ていて、なぜ彼らがなぜこれをしているのかを考えているのではないかということです.なぜ彼らはデータベースを二回呼び出しているのでしょうか.
私にとってはバランスについてです.
要約する
バランスよく書かれた、よく名前付きコード説明説明コメントをバランスします.よく書かれた名前、そして、小さいコメントで「nice」コードを書くならば、私は他のDEVSがそれをあなたに感謝すると保証することができます、そして、コードはより扱いやすくなって、デバッグに速くなります.
Reference
この問題について(コメントにはコードの場所がありますか), 我々は、より多くの情報をここで見つけました https://dev.to/gweaths/comments-do-have-a-place-in-code-4igdテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol