別冊とっしーぱんち

IT技術系、Ruby関連、プログラミングお役立ち

【プログラミング】フォント選びのコツ oと0の違いを見やすく

プログラミング用テキストエディタとセットで考えておきたいのがフォント選びです。基本的には自分が好きな見た目にするので良いのですが、プログラミングするときのフォントとして押さえておきたポイントを紹介します。





文字の見間違えが少ないこと

プログラムはほとんどの場合、英数字と記号のみで書いていくのですが、見た目に区別つきずらい文字がいくつかあります。たとえば

  • 数字の0(ゼロ)とアルファベットのo(おー)
  • アルファベット大文字のI(アイ)と小文字のl(エル)と数字の1(イチ)と|(バーティカルバー)

などです。このブログの表示上でもアイとエルなんかは、区別つきづらいかもしれないですね。ただ、ブログのような記事の場合は、読み手が人間なので、誤字があっても読み手の方で前後の文脈を推測して判断してくれるのですが、プログラミングの場合は、解釈するのはコンピュータなので、エルはエルとしか認識されずそれがエラーにつながってしまうこともあります。そういうケアレスミスを防止するためにも、これらの文字がはっきりと区別できるようなフォントを選ぶのがよいんじゃないかと思います。

バーティカルバーは普段馴染みの薄い記号なのですが、プログラミングではよく出てくる記号のひとつです。Rubyだとif文やeach文などで使います。 

等幅フォントであること

等幅フォントというのは1文字の幅がどの文字でも同じであるというフォントです。逆に文字の実際の大きさに沿って幅が決まるフォントをプロポーショナルフォントといいます。文字デザインとしての美しさはプロポーショナルフォントなのですが、プログラミングにおいて、文字幅が揃っているほうがコード全体の見通しがよくなるので、これまたミス防止の一環として等幅フォントにしておくのがおすすめです。

ちなみに、Macだと等幅フォントというカテゴリがあるのですが、Windowsの場合は、プロポーショナルフォントにはPという文字がついています。「MS Pゴシック」はプロポーショナルフォント、「MSゴシック」は等幅フォントといった感じです。

最後に見た目の違いを画像で紹介します。

実際どんな感じに違うのか。というのをMacに搭載されいてるフォントで見比べてみました。

Osakaのプロポーショナルフォント

Osakaの等幅フォント

おなじOsakaフォントにも関わらず、かなり見た目が違いますね。なお、わざと見間違いしやすいような文字を散りばめているだけで、プログラム自体は無意味です。等幅フォントの方は、文字の形で違いがわかるように工夫されていて、見分けがつきづらいゼロのような文字には真ん中に斜線が入っていて、アルファベットのオーとの違いをわかりやすくしています。逆にプロポーショナルフォントはデザイン性を重視しているのか、斜線のようなものはなくなっています。特に顕著なのはエルとバーティカルバーと大文字のアイが同じに見えるところでしょうか。


はじめのうちは誰かが書いたプログラムを参考に自分なりのプログラムを書いてみると思うのですが、見たまんま書いてみたつもりなのに動かないといった場合に、単純な文字の打ち間違いなどに早く気づきやすい工夫をすることで能率も上がっていくと思うので、プログラミングをする際にはフォント選びにも気を配ってみるといい感じです。

基本的には以上の2点だけで、文字の見た目なんかは、好みで選んでしまっても全く問題ないので、お気に入りのフォントを見つけてみるのも楽しいと思います。

エディタについてはこちらで紹介しています。

osio-tosimasa.com