210309 B bookの例説明


今日は3.6<例題説明>を行います.
この章は簡単です.
例をコメントとして、相手がコードを理解しやすいようにします.
サンプルコードを見てみましょう.
class Supply {
/**
 * 아래 코드는 어디서든 재고를 식별한다.
 *
 * s로 시작해 숫자 다섯자리 재고 번호가 나오고
 * 뒤이어 앞의 재고 번호와 구분하기 위한 역 슬래시가 나오고
 * ...
 * 이어서 마침표와 실제 재고명이 소문자로 나온다.
 */

static final Pattern CODE = Pattern.compile("^S\\d{5}\\\\(US...)\\/[a-z]+$");
}
上のコードには冗長な正規表現があります.
コードという名前はどこに使うのか全く分かりませんが、長いコメントがついています.
一見いい方法のようだ.少なくともコードと一緒に注釈があります...
しかし、熟練した開発者だけがすぐに理解することができ、初級開発者の注釈は役に立たない.
例があればどうなりますか?
class Supply {
/**
 * 아래 표현식은 어디서든 재고 코드를 식별한다.
 *
 * 형식: "S<inventory-number>\<COUNTRY-CODE>.<name>"
 * 유효한 예: "S12345\US.pasta", "S08342\CN.wrench",
 * ...
 * 유효하지 않은 예:
 * "R12345\RU.fuel" (재고가 아닌 자원)
 * ....
 */

static final Pattern SUPPLY_CODE = Pattern.compile("^S\\d{5}\\\\(US...)\\/[a-z]+$");
}
注釈は省略されているが、以前よりも長く、構造化され、詳細な情報が提供されている.
この正確な例は、幻の浮雲よりも良い注釈です.
さらに、2つの有効な例と2つの無効な例を与えることで、理解速度がより速くなる.
有効な例では、通常、これらの複雑な式を一度に理解できます.
テストの場合は、コメントとしてセルテストを使用できます.
最後にもっと意味のある変数も追加された.
今日のコメント:この場合、コード行が多くなっても、正確な情報と理解を提供することができます.