なぜこの千年紀にPython PEP-8が最大行長を79文字に指定する必要があるのですか?
ほぼすべてのコードエディタは、長い行を処理できます。ラッピングをどうするかは、コンテンツ作成者の責任ではなく、コンテンツ利用者の選択であるべきです。
この時代に79のキャラクターを厳守する(正当な)正当な理由はありますか?
なぜこの千年紀にPython PEP-8が最大行長を79文字に指定する必要があるのですか?
ほぼすべてのコードエディタは、長い行を処理できます。ラッピングをどうするかは、コンテンツ作成者の責任ではなく、コンテンツ利用者の選択であるべきです。
この時代に79のキャラクターを厳守する(正当な)正当な理由はありますか?
回答:
PEP-8の価値の多くは、重要ではないフォーマットルールについて議論するのをやめ、一貫して適切にフォーマットされた適切なコードの記述を続行することです。確かに、79が最適であるとは誰も考えていませんが、99や119に変更したり、希望する線の長さを変更したりしても、明らかなメリットはありません。選択肢は次のとおりだと思います。ルールに従って、戦う価値のある原因を見つけるか、行の長さによって読みやすさと生産性がどのように変化するかを示すデータを提供します。後者は非常に興味深く、人々の心を変える良い機会になると思います。
there's no obvious gain in changing it to 99 or 119 or whatever your preferred line length is
これは非常に多くの点で間違っています。行を40文字で折り返して、読みやすさを教えてください。明らかに、折り返しが少ないということは、2015年にそうしている画面スペースがある限り、可読性は高くなります。折り返しは読みやすさに影響します。読みやすさは保守性に影響します。保守性は品質に影響を与えます。80文字で折り返すと、品質に影響します。フルストップ。
機械可読だけでなく、人間が読めるコードを維持する。多くのデバイスでは、一度に80文字しか表示できません。また、複数のウィンドウを並べて設定できるため、大画面のユーザーがマルチタスクを実行しやすくなります。
読みやすさも、行のインデントを強制する理由の1つです。
私は毎日たくさんのコードを扱わなければならないプログラマーです。オープンソースと社内で開発されたもの。
プログラマーとして、一度に多くのソースファイルを開いて、2つのソースファイルを並べて(ワイドスクリーン)モニターでデスクトップを整理すると便利です。私は両方でプログラミングしているのかもしれませんし、どちらか一方を読んでもう一方でプログラミングしているだけかもしれません。
これらのソースファイルのいずれかが幅が120文字を超えると、コード行を画面の1行に快適に収めることができないため、不満と不満を感じます。それは行折り返しにフォーマットを混乱させます。
「120」と言うのは、それよりもコードが広いとイライラするレベルだからです。その数の文字の後、読みやすさのために、コーディング標準はもちろんのこと、行をまたがって分割する必要があります。
80列を念頭に置いてコードを記述します。これは、その境界を越えてリークが発生しても、それほど悪いことではありません。
タイポグラフィを研究している人なら、1行あたり66文字が長さとして最も読みやすい幅であると思われると私は信じています。それでも、sshセッションを介してリモートでマシンをデバッグする必要がある場合、ほとんどの端末のデフォルトは80文字で、79がちょうど収まります。このような場合、より広い範囲で作業しようとすると、本当に面倒になります。また、vim + screenを日常の環境として使用している開発者の数にも驚かれることでしょう。
等幅フォントをデフォルトのサイズで印刷すると、(A4用紙で)80カラムx 66行になります。
これが私が80文字で好きな理由です:仕事でVimを使用し、1680x1040で実行しているモニターで一度に2つのファイルを操作します(覚えていません)。行が長くなると、ワードラップを使用していても、ファイルの読み取りに問題があります。言うまでもないことですが、他の人が長い行を愛しているので、他の人のコードを扱うのは嫌いです。
Pythonでは空白は意味的に意味があるため、ワードラップの一部の方法では不正確またはあいまいな結果が生成される可能性があるため、これらの状況を回避するにはいくつかの制限が必要です。テレタイプを使用して以来、80文字の行の長さが標準であるので、79文字はかなり安全な選択のようです。
私はジャスティンに同意します。詳しく説明すると、コードが過度に長い行は人間にとって読みにくく、一部の人々はコンソールの幅が1行あたり80文字にしか対応できない場合があります。
このスタイルの推奨事項は、作成したコードをできるだけ多くのプラットフォームで、できるだけ多くの人ができるだけ快適に読み取ることができるようにするためのものです。
80番目の列を超えてプッシュすると、非常に長く複雑なコード行を記述しすぎているため(リファクタリングが必要)、インデントしすぎているため(リファクタリングが必要)、