問題タブ [code-reuse]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
4 に答える
1563 参照

design-patterns - ColdFusion には、ASP.NET のマスター ページに対する答えがありますか?

ColdFusion でコーディングされた Web サイトに取り組んでいます。必要以上のコードを複製することなく、すべてのページのコンテンツに適用したい CSS/HTML テンプレートがあります。私は ASP.NET のマスター ページに少し甘やかされてしまいました。これは、このサイトを実装するための私の好みの方法です。残念ながら、そのオプションは私には利用できません。このサイトは Coldfusion MX 7 で実行する必要があります。また、プロジェクトを率いる開発者は Fusebox を好まないため、その選択肢はありません。

メイン ナビゲーション、グラフィカル ヘッダー、およびフッターは、すべてのページで同じです。タイトル タグ、メタ タグ、およびレベル 2 ナビゲーションは、ページごとに異なる可能性があります。それ以外は、ページの「メイン コンテンツ領域」のみが異なります。

これらのパラメーターが与えられた場合、保守性を最大限に高めるためにサイトをコーディングするにはどうすればよいでしょうか?

0 投票する
4 に答える
255 参照

asp.net - この場合、どの再利用方法が適していますか-ascxまたはその他

さまざまな種類の学生の成績を表示するASP.NETアプリケーションがあります。遅刻のペナルティやクイズを含まない自習型のコースを受講している生徒もいれば、標準のクラスルームコースを受講している生徒もいます。

そのため、生徒の成績を表示するときは、その生徒がどのカテゴリに該当するかを判断し、成績を適切にレンダリングします。

今は条件付きステートメントでこれを行っていますが、それぞれのケースをascxファイルにすることを考えました(つまり、セルフペース用のgridViewを備えた1つのascxと、教室用のgridViewを備えた1つのascxで、それぞれがデータ内のデータポピュレーションメソッドを呼び出しますアクセスクラス)。

異なるページに成績を表示するために、アプリの他の場所でこの機能を再利用する必要があるかもしれないので、ある種のカスタムコントロールが必要なようです。

このアプローチは実行可能ですか?

0 投票する
4 に答える
273 参照

code-reuse - 共通のコードを持つ複数のアプリ -- これにどのようにアプローチするか?

私の会社には、多くの一般的なコード (カスタム MVC フレームワーク、ユーティリティ クラス、JavaScript ライブラリなど) を使用する 2 つまたは 3 つの Web アプリがあります。

各アプリでこのコードをすべて複製することは避けたいと思います。これは、わずかに異なるバージョンのコードがいくつか使用されることになるためです。しかし、アプリがこのコードのまったく同じコピーを要求することは望ましくありません。これは、あるアプリの更新によって別のアプリが破損する可能性を避けるためです。

この問題に対処するためのヒントはありますか? 私は技術的な答えを探しているとは思いません - 単なる一般的なアプローチです。

コードをライブラリにして、アップグレードの準備が整うまでアプリを古いバージョンのライブラリに残すことができます。または、一度にすべてをアップグレードする必要がないように、複数のライブラリにすることもできます。しかし、ライブラリのバージョン間の相互依存関係を管理することは難しくなるでしょうか?

0 投票する
2 に答える
1194 参照

vbscript - VBScriptを整理しておく

ネットワーク上でさまざまな起動スクリプトを実行するために多数のvbscriptを維持しており、それらのほとんどすべてで使用する関数がいくつかあります。

コピーアンドペーストを除いて、再利用可能なvbscriptコードのライブラリを作成する方法について誰かが提案を持っていますか。コピーアンドペーストよりも頭痛の種でない限り、コードジェネレーターを使用することを嫌がりません。しかし、どんな推奨もいただければ幸いです。

ありがとう

0 投票する
3 に答える
179 参照

asp.net - さまざまなテーブルにデータを追加するために多数の.aspxページを作成します。もっと良い方法はありますか?

私は、新しいデータを追加するための非常によく似たフォームがたくさんあるCRUDサイトで作業しています。言い換えると:

AddMovie.aspx、AddGame.aspx、AddBeer.aspx、AddAdd.aspx

「自分で、似たようなページをたくさん書き直すのではなく、単一のAdd.aspxがあれば本当にいいのですが、それに加えて、OOPオタクはすべて、代わりに再利用しているので、私はかっこいいと思うでしょう。コピー/貼り付けの!

したがって、私が正しい方向に進んでいると仮定して、単一のAdd.aspxページを使用する場合、各オブジェクトのすべてのフィールドセットをどのように表すことができますか?非表示/表示できる一連のパネルまたはdivについて考えましたが、そのソリューションが本当に好きかどうかはわかりません。それを行うためのより良い方法はありますか、それとも私はあきらめて、複数の悪い古いオブジェクトの追加.aspxページに戻る必要がありますか?

また、これは単純な古い(3.5)Webフォームアプリです。残念ながら、これにはASP.NETMVCの良さはありません。そのような些細な解決策があるはずであり、私は物事を考えすぎているようですが、私はそれを思い付くことができないので、StackOverflowに目を向けます。:)

0 投票する
3 に答える
739 参照

apache-flex - Flex:コピーと貼り付けを行わずに複数のプロジェクトのクラスを再利用しますか?

OKいくつかのクラスを作成したか、Webで見つけて、複数のプロジェクトで使用する予定です。これらのクラスを各プロジェクトにコピーして貼り付けるのではなく、中央の場所に保存したいと思います。

私のFlexプロジェクトには、パスFlex / WorkSpaces/<workSpaceName>内に独自のワークスペースがあります。

Flexディレクトリ内に別のフォルダを配置し、パッケージをcom.mydomain.whateverにしたい場合

どのフォルダー構造を作成する必要がありますか?また、プロジェクトからコードにアクセスできるようにするにはどうすればよいですか?

ありがとう!

0 投票する
5 に答える
2724 参照

c# - C# でクラス間の共有動作を実装する方法 (もちろん複数の継承なし)

更新:ここにいるほとんどの人が、クラスの設計方法を最初からやり直す必要があると言っています(ちなみに、素晴らしい回答をありがとう!)。ヒントを得て、私は戦略パターンを読み始めました。1 つまたは複数の抽象基本クラスから継承する動作クラス (または戦略クラス) を作成したいと考えています。Type候補クラスは、動作または戦略のように、異なる抽象基本クラス/クラスを持つプロパティを持ちます。多分このようなもの:

コメントや提案はありますか?


元の質問:

私はデザインのパターンと原則を学び、より熟達しようとしています。私は現在、私を困惑させているいくつかのクラスのデザインに取り組んでいます。コードの非常に凝縮されたバージョンを次に示します。

InternalEntryLevelCandidate クラスは主に EntryLevelCandidate ですが、InternalCandidate の実装の一部を共有する必要があります。私が実装と言うのは、実装が異なったり繰り返されたりしたくないからです。それ以外の場合は、共通のコントラクトにインターフェイスを使用し、各クラスに具体的な実装を持ちます。InternalCandidate のプロパティと動作の実装の一部は、共通または共有する必要があります。C++ と Ruby の mixin について読んだことがありますが、これは私がやりたいことに似ているようです。また、単一の「is a」関係を維持しながら、クラスが複数の動作を継承できる動作タイプのアイデアについて説明している興味深いブログ投稿も読みました。http://www.deftflux.net/blog/post/A-good-design-for-multiple-implementation-inheritance.aspx . これは私が望んでいることを伝えているようです。優れた設計手法を使用してこれを達成する方法について、誰かが私に指示を与えることができますか?

0 投票する
2 に答える
96 参照

sql - CASE WHEN テストを 2 回実行するのではなく、結果の 1 つにする方法はありますか?

selectステートメントを2回書き出すことなく、CASE WHENテストの値を結果の1つとして使用する方法はありますか(長くて面倒なので)? 例えば:

SELECT ステートメントの最初の実行結果 (テスト用) を THEN 値としても使用できる方法はありますか? 最初の SELECT の後に「AS max_value」を使用しようとしましたが、SQL エラーが発生しました。

更新: おっと、Tom H. が指摘したように、元の質問で「IS NOT NULL」を忘れていました。

0 投票する
4 に答える
1723 参照

php - Javascript の永続性を回避する方法は?

Javascript vars/etc の基本的な永続性があります。関数/メソッドを呼び出し、次に同じ関数/メソッドを呼び出すと、前回のデータが保持されます。

使用が終わったら vars を削除できますが、その場合、そのインスタンスに対してコードを再度使用する利点が失われます。

では、同じページ内のさまざまな要素で再利用できるコードを記述する適切な方法は何ですか。

したがって、いくつかの異なる要素を指し示すことができるようにコードを記述し、要素ごとに分離されたコードと対話する能力が必要です。

したがって、PHPでは(例として)次のようにします。

その場合、3 つの分離されたスコープで実行されている同じコードです。JSでこれを適切に行うにはどうすればよいですか。jQuery の extend() を使用しても問題が発生します。

ありがとう。