問題タブ [framework-design]
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.
.net - Array.Sort() および Array.IndexOf() メソッドが静的なのはなぜですか?
Array.Sort()およびArray.IndexOf()メソッドが静的になり、同様のArrayList.Sort()およびArrayList.IndexOf()メソッドがメンバーメソッドとして設計されている理由は常に興味がありました。アイデアをありがとう。
php - オープン ソースへの移行方法とコミュニティ サポートの取得方法
私は PHP フレームワーク (もちろん MVC) を開発し、それを EZPHP と名付けました。これはほぼ完成しており、間もなく公開される予定です。
私の質問は、それをオープンソース プロジェクトにする方法、またはそうするために何をすべきか、そしてどこに提出すればよいかということです。
世界中の多くの開発者が php に取り組んでおり、それを優れたスクリプト言語にしています。
簡単に言えば、世界中の優れた開発者のサポートを受けて、オープン ソースを実現したいと考えています。
前もって感謝します :)
session - node.js にセッション ストレージを実装するにはどうすればよいですか
node.jsの Web フレームワークである josiを作成しています。そして、セッション ストレージを追加したいと思います。これを実装する最良の方法は何ですか?おそらくCookieベースである必要があると思いますが、他のフレームワークに別のアプローチがあるかどうかを知りたいです。
c# - ReSharperは、メンバー「EntityID」の大文字の「ID」について文句を言います
クラスにプロパティ「EntityID」があります。Resharper(5.1)は言う
名前「EntityID」がルール「メソッド、プロパティ、およびイベント」と一致しません。推奨される名前は「EntityId」です。
ただし、IMHOは、クラスライブラリ開発者向けの設計ガイドラインの命名規則に従っています。'EntityID'は完全に問題ないはずです:
- コンピューティング分野で一般的に受け入れられていない頭字語は使用しないでください。
- 必要に応じて、よく知られている頭字語を使用して、長いフレーズ名を置き換えます。たとえば、ユーザーインターフェイスにはUIを使用し、オンライン分析処理にはOLAPを使用します。
- 頭字語を使用する場合は、2文字を超える頭字語にはPascalケースまたはキャメルケースを使用してください。たとえば、HtmlButtonまたはhtmlButtonを使用します。ただし、System.IoではなくSystem.IOのように、2文字のみで構成される頭字語を大文字にする必要があります。
- 識別子やパラメータ名に略語を使用しないでください。略語を使用する必要がある場合は、単語の標準的な略語と矛盾する場合でも、2文字を超える略語にはキャメルケースを使用してください。
*更新:*ガイドラインの最新バージョンにも次のように記載されています。
キャメルケースの識別子の最初の単語を除いて、2文字の頭字語の両方の文字を大文字にしてください。 DBRateという名前のプロパティは、Pascalで大文字と小文字が区別される識別子の最初の単語として使用される短い頭字語(DB)の例です。ioChannelという名前のパラメーターは、キャメルケースの識別子の最初の単語として使用される短い頭字語(IO)の例です。
ガイドラインを正しく理解していますか?もしそうなら、どうすればReSharperに「EntityID」(よく知られている2文字の頭字語)を受け入れさせ、「HTMLReader」(HtmlReaderである必要があります)を拒否させることができますか。
c# - 良いクラス名のアイデア
次のパブリックインターフェイスを使用して、クラスにどのように名前を付けますか。
asp.net - モジュール性を備えたよく組織化された ASP.NET アプリケーションを設計するための最良のアプローチ
製品開発のための Web アプリケーション開発フレームワークについて考えようとしています。多くのサブモジュールを含む ASP.NET アプリケーションを構築したいと考えています。私の要件は次のようなものです:
アプリケーションは、CRM、バグトラッカー、在庫管理、財務管理などのさまざまなモジュールのスイートになります。
各モジュールには独自の DLL が必要です。
1 つのプロジェクトは、アプリケーションの外部コンテナー (フレームワークなど) 用である必要があり、このプロジェクトは、ソリューション内の他のすべてのモジュール (Web アプリケーション タイプ) を外部コンテナーにもたらす必要があります。(HTML にフレームがあるようなもの)。そのため、1 日の終わりにのみ外部コンテナー Web アプリケーションを公開し、それを介して他のすべての Web アプリケーション プロジェクトにアクセスします。
モジュールごとに個別の DLL を用意したいので、スイート全体を制御する単一の DLL をデプロイするときにアプリケーションが壊れる心配はありません。
自分の考えが正しい方向に進んでいるかどうかはわかりません。私が探している最終的な結果は、よく管理され、整理された、モジュール式の Web アプリケーション スイートです。
MVC ではなく、ASP.NET Web フォームです。開発にはVS2010を使用します。
これを行うための最良のアプローチは何ですか?
編集:
外部コンテナーという用語は、さまざまなモジュールへのリンクを持つマスター ページのように機能し、さまざまなモジュールが常に同じプロジェクトにあるとは限らないことを意味します。それらは、同じソリューションの下で別のプロジェクトにすることができます。そして、その日の終わりまでに、そのプロジェクトのみを公開し、さまざまなモジュールをそれにもたらすという印象を受けています。
php - すべてのメソッドが PHP で MyResult オブジェクトを返すようにすることは、良い/常識的なプログラミング手法ですか?
MVC アーキテクチャで設計されたプログラムのいくつかの層を調べてみると、より深い層のメソッドが返す結果についてより多くの情報が必要であり、いつこの情報が必要になるかを予測できるとは限らないことがわかりました。そして、抽象化のために、そのメソッドがアプリケーション固有のログに何かを出力したり (そのメソッドは別のプログラムで使用される可能性があります)、または上記の他のレイヤーのように特定のアプリケーションに依存する動作をしたくない場合があります。
たとえば、特定のユーティリティ関数では、アクションを実行する前にいくつかの前提条件チェックが失敗する場合があります。それらのいずれかで false を返すと、呼び出し元は何が起こったのかわかりません。false を返し、何が起こったかをアプリケーション ログに記録すると、その関数がアプリケーション固有の動作にバインドされます。
質問: MyResult という小さなクラスを実装し、応答ステータス (ok/false)、メッセージ、最終的な整数コード、および呼び出し元が可能なオブジェクト プレースホルダー (配列またはオブジェクト) を返すようにすることは、良い/一般的な方法ですか?返されたオブジェクトにアクセスしますか? この MyResult クラスはシステム全体で使用され、すべてのメソッドとその呼び出し元の間で共通の「方言」になります。すべてのメソッドは、常に MyResult のインスタンスを返します。
language-agnostic - UI フレームワークでマウスとキーボードのイベントをどのように伝達しますか?
コンソール ユーザー インターフェイス フレームワークのレンダリング バッファーと基本的なメッセージ ポンプの作業は完了しましたが、画面上のすべてのウィジェット (コントロール) にイベントを伝達する必要があります。
どうやら私には2つのオプションがあります:
- メッセージポンプを使用したすべてのコントロールの集中登録(あまり良くないと思います)
また
- 「ビジュアル ツリー」による階層的な伝播
あなたならどうしますか?
c# - 重要な情報にはToStringを使用する必要がありますか?
ToString()
いくつかの重要な情報(デバッグ情報だけでなく)をオーバーライドして返すコードに出くわしました。このタイプのユーザーは、ToString()
その重要なデータを呼び出して解析します。
私の意見は、何年にもわたってさまざまな断片を読んだことから、それToString()
はかなり弱い、つまり、意味のあるものを表示するために(必要に応じて)contract
オーバーライドするというものです。
私がそこに表示すると言ったのを参照してください?私が出くわしたコードは、このタイプのインスタンスのテキスト表現に非常に具体的であることに依存していました。予想以外のものを追加すると、あらゆる種類の問題が発生します。
したがって、私の質問は、オブジェクトのテキスト表現が重要である場合、ToString()
使用する必要があるか、またはより明示的なメソッド/プロパティを使用する必要があるAsText
かどうかです。
user-interface - GUI フレームワークの設計
プロジェクト用のカスタム GUI フレームワークを作成する必要があります。ボタン、画像、テキストなどを含む非常に原始的な GUI フレームワークを実際に作成しました。しかし、それは非常に単純で、GUI フレームワークの設計に関する予備知識はありません。私たちが取り組んでいるプロジェクトは少し深刻になり、私はより良い仕事をする必要があります. では、どのような書籍やドキュメントをお勧めしますか?
注: おそらくオブジェクト指向の方法でフレームワークを作成したいと考えており、おそらく C# を使用しますが、ドキュメントは C# である必要はありません。