ブックマーク / www.pandanoir.info (2)

  • うまく抽象化できてないコードは読みづらい - Panda Noir

    短いコードのほうが読みやすい傾向はあります。しかしながら、 短くて誤読しやすいコードよりは、長いけど誤読しないコードのほうが可読性が高いです。 今回はその話をします。 「短ければ可読性が高い」というのは勘違い 短くても可読性が低いコードはあります。例えば以下の2つの main 関数を比べてみます。 短いけど抽象化に失敗しているコード: const main = async () => { const _article = await fetch('/article'); const article = transformItem(_article); }; 長いけど分かりやすいコード: const main = async () => { const _article = await fetch('/article'); const article = { ..._article, fet

    うまく抽象化できてないコードは読みづらい - Panda Noir
  • \sが完全には空白文字を網羅できていなかった件 - Panda Noir

    「空白文字」が世の中に何種類あるかご存じですか?半角スペース、全角スペース、タブ、改行くらいは分かると思いますが、実は世の中にはもっと空白文字があります。なんと空白文字だけで30文字以上もあります。これだけある空白文字を、/\s/は果たして網羅できているのでしょうか?今回はこれについて調べてみました。 '\s'にマッチするスペース文字の一覧 仕様書を見てみる '\s'と等価な正規表現とは? 終わりに '\s'にマッチするスペース文字の一覧 2. スペースは" "だけじゃない的な話 ここのページに書いてあるスペース文字について、\sにマッチするか検証してみま した。 結論から書くと、\sは全てを網羅していませんでした。 青くなっている方が\sにマッチした文字、赤くなっている方がマッチしなかった文 字です。 名称文字 FILE SEPARATOR[�] GROUP SEPARATOR[�] R

    \sが完全には空白文字を網羅できていなかった件 - Panda Noir
  • 1