私はいくつかのコースを受講し、YAGNI の目的について読みました。しかし、この原則全体としては、私は決してうまくいきませんでした。それは論理的なパラドックスをもたらします。
仮定として、あなたはスケール フォワードを意図したフレームワークを設計しています。YAGNI (およびおそらく TDD) は、今に集中するように促します。予見可能なハードウェアで機能するようにしてください。結局のところ、将来の要件はあいまいであり、まあ、将来のことです。
しかし、それはフレームワークの実行可能性を本質的に制限します。そして、この仮説では、将来がどうなるかを知るための先見の明があります。プロトタイピングを行って先に取り組むことは、将来的に非常に役立つ可能性があることを知っているため、時間をかける価値があるかもしれません. 結局のところ、フレームワークの本質は、環境全体でいくつかの機能を促進することです。では、どうすればフレームワークを設計し、YAGNI の原則に厳密に従うことができるのでしょうか?
「YAGNI の使い方」について具体的なことを求めているのかどうかはわかりませんが、それよりも哲学的なことかもしれません。YAGNI、正反対の原則、ベスト プラクティスの境界線について、業界の経験豊富な開発者に尋ねているだけかもしれません。YAGNI は実施されていますか? それも考慮されていますか?それとも、本に載っているからといって、学校が教えているだけなのでしょうか?
ありがとう。