1

これを行うための「最善の」方法、またはそれを行うための「最善の」方法を求めるこれらの質問をたくさん見てきました。

  • ある人の最善の方法は、すべての人の最善の方法になりますか?
  • 特定のアルゴリズムを実行したり、問題を解決したりするための「最善の」方法は本当にあるのでしょうか?

  • 何らかの方法で問題を解決することよりも、最善の方法を探すことの危険性は何ですか?

4

7 に答える 7

4

ジェフ - これは私の同僚と私が何度も繰り返していることです。彼らは継続的にテクノロジーの実装とベスト プラクティスの観点から最善の方法を検討していますが、ビジネス アナリストとして、私は配信と目前の問題の解決に重点を置いています。

これは確かに価値提案の問題であり、保守性とパフォーマンスに帰着すると思います。変更が加えられた場合、またはコードが保守可能でないか、簡単に変更できない場合、それは問題となり、ベスト プラクティスについて再評価する必要があります。問題のコードが遅く、パフォーマンスが懸念される場合は、おそらく変更する必要があります。

猫の皮をむいたり、アルゴリズムをコーディングしたりする方法は 10 以上ありますが、必ずしも最良の方法があるとは限りませんが、ほとんどの場合、より良い方法と悪い方法があります。コードの匂いのトピックをチェックしてください。始めるのに適した場所かもしれません。

于 2009-02-24T17:33:10.087 に答える
2

いいえ。

それは古い哲学者の質問です。完璧は、あたかも完璧ではないかのように存在することはできません。私たちの世界の不完全さのために、現実のすべてが完全になることはありません.風化(自然または人工)はすぐにそれを不完全にします.

ベストは存在しません。「より良い」はそうですが、「より良い」は文脈によって異なります。EG「このシナリオには xyz の方が適しています」。

トレードオフはあなたが探している言葉です。それぞれの決定にはトレードオフがあり、「より良い」トレードオフはコンテキストによって異なります。

于 2009-02-24T17:32:10.370 に答える
2

最善の解決策は、他のすべてが等しい場合、問題に取り組んでいるチームが適切に実装できるほど十分に理解しているものです。

于 2009-02-24T17:35:50.033 に答える
1

「最高」は、コンピュータ プログラミングで多くのことを意味します。たとえば、

  • 最速
  • 最小のメモリ使用量
  • 最も単純な

そして、これらのことでさえ、多くのことを意味することができます。たとえば、「最速」は「最小のレイテンシー」または「最高のスループット」を意味する場合もあれば、「最小の償却レイテンシー」のようなものを意味する場合もあります。アプローチ、および2つの間の分布。

したがって、アプローチの各側面が「最良」とその構成要素のすべての可能な定義に対して最適である場合、はい、最良のアプローチがあります。しかし、これは最も単純なケースを除いて、非常にまれです。

于 2009-02-24T17:36:13.573 に答える
0

ソリューションのすべての代替案を評価し、選択したソリューションは、すべての要件を最小の価格でカバーする最適なソリューションでなければなりません。ある人の最高は別の人の最高ではありません。

于 2009-02-24T17:32:17.157 に答える
0

いいえ、合理的な複雑な問題については、正確な状況に応じて最適な解決策がたくさん得られますが、

多くの場合、そうでない理由がわかるまでは、最善の解決策と見なすべき最善の既定の解決策があります。

例: コレクションをソートする方法は何百もあります。しかし、問題についてそれ以上何も知らない場合は、API が提供するメソッドが適切な推測です。

于 2009-02-24T17:33:24.657 に答える
0

それらはすべて「状況下での最善」を意味していると思いますが、もちろん万能の最善というものはありません。そして、もしあれば、次善の策がやって来て、その場所を取るのを待っているだけです!

于 2009-02-24T17:39:02.350 に答える