https://refactoring.com/catalog/extractFunction.html
以下のようなリファクタリングをExtract Functionと言う。
function printOwing(invoice) {
printBanner();
let outstanding = calculateOutstanding();
//print details
console.log(`name: ${invoice.customer}`);
console.log(`amount: ${outstanding}`);
}
↓
function printOwing(invoice) {
printBanner();
let outstanding = calculateOutstanding();
printDetails(outstanding);
function printDetails(outstanding) {
console.log(`name: ${invoice.customer}`);
console.log(`amount: ${outstanding}`);
}
}上の例はエクストリームなリファクタリング適用で、実際はここまでやらないと思う。
ここで出てくる「//print details」コメントは、セクションタイトル的な意味で利用されている。
この手のコメントは関数ヘッダコメント等と同じく、書くべきコメントの一種だと思う。
(逆に書かないべきコメントは「var sr = StreamReader(filename); // ファイルを開く」みたいなコードを日本語に翻訳しただけのようなコメント)