このミレニアムで、Python PEP-8が最大行長79文字を指定する必要があるのはなぜですか?
太陽の下でほとんどすべてのコードエディタは、より長い行を処理できます。ラッピングをどうするかは、コンテンツ作成者の責任ではなく、コンテンツ利用者の選択である必要があります。
この時代に79人のキャラクターを守る理由は(合法的に)ありますか?
PEP-8 の価値の多くは、取るに足らない書式設定規則について人々が議論するのを止めて、適切で一貫した書式設定のコードを書き続けることです。確かに、79 が最適であると本当に考えている人は誰もいませんが、それを 99 や 119、または好みの行の長さに変更しても明らかなメリットはありません。選択肢は次のとおりだと思います。ルールに従って、戦う価値のある原因を見つけるか、読みやすさと生産性が行の長さによってどのように変化するかを示すデータを提供します。後者は非常に興味深いものであり、人々の考えを変える良い機会になると思います。
コードを機械可読だけでなく、人間が読める形式に保つ。多くのデバイスはまだ一度に80文字しか表示できません。また、複数のウィンドウを並べて設定できるため、画面が大きい人でもマルチタスクが簡単にできます。
読みやすさも、行のインデントを強制する理由の1つです。
私は、日常的に多くのコードを処理しなければならないプログラマーです。オープンソースと社内で開発されたもの。
プログラマーとして、一度に多くのソースファイルを開いておくと便利で、2つのソースファイルが並んでいるように(ワイドスクリーン)モニターでデスクトップを整理することがよくあります。私は両方でプログラミングしているのかもしれませんし、どちらか一方を読んでもう一方のプログラミングをしているだけかもしれません。
これらのソースファイルの1つが120文字を超える幅である場合、画面の1行にコード行を快適に収めることができないため、不満とイライラを感じます。書式設定を行の折り返しに混乱させます。
「120」と言うのは、それがコードの幅が広いことに悩まされるレベルだからです。その多くの文字の後で、コーディング標準は言うまでもなく、読みやすくするために行を分割する必要があります。
私は80列を念頭に置いてコードを書きます。これは、私がその境界を越えてリークしたときに、それほど悪いことではないようにするためです。
タイポグラフィを研究している人なら、1 行あたり 66 文字が最も読みやすい長さであると言うでしょう。それでも、ssh セッションを介してマシンをリモートでデバッグする必要がある場合、ほとんどの端末はデフォルトで 80 文字ですが、79 文字で十分です。vim + screen を日常の環境として使用している開発者の数にも驚かれることでしょう。
等幅フォントをデフォルトサイズで印刷するのは(A4用紙では)80列×66行です。
私が 80 文字が好きな理由は次のとおりです。職場では Vim を使用し、1680x1040 で実行されているモニターで一度に 2 つのファイルで作業しています (覚えていません)。行がこれ以上長いと、ワードラップを使用していても、ファイルを読み取るのに苦労します。言うまでもなく、長い行が好きなので、他の人のコードを扱うのは嫌いです。
Pythonでは空白には意味的な意味があるため、ワードラップの一部の方法では、誤った結果やあいまいな結果が生成される可能性があります。そのため、これらの状況を回避するには、ある程度の制限が必要です。テレタイプを使用して以来、80文字の行の長さが標準であるため、79文字はかなり安全な選択のようです。
ジャスティンに同意します。詳述すると、コードの長すぎる行は人間が読みにくく、一部の人々は1行あたり80文字しか収容できないコンソール幅を持っているかもしれません。
スタイルの推奨事項は、作成したコードをできるだけ多くのプラットフォームでできるだけ多くの人ができるだけ快適に読み取れるようにするためのものです。