コアコードのクリーンアップ(4章注記)
なるべくコメントを書かない
注記悪いコードを補うことはできません。
// 직원에게 복지 혜택을 받을 자격이 있는지 검사한다.
if ((employee.flags & HOURLY_FLAG) && employee.age > 65))
// ==> 복지 혜택에 연금 혜택 기준이 추가된다면?
// 의미있는 이름을 지으면 해결된다.
if (employee.isEligibleFourFullBenefits())
コードにコメントを追加する一般的な理由は、コードの品質が悪いためです.
自分がもたらした混乱を注釈で説明するのではなく、時間をかけて改善しなければならない.
コードで意図を表現することもできます!
議長は見送られた。
コードの変化に追随できず,注釈は棚上げされた.
コードはコンパイルされて呼び出されますが、コメントはコメントにすぎません.そのため、元の場所に置かれ、最終的には意味のないテキストになります.
よい議長 // kk:mm:ss EEE, MMM dd, yyyy 형식
Pattern timeFormat =
Pattern.compile("\\d*:\\d:\\d* \\w*, \\w* \\d* \\d*");
実装に関する情報を提供します.// 스레드를 많이 생성하여 시스템에 영향을 끼쳐 테스트를 만들도록 함
for (int i = 0; i < 15000; i++) {
SomeThread someThread = ThreadBuilder.builder().build();
}
// 유저로부터 입력받을 값을 저장할 때 trim으로 공백제거 필요
String userName = userNameInput.trim();
意図と重要性を説明する.//TODO
//FIXME
// 직원에게 복지 혜택을 받을 자격이 있는지 검사한다.
if ((employee.flags & HOURLY_FLAG) && employee.age > 65))
// ==> 복지 혜택에 연금 혜택 기준이 추가된다면?
// 의미있는 이름을 지으면 해결된다.
if (employee.isEligibleFourFullBenefits())
// kk:mm:ss EEE, MMM dd, yyyy 형식
Pattern timeFormat =
Pattern.compile("\\d*:\\d:\\d* \\w*, \\w* \\d* \\d*");
実装に関する情報を提供します.// 스레드를 많이 생성하여 시스템에 영향을 끼쳐 테스트를 만들도록 함
for (int i = 0; i < 15000; i++) {
SomeThread someThread = ThreadBuilder.builder().build();
}
// 유저로부터 입력받을 값을 저장할 때 trim으로 공백제거 필요
String userName = userNameInput.trim();
意図と重要性を説明する.//TODO
//FIXME
TODO
:次にやるべきこと.今は解決していませんが、後でやるべきことを事前にメモしておくとき.FIXME
:問題がありますが、すぐに修正する必要はありません.できるだけ早く修正したほうがいい.コメントがコメントより大きい
java.lang.annotation
コメント=コードのメタデータ
@NotThreadSafe:存在しないことを示します.
JavaDoc
JavaコードでHTML形式でAPIドキュメントを生成するツール
// This is a single line comment
/*
* This is a regular multi-line comment
*/
/**
* This is a Javadoc
*/
Class level
/**
* Hero is the main entity we'll be using to ...
*
* Please see the {@link com.baeldung.javadoc.Person} class for true identity
* @author Captain America
*/
public class SuperHero extends Person {
// fileds and methods
}
Field level
/**
* The public name of a hero that is common knowledge
*/
private String heroName;
Method level
/**
* <p>This is a simple description of the method ...
* <a href="http://www.supermanisthegreatest.com">Superman!</a>
* </p>
* @param incomingDamage the amount of incoming damage
* @return the amount of health hero has after attack
* @see <a href="Http://www.link_to_jira/HERO-402">HERO-402</a>
* @since 1.0
*/
public int successfullyAttacked(int incomingDamage) {
// do something
return 0;
}
Javadocドキュメント
リファレンス
同報告書は、ゼロベースラインクリーニングコード毎月1冊の授業後のまとめである.
Reference
この問題について(コアコードのクリーンアップ(4章注記)), 我々は、より多くの情報をここで見つけました
https://velog.io/@coconenne/클린코드-핵심-정리-4장-주석
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
// This is a single line comment
/*
* This is a regular multi-line comment
*/
/**
* This is a Javadoc
*/
/**
* Hero is the main entity we'll be using to ...
*
* Please see the {@link com.baeldung.javadoc.Person} class for true identity
* @author Captain America
*/
public class SuperHero extends Person {
// fileds and methods
}
/**
* The public name of a hero that is common knowledge
*/
private String heroName;
/**
* <p>This is a simple description of the method ...
* <a href="http://www.supermanisthegreatest.com">Superman!</a>
* </p>
* @param incomingDamage the amount of incoming damage
* @return the amount of health hero has after attack
* @see <a href="Http://www.link_to_jira/HERO-402">HERO-402</a>
* @since 1.0
*/
public int successfullyAttacked(int incomingDamage) {
// do something
return 0;
}
同報告書は、ゼロベースラインクリーニングコード毎月1冊の授業後のまとめである.
Reference
この問題について(コアコードのクリーンアップ(4章注記)), 我々は、より多くの情報をここで見つけました https://velog.io/@coconenne/클린코드-핵심-정리-4장-주석テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol