10年前、とあるプロジェクトで、 入社3年目元気ハツラツ A君 「C言語の三項演算子がどうにも読みづらくて苦手なのでコーディングルールで禁止しましょう!!」 中堅 Bさん 「いやいや、数少ないショートコードのチャンスをどーして奪うんだ! ただでさえダラダラと長いんだぞ!」 いつも直球? Eさん 「おまえは今、三項演算子大好きなオレに Excelを使うな、Wordを使えって言ったようなもんだぞ(謎」 嫌々チームリーダーな Cさん 「ぼくは反対だなー、どうしてもっていうならルールに従うけど、ぼくは反対だなー」 uupaaの飼育員 「突然どうしたんですか?」 窓際 Dさん 「… (タバコ吸いにいく)」
という、和気あいあいなエンジニアトークがあったのを思い出しました。
話をよく聞くとA君が言いたかったのは、多段化された三項演算子がイヤだと
// これはいいけど a = b ? c : d;
// 括弧の対応もよくわからないような、これ(↓)は無理 a = b ? (c ? d : e) : d ? f : g ? h : i;
いう話で、それについては極力なくそうと言う感じにルール化されました。とさ
// 括弧入れても、やっぱりよく分かりません。 a = b ? (c ? d : e) : (d ? f : (g ? h : i));
おしまい。