私たちのプログラムのそれぞれは共通のものがあります。コーディングプロセスをスケーラブルにする方法はありますか?
これは時間と労力の無駄です。
一般的な部分がシンプルな場合は問題ありませんが、必ずしもそうではありません。
誰もこの種の質問を考えましたか?
目標は次のとおりです。
我々はコーディングない、我々は唯一の新しいは、たとえば、任意の部分と類似していない部分が前に行ってください。
良い解決策がある場合は、多くのプログラマーにとって大きな救済策になります。
私たちのプログラムのそれぞれは共通のものがあります。コーディングプロセスをスケーラブルにする方法はありますか?
これは時間と労力の無駄です。
一般的な部分がシンプルな場合は問題ありませんが、必ずしもそうではありません。
誰もこの種の質問を考えましたか?
目標は次のとおりです。
我々はコーディングない、我々は唯一の新しいは、たとえば、任意の部分と類似していない部分が前に行ってください。
良い解決策がある場合は、多くのプログラマーにとって大きな救済策になります。
はい、私は毎日考えて考えていますが、解決策は簡単ではありませんが、達成可能です。コード内で共通するものを再利用可能なアーティファクトに分解しようとします。それが解決策ですが、それは偶然に起こることではありません。それは日々の努力です。
これは、解決済みの問題を抽象化して再度解決する必要がないように、ライブラリ、プログラミング言語、またはデザインパターンのポイントです。
もちろん、解決するための新しい、より複雑な問題が常に存在します。そして、人々はそれを解決する正しい方法について意見が異なります。だから、やるべきことがもっとたくさんある。
gotosから関数、クラス、モジュールまたはコンポーネント、ライブラリなど、さまざまなソリューションがあります。これらのすべてで、コードを再利用することができます。
でも、もっともシンプルなhello worldアプリでもそれを大いに活用しています。すべての出力機能を自分で書く必要はなく、言語の標準ライブラリを使用したり、テキストを画面に出力するためのOSルーチンを使用することができます。
Cのようなプリミティブな言語でさえ、画面にテキストを印刷するための機能(printf
)があるので、自分で書く必要はありません。
優れた答え。私がSINCLAIR ZX81で利用できるコード再利用の唯一の方法である、常に嫌なGOTOを覚えていること – tekBlues
コードリユースは理想的ですが、実際には多くの実用的な障害があります。例えば、(主にここでは、ライブラリの再利用を考えて):あなたは、既存の機能について知っている、またはそれはあなたのニーズを満たしているかどうか知らないかもしれない
。場合によっては、再利用可能な機能について調べるのに必要な時間が、自分で実装するのに必要な時間よりも長いこともあります。
既存のコードは必要なものと多少異なる場合があります。場合によっては、コードを再利用しようとするまで、違いが明らかにならないこともあります。
既存のコードには、アプリケーションで使用された場合にのみ表示されるバグが存在する可能性があります(#2の特殊ケース)。他の人のコードをデバッグすることは、特に変更可能なソースが利用できない場合は、しばしば本当の課題です。
既存のコードには、プロジェクト全体には不適切なライセンス制限が付いている場合があります。
既存のコードには、他のライブラリやコードに多くの依存関係があり、実行可能ファイルが肥大化したり、脆弱になったり、一部の環境に展開する能力が制限される場合があります。
既存のコードは、アプリケーションにリンクしたい他のライブラリと競合する可能性があります。
だから、コードの再利用について話していますか? – Diones
要求をインクリメンタルな方法でコードに変換することについて話す。 – omg