タグ付けされた質問 「oop」

オブジェクト指向プログラミングは、「オブジェクト」を使用したプログラミングパラダイムです。つまり、データフィールドとメソッド、およびそれらの相互作用で構成されるデータ構造です。

4
いつ、なぜクラスを封印しますか?
C#およびC ++ / CLIでは、キーワードsealed(またはNotInheritableVB)を使用して、クラスを継承の可能性から保護します(クラスは継承できません)。オブジェクト指向プログラミングの特徴の1つが継承であることを知っていますが、を使用するsealedとこの機能に反し、継承が停止するように感じます。sealedそれを使用することの利点と重要な時期を示す例はありますか?
87 c#  .net  oop  c++-cli 


7
RuntimeExceptionをスローするメソッドは、メソッドシグネチャでそれを示す必要がありますか?
たとえば、frameworks / JDKの多くのメソッドがスローする可能性があります java.lang.SecurityException ただし、これはメソッドシグネチャには示されていません(これは通常、チェックされた例外のために予約されているためです)。メソッドsigsでRuntimeExceptionsを宣言することには、多くの利点があることを主張したいと思います(たとえば、静的型チェックに似ています)。私は酔っていますか、それともそうではありませんか?

25
デザインパターンの学習/実装(初心者向け)[終了]
現在のところ、この質問は私たちのQ&A形式には適していません。回答は事実、参考資料、または専門知識によって裏付けられることを期待していますが、この質問は、討論、議論、世論調査、または広範な議論を求める可能性があります。この質問を改善して再開できると思われる場合は、ヘルプセンターにアクセスしてガイダンスを入手してください。 8年前に閉鎖されました。 私はこれを理解しようとしている混乱した初心者で愛好家のプログラマーなので、私の質問が少しずれていたり、あまり意味がない場合は許してください。 デザインパターンの使用を中心にSOに関する質問がたくさんありますが、デザインパターンについて学び、実装するための優れたリソースを誰かが持っているのではないかと思います。私は一般的な考え方を理解しており、それらのいくつか(シングルトン、ファクトリメソッド)をいつどのように使用するかを知っていますが、私は見逃していることを知っています。 (念のため、私の好みの言語はC#ですが、他の言語の例から学ぶこともできます)

30
ポリモーフィズム-たった2つの文で定義する[クローズ]
クローズ。この質問はもっと焦点を合わせる必要があります。現在、回答を受け付けていません。 この質問を改善したいですか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てるようにします。 5年前に閉鎖されました。 この質問を改善する 私は他の定義と説明を見てきましたが、どれも私を満足させません。コードや例を使用せずに、最大2つの文でポリモーフィズムを定義できる人がいるかどうかを確認したいと思います。「だから、人/車/缶切りがあります...」またはその単語がどのように派生したかを聞きたくありません(ポリとモーフの意味を知っていることに誰も感心しません)。ポリモーフィズムとは何かを非常によく理解していて、英語を上手に使いこなせる場合は、この質問に、密度は高いものの、短い定義で答えることができるはずです。あなたの定義がポリモーフィズムを正確に定義しているが、それが数回の読み直しを必要とするほど密集している場合、それはまさに私が探しているものです。 なぜ2文しかないのですか?定義が短くてインテリジェントだからです。説明は長く、例とコードが含まれています。説明についてはこちらをご覧ください(これらのページの回答は私の質問には不十分です): ポリモーフィズムvsオーバーライドvsオーバーロードポリモーフィズムをできるだけ 簡単に説明するようにしてください なぜ私はこの質問をしているのですか?同じ質問をされたのですが、満足のいく定義を思い付くことができなかったのです(私の基準ではかなり高いです)。私はこのサイトの偉大な頭脳のいずれかがそれを行うことができるかどうかを見たいと思います。 2文の要件を実際に作成できない場合(定義するのが難しい主題です)、それを超えても問題ありません。アイデアは、実際にポリモーフィズムとは何かを定義し、それが何をするのか、またはそれをどのように使用するのかを説明しない定義を持つことです(違いを理解しますか?)。

7
キャスティングと強制の違いは何ですか?
両方の用語がさまざまなオンライン説明でほぼ同じ意味で使用されているのを見てきました。また、私が調べたほとんどの教科書でも、その違いについて完全には明確ではありません。 あなたたちが知っている違いを説明する明確で簡単な方法はおそらくありますか? 型変換(型キャストとも呼ばれます) 別のタイプを予期するコンテキストで1つのタイプの値を使用すること。 Nonconverting型キャスト(時にはとして知られているタイプのしゃれ) 基になるビットを変更しない変更。 強制 周囲のコンテキストで2番目の型が必要な場合に、コンパイラが1つの型の値を別の型の値に自動的に変換するプロセス。
85 c#  oop 

7
Javascriptでは、このアンダースコアはどういう意味ですか?
var Gallery = Backbone.Controller.extend({ _index: null, _photos: null, _album :null, _subalbums:null, _subphotos:null, _data:null, _photosview:null, _currentsub:null, routes: { "": "index", "subalbum/:id": "subindex", "subalbum/:id/" : "directphoto", "subalbum/:id/:num" : "hashphoto" }, initialize: function(options) { var ws = this; if (this._index === null){ $.ajax({ url: 'data/album1.json', dataType: 'json', data: {}, success: function(data) { ws._data …

5
Rubyのシングルトンクラスとは正確には何ですか?
Rubyのシングルトンクラスはそれ自体がクラスですか?すべてのオブジェクトが「クラス」に属する理由ですか?概念はあいまいですが、クラスメソッドを定義できる理由と関係があると思います(class foo; def foo.bar ...)。 Rubyのシングルトンクラスとは何ですか?
85 ruby  oop  singleton 

11
CoffeeScriptのプライベートメンバー?
CoffeeScriptで非静的なプライベートメンバーを作成する方法を知っている人はいますか?現在、私はこれを行っています。これは、アンダースコアで始まるパブリック変数を使用して、クラス外で使用してはならないことを明確にしています。 class Thing extends EventEmitter constructor: (@_name) -> getName: -> @_name 変数をクラスに入れると静的メンバーになりますが、どうすれば非静的にすることができますか?「ファンシー」にならずにそれも可能ですか?

15
コードを書く前に、アプリケーションのアーキテクチャをどのように計画しますか?[閉まっている]
クローズ。この質問はもっと焦点を合わせる必要があります。現在、回答を受け付けていません。 この質問を改善したいですか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てるようにします。 5年前に閉鎖されました。 この質問を改善する 私が苦労していることの1つは、コードを書く前にアプリケーションのアーキテクチャを計画することです。 アプリケーションが何をする必要があるかを絞り込むための要件を収集することを意味するのではなく、クラス全体、データ、およびフロー構造をレイアウトするための良い方法を効果的に考え、それらの考えを繰り返して、信頼できる計画を立てることを意味します。 IDEを開く前にアクションを念頭に置いてください。現時点では、IDEを開いて空白のプロジェクトを作成し、ビットとボブの作成を開始して、そこからデザインを「成長」させるのは簡単です。 私はUMLを収集することはこれを行う1つの方法ですが、私はそれを経験したことがないので、ちょっと曖昧に思えます。 コードを書く前に、アプリケーションのアーキテクチャをどのように計画しますか?UMLが進むべき道である場合、小さなアプリケーションの開発者に簡潔で実用的な紹介をお勧めできますか? ご意見ありがとうございます。

15
adapter-アダプタパターンの実際の例[クローズ]
閉まっている。この質問は、StackOverflowのガイドラインを満たしていません。現在、回答を受け付けていません。 この質問を改善したいですか?質問を更新して、StackOverflowのトピックになります。 14日前に閉店しました。 この質問を改善する 私のチームにアダプタパターンの使用法を示したいと思います。私はオンラインでたくさんの本や記事を読みました。誰もが概念を理解するのに役立つ例(形状、メモリーカード、電子アダプターなど)を引用していますが、実際のケーススタディはありません。 アダプタパターンのケーススタディを教えてください。 ps stackoverflowで既存の質問を検索しようとしましたが、答えが見つからなかったため、新しい質問として投稿しました。これに対する答えがすでにあることがわかっている場合は、リダイレクトしてください。

9
依存性注入のPythonの方法は何ですか?
前書き Javaの場合、依存性注入は純粋なOOPとして機能します。つまり、実装するインターフェイスを提供し、フレームワークコードで、定義されたインターフェイスを実装するクラスのインスタンスを受け入れます。 これでPythonの場合も同じように実行できますが、Pythonの場合、この方法はオーバーヘッドが大きすぎると思います。では、Pythonの方法でどのように実装しますか? 使用事例 これがフレームワークコードだとしましょう: class FrameworkClass(): def __init__(self, ...): ... def do_the_job(self, ...): # some stuff # depending on some external function 基本的なアプローチ 最も素朴な(そしておそらく最良の?)方法は、外部関数をFrameworkClassコンストラクターに提供してから、do_the_jobメソッドから呼び出すことを要求することです。 フレームワークコード: class FrameworkClass(): def __init__(self, func): self.func = func def do_the_job(self, ...): # some stuff self.func(...) クライアントコード: def my_func(): # my implementation framework_instance = FrameworkClass(my_func) …

27
どうすればより良いオブジェクト指向プログラミングを実践できますか?[閉まっている]
現在のところ、この質問は私たちのQ&A形式には適していません。回答は事実、参考資料、または専門知識によって裏付けられることを期待していますが、この質問は、討論、議論、世論調査、または広範な議論を求める可能性があります。この質問を改善し、場合によっては再開できると思われる場合は、ヘルプセンターにアクセスしてガイダンスを入手してください。 8年前に閉鎖されました。 私は何年もの間オブジェクト指向言語でプログラミングを行ってきましたが、同僚が羨望の的にしていることのいくつかを密かに見ています。それらの多くは、私がどんなに一生懸命努力しても、私が持っていないいくつかの内部OO本能を持っているようです。私はOOに関するすべての良い本を読みましたが、それでもそれを解読することはできないようです。私はプロのサッカー選手になるために110%を与えたが、それを作るための自然な才能を持っていなかった人のように感じます。私は途方に暮れていて、転職を考えています-どうすればいいですか?
84 oop 

11
Pythonの継承のポイントは何ですか?
次のような状況があるとします。 #include <iostream> class Animal { public: virtual void speak() = 0; }; class Dog : public Animal { void speak() { std::cout << "woff!" <<std::endl; } }; class Cat : public Animal { void speak() { std::cout << "meow!" <<std::endl; } }; void makeSpeak(Animal &a) { a.speak(); } int …

15
カプセル化と抽象化の違い
今日は面接をしました。カプセル化と抽象化の違いについて、OOPから質問がありましたか? カプセル化は基本的にデータメンバーとメンバー関数をクラスと呼ばれる単一のユニットにバインドすることであるという私の知識に彼女に返信しました。一方、抽象化は基本的に実装の複雑さを隠し、ユーザーに簡単にアクセスできるようにすることです。彼女は私の答えで大丈夫だろうと思った。しかし、彼女は、両方の目的が情報を隠すことである場合、これら2つの実際の違いは何であるかを尋ねました。私は彼女に答えることができなかった。 この質問をする前に、これら2つのOOPの概念の違いについてStackOverFlowの他のスレッドを読みました。しかし、私は面接官を説得する立場に自分自身を見つけていません。 誰かが最も簡単な例でそれを正当化できますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.