ホームページ  >  記事  >  バックエンド開発  >  あなたをダメなプログラマーにしてしまう10のこと

あなたをダメなプログラマーにしてしまう10のこと

WBOY
WBOYオリジナル
2016-07-25 08:51:47783ブラウズ
当サイトでは、これまでに「優秀なプログラマーの10の習慣」や「プログラマーが身につけるべき基礎スキル」を公開しており、これらは私たちが学び、培うべきものです。ここでは、主に避けるべき、注意すべきダメな PHP プログラマーの 10 の特徴について説明します。
1) 感情的思考
異なる色の目を通して世界を見るようになったら、あなたはひどいプログラマーになるかもしれません。感情的な考え方や態度はあなたを怪物に変えるかもしれません。次のようなステートメントを使用する非常に悪いプログラムを多く見ることができると思います:
私のプログラムではこの問題が発生するはずがありません。
Javaはクソだ。
私が最も嫌いなのは、デザインに UML を使用することです。
なぜニーズは常に変化するのでしょうか?私たちにできることは何もありません。
私はこの人たちに我慢できないのですが、彼らは理解していますか?
… …
これらの感情的な考えや態度は、あなたを非常に悪いプログラマーにするだけでなく、あなたの将来にさえ影響を与える可能性があります。なぜなら、感情は通常、間違った判断や決断を下す悪魔のようなものであり、それがあなたの人生を直接左右してしまうからです。
2) 他人を疑う
悪いプログラムは常にこう言います:「私のコードは正しいはずだ。コンパイラに何か問題があるのではないかと思う。」「私には問題ないはずなのに、なぜ STL ライブラリはこんなに使いにくいの?」以前、あるプログラマーが STL クラスを次のように使用しているのを見たことがあります: map このように文字列を入力した後、その文字列を取り出すことができないことに気づいたとき、彼はそれが STL ライブラリのバグだと考えました。そこで彼は自分で地図を書きました。ああ、神様!
早まって結論を急ぐのは非常に悪い習慣である場合があります。理由を知ることによってのみ、それが誰の問題であるかを知ることができます。一般的に言えば、それは常に自分自身の責任です。
3) 実装に注意を払いすぎて、問題の詳細に行き詰まってしまう
時々、問題や要件に直面すると、悪いプログラマーは常にすぐに解決策や実装を見つけます。これは非常に悪い習慣です。 。デザイン パターンは、「実装ではなくインターフェイスを優先する」ということは、問題の性質と特性を実装方法よりも認識することが重要であることを意味します。
顧客の問題の場合、最初に考えるべきことは、問題の原因と解決策を分析するためにユーザーを脇に置くのではなく、ユーザーを通常どおりに動作させ、「出血」システムを復元する方法です。
バグを解決するには、すぐにコードを修正するのではなく、バグを再現し、元のプログラムの意図を理解することがまず重要です。そうしないと、必然的にさらなるバグが発生します。
要件については、実装方法を議論するのではなく、ビジネスの背景、ユースケース、要件の背後にある真の意図を理解する必要があります。ユーザーの真の意図を理解し、使い心地を実感してこそ、真のデザインができるのです。
悪いプログラムは常に詳細に行き詰まり、より重要なことを無視しながら、実装方法や問題の根本原因について議論する傾向があります。地図全体を理解して初めて、どのように進むべきかを知ることができます。
4) なじみのないコードの使用
悪いプログラマーの親友は Ctrl-C と Ctrl-V です。コードの正確な意味を知らずに使用し始めることがあり、そのことがバグの大部分を引き起こします。コピーして貼り付けます。コードは特定の環境でのみ正常に動作するため、コードのコンテキストが変化すると、コードを制御することさえできなくなると、コードが多くの未知の動作を引き起こす可能性が非常に高くなります。まだどんな良いプログラムをプログラムできるでしょうか?
5) 賢く働くのではなく、一生懸命働く
ダメなプログラマーの場合、必死にバグを修正し、常に多くの時間を費やし、特定のタスクを繰り返し完了するのを常に目にすることができます。優れたプログラムは、効果的な開発環境とツールの準備に 2 倍の時間を費やし、開発中のエラーを回避するために 2 倍、さらには 10 倍の時間を費やします。優れたプログラマーは、作業をより効率的にするために常にあらゆるツールや手段を使用し、開発中にできるだけミスを少なくするよう常に努めます。後で間違いを犯した場合の代償は莫大であり、その時に修正するプレッシャーは非常に大きくなります。したがって、貧弱なプログラムは悪循環に陥り、常に疲れ果てたように見え、改善する時間がなくなり、問題が増えます。したがって、無理して仕事をしていると、あなたが優れたプログラマではないことを示す場合があります。
6) いつも待って、言い訳して、愚痴って
ニーズが不明確で環境があまり満足できないとき、彼らは常に他人が改善するのを待ちます。問題が起きると、あれがダメだ、あれがダメだといつも言い訳したり文句を言ったりするので、当然仕事はうまくいきません。ダメなプログラマーは常に、明確なニーズ、非常に優れた開発環境、十分な時間、優れた QA、強力なチーム リーダー、適切なトレーニング、優れたディスカッション、強力なサポートを備えた自分のマネージャーがいる最高の環境を望んでいます。他... これは、「食べ物が来たら口を開け、服が来たら手を伸ばす」という態度です。 世界は完璧ではなく、チームにはすべてが必要です。すべてが完璧になったら、あなたの価値は何ですか?待つのではなく運転し、従うのではなく先頭に立ってください。
7) 社内政治を生む
「醜い女性はいたずらをする傾向がある」ということわざがありますが、これは、その人に本当の能力がなければ、間違いなく悪戯をするだろうという意味です。他の面での記事の間違い。ダメなプログラマにも同じことが当てはまります。自分がうまくプログラムできず、他人と比較できない場合、彼らは通常、自分を守るために他人を責めたり、責任を回避したり、有能な人材を排除したりする異常な手段に頼ります。そのため、不適切な手順には社内政治が伴うことがよくあります。
8) 話す量を増やし、実行する量を減らします
悪いプログラマーは、自分の理解と知識が限られているとは常に感じていません。これがレトリックと呼ばれるものです、そうです、何もうまくできないプログラマーはどうやってやっていくことができますか?ただ吹いて吹くだけです。
それを示すもう 1 つの方法は、他の人のプログラムや設計にコメントするとき、彼らは常に多くの欠陥を見つけることができますが、自分のプログラムもよく書かれていないということです。建設的な提案や実現可能な解決策を持たずに、常に批判や不満を言います。
これらの悪いプログラマーは、自分の優秀さを示すために常に他の人のプログラムを批判することを好みます。
9) 頑固さ
より良い解決策がある、より良い方向性があるという十数の証拠を与えると、彼らは常に自分たちのアプローチが最善であると頑固に考えるでしょう。私が個人的に経験した例としては、問題を解決するときに新しいプログラムが間違った方向に進んでいるのを見たとき、私は彼に、あなたは間違った方向に進んでいるかもしれない、それは逆であるべきだと念を押し、それを証明しました。彼に見せるもっと簡単な方法があります。しかし、このプログラマーは、「これは私のやり方であり、従わなければ非常に不快な思いをすることになります。」と言いました。そこで、頑固な説明と多くの疑問の後、3日後のコードレビュー中に、彼はこう言いました。私が最初に彼に言った方法を採用しなければなりませんでした。
これらのプログラマーは、それについて考えたり、より良い方法があるかどうかを議論したりすることはなく、たとえそれが行き止まりにつながっても、自分のアイデアを貫き、前進します。壁にぶつかるまで、振り返ってください。
10) 「スマートな」コードを書く。彼らが書くコードは、他の同僚がプログラミング言語のリファレンスマニュアルを確認する必要があるか、プログラムのロジックやスタイルが非常にファッショナブルに見えますが、非常に読みにくいです。コードは簡潔で読みやすいものである必要があり、コードで自分を表現したり、自分の才能を発揮するために別のことを試したりすることを好みます。はい、そのような表示に頼る必要があるのは、能力に疑問のあるプログラマーだけです。
以前、英語が得意なプログラマーが入社したのを思い出しました。その男は自分の英語がいかに優れているかを示したかったのですが、GRE ではなじみのないフレーズや語彙をたくさん使いました。誰にとっても読みにくいものにしてください。最も皮肉なことは、ネイティブアメリカンが後にメールで特定の単語の意味を彼に尋ねたことです。ふふ。
あなたは下手なプログラマーですか?
LAMP BrothersオリジナルPHPチュートリアルCD/『Essential PHP in Detail』を無料でプレゼント 詳細は公式サイトカスタマーサービスまでお問い合わせください: http://www.lampbrother.net
PHPCMS二次開発 http://yun.itxdl.cn/online/phpcms/index.php?u=5
WeChat開発
モバイルインターネットサーバーサイド開発 http:// yun.itxdl.cn/online/server/index.php?u=5
Javascriptコース http://yun.itxdl.cn/online/js/index.php?u=5
CTOトレーニングキャンプ

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。