次の理由から、コードの行を80文字以下に抑えるのが好きです。
- 水平スクロールをする必要はありません。
- この制限を超えると、おそらく行が複雑すぎます。そして
- 紙にきれいに印刷されます。
後者については、実際にコードを印刷して見る人(私もそのうちの1人)に会ったことがあります。それで、コードを印刷するのはどれくらい一般的ですか?
次の理由から、コードの行を80文字以下に抑えるのが好きです。
後者については、実際にコードを印刷して見る人(私もそのうちの1人)に会ったことがあります。それで、コードを印刷するのはどれくらい一般的ですか?
回答:
私はまだコードを時々印刷していますが、それが特に厄介な問題である場合に限ります。
通常は、コードが複雑すぎてリファクタリングが必要であることを示しているため、最初に何か落書きをすると問題を見つけて修正し、コードを分割する場所を見つけるのに役立ちます。
SOLIDとDRYの原則の理想的な世界では、1つの画面でメソッド全体を見ることができるはずです。しかし、私たちは理想的な世界では働きません...
時には多くのコードを同時に見る必要のあるコード(通常は初めてのコード)をよく見る必要がある場合があります。そうすれば、一度にすべてを見ることができるため、印刷物は非常に貴重です。
蛍光ペンと赤と緑のペンを組み合わせることで、概要を把握するのに役立ちます。紙に書いたメモは、後で何らかの形でコードに追加されます。
現代のカラープリンターでは、紙にも構文の色付けができることに注意してください。これは本当に大きな助けであり、強くお勧めします。
(読み物の仕様も印刷します-それは余白にメモを入れるためです。)
電車で読んでメモをとるために印刷することもあります。行き詰まったときは、静かな会議室のテーブルの上に広げたいです。それが本当に役立つかどうかはわかりませんが、ペースの良い変化です。
もう1つ:画面に収まらない複数のネストされたIf / Thenステートメントである古いコードを見つけました。彼らはそれを書いた元プログラマーを解雇すべきだったが、それから私は失業するだろう;)
コードのピアレビューを行うために、コードを印刷するだけです。レビューをオフラインで行うことは、すべての邪魔な(しかし時には役立つ)IDEを備えたコンピューターで行うよりも効率的です。
1つ(または2つ以上)の適度に広いモニターを使用している場合、2つのソースファイルをフルスクリーンモードで縦に分割して簡単に開くことができ、制限の厳しい線幅規制に従う必要はありません。
また、場合によっては、行の内容全体(つまり、デバッグメッセージなどを出力する行)を表示する必要がないため、行が右側で途切れているかどうかは関係ありません。
しかし、あなたの質問に答えるために:私の意見では、コードを紙に印刷することはもはや一般的ではありません。
さて、私は今では紙にコードを印刷することはめったにありませんが、昔はいつもそれを使っていました。
最近の通常の理由は、静かな場所に座って後輩にコードを説明するため、または長い方法が本当にバグがあり、ペンと紙の作業を通して非常にいくつかを必要とする場合です。特にメモやどこでも強調表示が必要な場合は、画面で十分なわけではありません。
私はほとんど常に80文字の制限を守っています。緊急時にSSH経由でバグをすばやく修正したいので、幅の広い端末を使いたくないからです。また、水平スクロールは悪魔です。
私が高校に通っている10代の頃(現在21歳)、自宅でインターネットに接続できませんでした。そのため、コードサンプルとさまざまなAPIドキュメントを頻繁に印刷して持ち帰りました。
補足:既に必要な情報があれば、インターネットに接続せずにさらに多くの作業を行えることは驚くべきことです。
それで、コードを印刷するのはどれくらい一般的ですか?
DOSプログラミングの時代には何年も前に一般的でしたが、80文字が印刷ページに正確に表示されていました。マトリックスプリンターがあったので、制限はおそらくハードウェア側にありました。コンソール画面の制限でもありました。
今日、人々はまったくコードを印刷することはほとんどありません。唯一の例外は、就職の面接のテスト例として印刷される小さなコードスニペットです。
最近ではほとんどの人が大型モニターやフルHDなどで作業しています。私は通常、印刷の副作用を考えずに150〜200文字に拡大します。
チームで話し合うときは、通常誰かがラップトップを手に取り、それをプロジェクターに接続します。繰り返しますが、誰もコードを印刷しません。
私が最後にコードを印刷したのは、大学の卒業証書の約8年前でした。以来する必要はありません。
コードの印刷は、特別な理由を除いて、1975年から1982年の間に廃止されました。
もう違います。連続フィードのドットマトリックスが一般的だった頃、IDEの前の頃はずっとそうしていました。これらの印刷物を広げて、簡単にめくることができます。最新のシートフィードレーザー/インクジェットプリンターは、大きく後退しています。それらを一緒にホチキス止めしても流れません。また、ホチキス止めしないと、シートがばらばらになってしまいます。自動強調表示とメソッドナビゲーターを備えた最新のIDEでは、印刷結果を調べることで検出されたエラーのクラス全体も排除されます。
コードを紙に印刷することは非常にまれであり、深刻なオフラインデバッグを行いたい場合、または他の人のコードに精通したい場合にのみです。
また、データベーススキーマをコードよりも紙に印刷する方が適切でしょう。
水平スクロールの問題は、120文字以下にとどまる大きな煩わしさと理由だと思います。
私は時々、厄介な複数ページの問題を理解しようとするためにコードを印刷します。
大きなモジュールを印刷してさまざまなセクションをすばやく表示できれば、簡単にわかります。おそらく複数のモニターで同様のことを行うことができますが、コード内に2か所以上の場所がある場合、スクロールしてブックマークを追跡するよりも、すべてを1か所に広げる方が迅速です。また、古いコードと新しいコードを並べて表示できるため、エディターで変更を加えるのではなく、変更で印刷をマークアップするのも好きです。もちろん、エディターで古いコードをコメントアウトすることもできますが、数行以上置換する場合は、古いコードをモニターからスクロールしてしまうので、元気です。
そうは言っても、私はもうコードをほとんど印刷しません。リスト全体が連続しており、余白にメモを入れるスペースが十分にあるファンフォールド紙では素晴らしかったが、個々のレターサイズのページにすべてを印刷することは、画面に表示するのとほとんど同じくらい悪い。特に、エディターがヘッダーとフッターを1インチのマージンに配置することを要求する場合。幸いなことに、最新のIDEは、物事を印刷する必要性を減らす多くのツールを提供します。
私は自分のために何も印刷しません。そして、私はそれから抜け出すことができないときにのみ他の人のために印刷します。私も印刷物を受け取るのが嫌いです。彼らは私の机を散らかし、それから私は彼らに責任があります(それを保存しますか?それをファイルしますか?それを細断しますか?それをスクラップとして使用しますか?)
念のために言っておきますが、私は数十年にわたってメインフレームコーディングを行っており、彼のそばに非常に多くのコードプリントを持っている人の近くで働いています。
私が思うにあなたのために働くものをしてください。印刷物を私のところに置いたままにしないでください机に置いた、ありがとう。
上記の回答とは少し異なります。
私は学生です。さまざまな授業の手渡し用のコードを印刷していますが、コードを書かなければならないすべてのユニットのコードを印刷しているわけではありません。
私の最初の年には、ほとんどのユニットで、電子アップロードまたはCDへのコピー(はい、5 Mb zipファイルのCD ...)に加えてハードコピーが必要でした[講師の選択]
私は現在2年目で、これまでのところ、電子のみのアップロードが1回、ハードコピーとCDのハンドインが1回ありました。
コースワークの電子提出を可能にするMoodleがあることを考えると、コードを常にアップロードしない理由は私には及ばない-大学のプリンターで印刷するためにお金を払わなければならず、どのPCにも1つのCDバーナーはない私が知っていること。もちろん、講師はMoodleが好きではありませんが、それはまったく別の質問です。
ところで、私は英国の大学生であり、小さな未知の学生ではありません。私が最後に見たとき、タイムズ/ガーディアンによれば、私のものはUniのトップ10にいました。