こう 聞かれます
- 「読みやすい
コードの ために、 気を つけている ことは 何ですか」 - 「よい
変数名とは、 どんな 名前ですか」 - 「コメントには
何を 書きますか」
面接官が 見ている点
- 「きれいに書く」で
止まらず、 具体的な 工夫を 挙げられるか - 読むのは
自分だけでなく、 チームの 人や 半年後の 自分だ、 と分かっているか - 自分の
コードで、 実際に 直した 例を話せるか
短い答え
- 変数や
関数には、 中身や 役目が 名前だけで 分かる 言葉を 付けます。 - 関数は 1 つの
仕事に 絞り、 条件に 合わない ときは 先に return して、 入れ子を 浅くします。 - コメントには、
コードを 読めば 分かる ことではなく、 なぜそう 書いたかという 理由を 書きます。
少し 詳しい答え
先に 返して、 入れ子を浅くする
買えない
JavaScript
function canBuy(user, item) {
if (!user) {
return "ログインが要ります";
}
if (item.stock === 0) {
return "在庫がありません";
}
return "買えます";
}
const me = { name: "Aya" };
const ok = { stock: 3 };
const none = { stock: 0 };
console.log(canBuy(null, ok));
console.log(canBuy(me, none));
console.log(canBuy(me, ok));ログインが要ります
在庫がありません
買えます名前で 中身を伝える
d や data より、trialDays や cartItems のcanBuy や isValid のように、
コメントには 理由を書く
// 1 を足す のように、
作った
よく ある間違い
- 「短く
書く ほど 読みやすい」と言う 1 行に 詰め込んだ 書き方や、 1 文字の 名前は、 かえって 読みにくくなります - コードの
動きを そのまま コメントに書く コードと 同じ ことを 書くと、 コードを 直した ときに ずれて嘘に なります。 理由を書きます - 自分の
好みだけで 書き方を決める チームの 決めや、 自動で 形を 整える 道具に 合わせると、 読む人が そろった 形で読めます
深掘りの問い
- 「読みにくいコードを
見つけたら、 どうしますか」 動きを 確かめる テストを 用意してから、 名前の 付け直しや 関数の 切り出しを 少しずつ 行う、と答えます - 「書き方を
そろえる ために、 何か 道具を 使っていますか」形を 自動で 整える 道具や、 書き方の 決めを 機械で 調べる 道具を 使い、 保存や push の たびに 回す、と答えます - 「読みやすさと
速さが、 ぶつかったら どうしますか」 まず 読みやすく 書き、 測って 遅い 所が 分かった ときだけ、 理由を コメントに 残して 速く する、と答えます