コードの最適化、標準、ベストプラクティスを最優先しないことを選択したソフトウェア開発者は、最適化、コーディング標準の実装、時間どおりにタスクを完了することを実践したい開発者よりも有用なコードを作成しますか?
個々のパフォーマンスレビューに関して、これらの異なる方法論はどのように比較されますか?
これらのスタイルはピアレビューでどのように比較されますか?
SDLC中により多くのベストプラクティスを実装するためにチームに影響を与える最良の方法は何ですか?
いいえ、彼らはプロジェクトの現在の所有者からのみ尊敬を得ます。
彼らはtrashedを何年もの間得るでしょう:
彼らは同じ治療を受けるかもしれません:
誤った二分法:品質は直交しています。
高品質低品質 お得なAWESOME Sketchy 不採算のIffy FIRE FIRST
いいえ。ベストプラクティスはベストです。なぜなら、定義によりは、プロジェクトをより正確に、より短時間で、より迅速に修正できるため、無視することで保証される利益を減らします。もちろん、マネージャーはthinkが最良であるが実際はそうではないという慣行を処方するかもしれません。あるいは、顧客が支払うものとそうでないものを誤って判断するかもしれません-そしてすべての賭けはオフです。
コーディング標準はよりトリッキーです。コーダーに過剰な詳細を指定することは可能であり、効率の低下につながります。しかし、経験があると、肛門保持型のミクロ管理から有用なガイドラインを伝えるのが非常に簡単になるので、同じことが当てはまります。実際のベストプラクティスは常に価値があり、疑似ベストプラクティスは通常そうではありません。
測定ボトルネックが何か、確認済み最適化を行う必要があること、そして測定巧妙なトリックがない限り、コードの最適化は通常行う価値はありません実際にパフォーマンス要件を満たしています。それ以外の場合(ほとんどの場合)、実行する価値がないため、最適ではありません。
コードの最適化と実践を気にしない開発者に同意しますか? 番号
彼らは彼らがする必要がある仕事をしますか? はい
ビジネスはお金を稼ぐことであり、お金を稼ぐ唯一の方法は製品をリリースすることです。これは通常、プロジェクトに厳しいスケジュールがあることを意味します。つまり、何かを行うための最良の方法は、何かを行うための最も速い方法ではない可能性があります。
私はこの開発スタイルに同意しませんが、製品がリリースされている場合、会社からは尊敬されるものと見なされる可能性があります。
いいえ、そして私はこれらの悪徳を高く評価している上記の会社からの最短ルートawayを見つけます。
はい、いいえ、これは少し希望に満ちたワッシーですが、これはベストプラクティスであり、完全なプラクティスではありません。理想的には、常にそれらをフォローする必要がありますが、製品のニーズよりもビジネスのニーズを優先したいという状況が常にあります。
あなたはメンテナには嫌われますが、上司からは愛されます。
ベストプラクティスはやや常識のようなものです。2人が詳細に話し合うまでは、誰もがそれを知っておくべきだということに全員が同意しています。 2人が完全に定義に同意することはなく、すべての状況に当てはまる論理的な根拠はありません。
宇宙衛星の誘導システムを書いていますか(おそらくそうではありません)?次に、地獄は、この種の仕事では決して質の悪い/コードを実行することは受け入れられません。
使い捨てのウェブサイトを1回限りのマーケティングプッシュで作成していますか(おそらくこれを行っていないか、質問をしなかったでしょうが、サテライトよりも可能性が高いです)。その後、地獄はい、締め切りに間に合わせるために必要なあらゆる手段を通じて、その綿毛をドアから取り出します。次のマーケティングディレクターは、おそらく別の会社と別のことを行うでしょう。あなたがすることIS NOT ART OR SCIENCE-GET GET。
それ以外のすべて:交渉可能、特に開発者が初期サポートをオンフックにしている限り。
あなたが好む聖なるものが再来し、彼/彼女/彼ら/それが奇跡的な方法で開発慣行を定義するまで、生死の決定に直接責任のないプロジェクトについては、議論の余地がかなりあります。使い捨てであるにはそれほど重要ではありません。
生命にかかわるラベル付きのベストプラクティス以外のすべては、通常、会社のポリシー、クライアントの仕様、または個人的な意見に似ています。それらの多くは、現在多くの人々が同意している個人的な意見ですが、それがすべての状況で不変のガイドになるわけではありません。
彼らが会社のためにどれだけのお金を稼ぐかは議論の余地があります。問題のコードを再検討するレベルがある場合、メンテナンスコストが上昇し、誰かが満足することはありません。長期のメンテナンスコストが高いと、事前に適切に行うよりも費用がかかります。
彼らがどの程度尊重するかは、おそらくケース固有です。しかし、ある時点で誰かが気付くでしょう。
これらのことを気にしないと、会社は短期的にはより多くのお金を稼ぐ可能性がありますが、costより多くのバグ修正とメンテナンスコーディングにより、会社は長期的にはより多くのお金を稼ぐことができます。
競合する企業との間に同様の製品を同時に市場に出すためのラッシュが存在する場合、迅速で汚れた仕事が必要になることがありますが、そのような行動の将来のコストは慎重に検討する必要があります。
それはすべてお客様に依存します。
迅速で汚れている(通常は安い)顧客は、将来問題が発生することを気にしません。
キャビネットの構造を考えてください。
いくつかは、高品質の特注キャビネットを支払い、感謝します。彼らは広葉樹の引き出しと一流のハードウェアの余分な費用を気にしません。ビルドとインストールにさらに1週間または1か月かかることを気にしません。
多くはしません。多くの人が、大きなボックスショップで手に入る安価なパーティクルボードの大量生産品を選びます。彼らはそれらを2日でインストールしたいと思います。あちこちの小さなギャップは完全に許容できます。彼らは彼らが10年後に崩壊することを気にしていない。
ですから、あなたのマネージャーが開発者を称賛しているなら、それはあなたの顧客が高品質を望んでいないか、マネージャーが顧客に嘘をついています。
時間だけが教えてくれます。マネージャーが望むことをするか、別の仕事を見つけます。
いいえ、ありません。 IMOコードの最適化、ベストプラクティス、実際[craftsmanshipは[〜#〜] most [〜#〜]コードベースで重要なことです。それなしでは全体がスラッジに変わり、ダクトテープで固定されます。それは持続不可能なデザインです。腫瘍は小さくて健康なので、腫瘍を無視するようなものです。確かにあなたは今健康ですが、あなたがそれを長い間無視していたので、数年後にはそれはターミナルになります。
私はnotをこれらのことを気にしない開発者に同意するだけでなく、起動するためにzero尊重を持っています。私が組織を離れることを検討するための確実な方法は、私がそこにいた短い時間に関係なく、気になる唯一の人(会社全体で唯一の人ではないにしても)であるチームに囲まれることです。適切なソフトウェアエンジニアリングの概念について。
よく読んでください: http://www.joelonsoftware.com/items/2009/09/23.html
しかし私見、ある人のベストプラクティスは別の人の悪夢です。そして、自明ではないすべてのコードベースは、部外者にとって悪夢になります。
あなたが何を考えていても、それについてジャークしないでください。
編集:私はどちらの側にも傾くかもしれないタスクに応じて、ポジションを守っていません。
会社に良いですか?場合によります。
資金が限られているスタートアップの場合は、それを実行して実行します。乱雑であるかどうかは関係ありません。後でリソースが増えたときに修正できます。
多くのユーザーがソフトウェアの品質に依存している成熟した製品の場合、すべてを「適切に」行う必要があります。
個々の開発者にとってより良いですか?実際には関係ありません。同僚がしていることと同じことをして、管理者に放射性降下物を処理させてください-それはあなたの仕事ではありません。あなたがいつも他の人のがらくたを修正しているなら、あなたは遅いと見られ、他の人があなたの上に昇格されている間、あなたはまだそこにいる人になります。プログラムを入手するか、それが悪い場合はできる限り外に出てください。
開発者とプロジェクト/状況によって異なります。
異常な時間には異常な対策が必要です。
そのため、今すぐ何かを提供する必要があり、誰かがエンタープライズグレードJavaアプリケーションを過剰設計している場合、シンプルなpythonスクリプトで14を超える最新の流行語フレームワークを活用できます。仕事は、角を切り、バグのあるコードが通常の時間に実行すると考える開発者と同じくらいひどいものです。
開発者であることの一部は柔軟です。あなたは自分のツールの奴隷になってはならず、盲目的に慣習に従ってください-彼らがあなたを失敗させるケースは常にあります。ルールを破って折り曲げるタイミングを知ることは、多くの経験に伴う価値のあることの1つです。
あなたの場合-速度が重要であるために彼があなたよりも多くの価値を提供する場合、たとえ将来のメンテナンスの増加したコストを考慮した後でも、彼はより良い補償に値します。反対側で-あなたが彼の混乱を掃除することに行き詰まっているなら-あなたは経営者とのコミュニケーションの問題を抱えています。
ケースバイケースです。コーディングスタイルを除いて-言い訳はありません。
申し訳ありませんが、この質問へのほとんどの回答に同意する必要があります。
ソフトウェアの主な価値は、柔軟であることです。
正当な理由がない限り、他の人のコードを書き直すべきではないと思います。機能を実装するために何らかの理由でモジュールを変更する必要がある場合、あなたは現在、そのモジュールの所有者です。それを変更し、一部を書き直し、すべてを書き直してください。
これまでにない柔軟性の点で低品質を生成しないでください。ソフトウェアに何かを捨てるようなものはありません。クライアントが一時的なものであり、特定の日付以降は必要がなく、品質を気にしない場合は、「悪い」と言うか、コードがあなたや他のプログラマーによって一度も変更されないことを書面で伝えます。本番環境に展開されているか、訴訟を起こす権利があります。
これらの回答のいくつかで私が見ている最も悪い仮定は、いくつかのクリーンなコードが何らかの形で開発の速度を低下させるということです。実質的なプロジェクト(6時間を超える作業)の場合、クリーンなコードは長期(1週間を超えるもの)の開発を高速化します。私はそれを何度も何度も見ました。
質の悪いコードは、職業や同僚に失礼です。申し訳ありませんが、本当です。
ですから、柔軟性という点では、品質が悪いことはありません。