回答:
これは、あなたの思考習慣とアルゴリズムの複雑さに依存します。
ペンと紙は、入力する各文字に対してコンパイラが叫ぶことなく、「自由形式」の考え方を提供します。
ペンと紙を使用する人の中には、時間をかけてループ制限を調整したり、別の値を試したりする人もいます。
したがって、筆記体が思考優先のアプローチを促進する場合に、テスト優先のアプローチを直接奨励するコードを記述すると思います。タスクが簡単であれば、その場でコーディングできます(十分な経験がある場合)。ただし、複雑なアルゴリズムでは、おそらく別の開発アプローチが必要になります。
ダイアグラムが役立つ場合もありますが、これには、それらを理解し、以前に使用したことがあることが必要です。
あなたのアプローチがより一般的なアプローチだと思います。アルゴリズムが特に複雑または困難な場合、アルゴリズムを理解し、一度に実装することは困難な場合がありますが、一般的に、ほとんどの人に役立つとは思えません。
しかし、私は、最初に文法のルールを発明し、そのルールを紙に書かずに(またはおそらく私が持っていない特別なツールを使用して)パーサーを実装したり、疑似のないBツリーを実装したりはしません利用可能なコード。
それがあなたに何らかの害を与えていない限り、私はあなたが悪い習慣を持っているとは言わないでしょう。
これらの「多くの人々」は誰ですか?そして彼らは生計のためにプログラミングしていますか?あなたがやっていることは、ほとんどのプログラマーがやっていること、少なくとも私が知っていることのほとんどです。タイプするのが速いときは紙の使用はほとんどなく、高水準言語でプログラミングするときの疑似コードの使用はほとんどありません。時々、ペンと紙を使ってトリッキーなアルゴリズム(たとえば、ツリーの回転)を視覚化しますが、ほとんどの場合、高レベルのコードから始めて、徐々に空白を埋めていきます。
KLEと同様に、これはテスト駆動開発に続いてうまく機能すると思います。とにかくテストを書くつもりなら、あなたは最初にそれらを書くこともできます。
1.通常、必要な準備の量は、実行している作業の複雑さに比例します。四半期に1回使用され、1台のマシンのみで1時間シングルスレッドで実行されるアルゴリズムの場合、2日間丸ごと紙に書くのは意味がありません。1時間あたり50万件のリクエストを処理でき、ダウンタイムなしで24時間365日実行する必要がある新しい高性能磁束補償モジュールを設計するために、ペンと紙で3週間(必要な場合)を作成するのは理にかなっています。
2.コーディングしているソリューションを見ると、30秒以内に悪い習慣であるかどうかがわかります。あなたはそれが良い習慣か悪い習慣かを尋ねました。まあ、それはあなた次第です。あなたがプログラミングのキャリアの初めに遅い学習者であるなら、おそらくすべてを完全に詳細に書くことは良い考えです。数年の経験がある場合は、5分間考えてから実行するだけで十分です。もちろん、上記の1.に関してはまだです。
あなたのコードだけが、多かれ少なかれペンと紙が必要かどうかを真実に伝えます。他の人にそれを指示させないでください。自分で見つけてください。それはあなたを学び続けます。
免責事項:これは、主流の考え方や常識とは異なる場合があります。それで大丈夫です。ブックマークを設定して、5年ほど後にもう一度読んでください。