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

定義とは、単語、句、慣用句などの意味または重要性を示すものです。

10
実際、MVCとは何ですか?
真面目なプログラマーとして、MVCとは何かという質問にどのように答えますか? 私の考えでは、MVCは一種の曖昧なトピックです。そのため、視聴者が学習者である場合は、論争の対象とはならない一般的な用語で自由に説明できます。 ただし、知識豊富な聴衆、特にインタビュアーと話している場合、「それは正しくない!...」という反応のリスクを冒さないための方向性を考えるのに苦労しています。私たちは皆、実世界での経験が異なり、同じMVCの実装パターンに2回出会ったことはありません。 具体的には、厳密性、コンポーネント定義、部品の分離(どの部品がどこに適合するか)などに関して意見の相違があるようです。 それで、MVCを正しく、簡潔で、議論の余地のない方法でどのように説明すればよいですか?

7
Inversion of Controlの名前がそのようになっているのはなぜですか?
単語invertor controlは、私が見た定義で制御の反転を定義するためにまったく使用されていません。 定義 ウィキペディア 制御の反転(IoC)は、オブジェクト指向プログラミングの観点からここで表現されるプログラミング手法です。オブジェクト結合は、実行時にアセンブラオブジェクトによってバインドされ、通常、静的解析を使用したコンパイル時には不明です。〜http://en.wikipedia.org/wiki/Inversion_of_control マーティン・ファウラー Inversion of Controlは、Javaコミュニティの一般的なパターンであり、軽量コンテナをワイヤリングしたり、さまざまなプロジェクトのコンポーネントを凝集したアプリケーションに組み立てたりするのに役立ちます。〜に基づいて http://www.martinfowler.com/articles/injection.html (言い換え) それでは、Inversion of ControlがInversion of Controlと呼ばれるのはなぜですか?どのような制御が逆にされており、何によって?反転と制御という用語を使用して、制御の反転を定義する方法はありますか?

4
P対NP対NP完全対NPハードを理解しよう
私はこれらの分類とそれらが存在する理由を理解しようとしています。私の理解は正しいですか?そうでない場合、何ですか? Pは多項式の複雑さ、またはなどの非負の実数の場合です。問題がPに属する場合、多項式時間でゼロから解決できるアルゴリズムが少なくとも1つ存在します。たとえば、分割する場合、各ステップでループしてチェックすることにより、整数が素数であるかどうかを常に把握できます。O(nk)kO(1), O(n1/2), O(n2), O(n3)n2 <= k <= sqrt(n)kn NPは非決定的な多項式の複雑さです。非決定論的であることの意味を私は本当に知りません。多項式時間で検証するのは簡単ですが、答えがわからない場合はゼロから解決する多項式時間である場合とそうでない場合があります。それは以来かもしれ多項式時間で解けること、すべてのP上の問題もNPの問題です。NPの例として整数因数分解が引用されていますが、試行的因数分解にはO(sqrt(n))時間がかかるため、個人的にはなぜPでないのか理解できません。 NP-Complete私はまったく理解していませんが、この例として巡回セールスマン問題が引用されています。しかし、私の意見では、TSPの問題は単にNPである可能性があります。なぜなら、前もってパスが与えられているかどうかを確認するようなものが必要だからです。O(2n n2) time to solve, but O(n) NP-Hardは未知のものでいっぱいだと思います。検証が難しく、解決が難しい。


4
「ビッグデータ」の定義は何ですか?
あるの? 私が見つけることができるすべての定義は、データのサイズ、複雑さ/多様性または速度を説明しています。 ウィキペディアの定義は、実際の番号で見つけた唯一のものです ビッグデータサイズは、2012年現在、単一のデータセットで数十テラバイトから数ペタバイトのデータに至るまで、常に変化するターゲットです。 ただし、これは、次の段落で参照するMIKE2.0の定義と矛盾しているように見えます。これは、「大きな」データは小さく、3GBのデータのみを作成する航空機の100,000個のセンサーは大きいと見なされることを示しています。 IBMは次のように言っていますが: ビッグデータは、サイズの問題よりも単純です。 彼らの定義でサイズを強調しました。 オライリー "volume, velocity and variety"も同様に強調しています。よく説明されていますが、より詳細に、定義は他の人の再ハッシュであるようです-もちろんその逆です。 Computer Weeklyの記事タイトルは、「ビッグデータとは何か、それを使用して競争上の優位性を得るにはどうすればよいか」という記事をかなりうまく要約していると思います。 しかし、ZDNet は2012年から次のように勝ちました。 「ビッグデータ」は、IT市場の高性能コンピューティングニッチから浮上しているキャッチフレーズです...テクノロジーの10のサプライヤーからのプレゼンテーションを見てみると、15ほどの異なる定義が出てくる可能性があります。もちろん、各定義は、そのサプライヤの製品とサービスの必要性をサポートする傾向があります。想像してみろ。 基本的に、「ビッグデータ」は何らかの形で「ビッグ」です。 「大きな」とは何ですか?現時点で定量化できますか? 「大きな」が定量化できない場合、一般性だけに依存しない定義はありますか?

7
ソフトウェアの腐敗とは、主にパフォーマンスのことですか、それとも面倒なコードのことですか?
ソフトウェア腐敗のウィキペディアの定義は、ソフトウェアのパフォーマンスに焦点を当てています。これは私が慣れているものとは異なる使用法です。コードの清潔さとデザインの観点から、コードのすべての標準品質特性(読みやすさ、保守性など)を考慮して、それ以上に考えていました。何が起こっているのか誰も知らないからです。しかし、ソフトウェアの腐敗という用語には、パフォーマンスに特別な言及がありますか?または私はそれがコードの清潔さを指していると思うのは正しいですか?または、これはおそらく、用語の複数の感覚が一般的に使用されている場合です。ユーザーの観点からは、パフォーマンスに関係しています。しかし、ソフトウェア職人にとっては、コードの読み方をより具体的にする必要がありますか?


2
「フィクスチャ」の異なる意味は何ですか?
「フィクスチャ」の概念を理解するのに多少の困難があります。テストスイートとは何か、テストケース、テスト実行は知っていますが、「フィクスチャ」とは正確には何ですか?パラメーター化されたテストケースですか? 「フィクスチャ」という用語の意味またはセマンティクスは、プログラミング言語またはテストフレームワークによってわずかに異なる可能性があるように思えますか?私はphpunitフィクスチャだと思う 「ワールドを既知の状態に設定し、テストが完了したときに元の状態に戻すコード。この既知の状態は、テストのフィクスチャと呼ばれます。」 「フィットネスフィクスチャ」とは少し異なります 「フィクスチャは、Wikiページとテスト対象の実際のシステムであるテスト対象システム(SUT)の間の橋渡し役です。」 この質問に答えることができるソフトウェアテストの専門家がここにいますか?他のプログラミング言語への参照は大歓迎です。

4
「フロントエンド」という用語は「クライアント側」と同義ですか?もしそうなら、これは常にそうですか?
比較的新しい(独学)Web開発者として、フロントエンド、クライアントサイド、バックエンド、サーバーサイドという用語をよく耳にします。私にとって、フロントエンドとバックエンドは、それぞれクライアント側とサーバー側の同義語でした。 ただし、CodeIgniterのようなMVCフレームワークで作業を開始すると、基本的にエンドユーザーが参照するもの(サーバー側コードを含む)を参照するフロントエンドのインスタンスに遭遇しました。エンドユーザーには表示されません(CMSを含む)。私にとって、クライアント側とサーバー側の意味ははるかに具体的です。それらは非常に明確な線で区切られています。一方、フロントエンドとバックエンドはそうではありません。 他のWeb開発者との会話の中で、彼はCodeIgniter(全体)をフロントエンドと呼んでいましたが、これがループを引き起こしました。私は彼を修正してCodeIgniterが私のバックエンドであると言うのか、それとも2つの用語の定義が完全に間違っているのかを確信できませんでした。 フロントエンドとバックエンドの定義を検索すると、いくつかの点で少し混乱しましたが、いくつかの点が明確になりました。これら4つの用語の間に線が引かれている場所と、Web開発のコンテキスト(具体的にはLAMPスタック)でそれらがどのように結び付いているかを知りたいだけです。

3
プログラマが「データ構造」について話すとき、彼らは何を指しているのでしょうか?
プログラマは、「データ構造」について語るとき、彼らは話している抽象データ型のようなリスト、木、ハッシュ、グラフなど、? または、その用語には、複合型(クラスオブジェクト、構造体、列挙型など)やプリミティブ型(ブール、int、charなど)などのデータを保持する構造が含まれますか? プログラマーがこの用語を使用して複雑なデータ構造または抽象データ型を参照するのを聞いたことがありますが、データ構造のリストを提供するウィキペディアの記事には、定義に複合型とプリミティブ型の両方が含まれていますが、これは期待したものではありません理にかなっていますが)。 オンラインの周りを見たとき、私は唯一のような抽象データ型を参照するようプログラミングの意味での用語「データ構造」を参照して他の場所を参照コンピュータサイエンスのストーニーブルック大学の学部からこの講義いる状態を データ構造は、特定の抽象データ型の実際の実装です。 またはデータ構造に関するこのウィキブックでは、次のような文の用語を使用しています。 データ構造は高レベルの抽象化であるため、リストへのアイテムの追加、キュー内で最も優先度の高いアイテムの検索など、データのグループに対する操作を提示します それでは、プログラマが「データ構造」という用語を使用するときに、複雑なデータ構造または抽象データ型を参照するのを聞くのはなぜですか?プログラマーは、辞書の定義とは異なる用語の定義を持っていますか?

7
PBI対ユーザーストーリー
最近、「xページからログインページに移動するとエラーが表示されます。そのエラーを削除したい」というアイテムが製品所有者によって製品バックログに追加されました。 これはユースケースではなく、PBI(Product Backlog Item)であってはならないようです。しかし、私が議論したとき、スクラムマスターは、ユーザーストーリーはPBIではなく、PBIはバグレポート、タスク、ユーザーストーリー、あらゆるもの、文字通り最初に対処する必要のあるアイテムであると教えてくれました。 これについてはわかりません。また、ウェブ上でPBIの適切な定義を見つけることができません。だから、私の質問は、どのようなものがアイテムとして製品バックログに入ることができるのですか?製品バックログアイテムはユーザーストーリーにマッピングされますか?彼らは同じですか?

3
並列処理は並行性を意味しますが、その逆ではありませんか?
並列処理と並行処理は異なるものだとよく読みます。非常に多くの場合、回答者/コメント者は、まったく異なる2つのものであると書いているだけです。しかし、私の見解では、それらは関連していますが、その点について明確にしたいと思います。 たとえば、マルチコアCPUを使用していて、計算をx個の小さな計算(たとえば、fork / joinを使用)に分割し、それぞれを独自のスレッドで実行する場合、並列計算を実行するプログラムがあります(なぜならおそらく、任意の時点で複数のスレッドが複数のコア上で実行しようとして)されていると同時右のもの? たとえば、単にJavaを使用して、イベントディスパッチスレッドでUIイベントと再描画を処理し、自分で作成した唯一のスレッドを実行している場合、並行プログラム(EDT + GCスレッド+メインスレッド)がありますなど)が、並列ではありません。 これが正しいかどうか、および並列処理(「単一だがマルチコア」システムで)が常に並行性を意味するかどうかを知りたいのですが。 また、マルチスレッドプログラムはマルチコアCPUで実行されていますが、異なるスレッドがまったく異なる計算を実行している場合、「並列処理」を使用していると見なされますか?

4
「状態」の定義
状態変数や状態マシンなどの「状態」を新しい(以前は非)プログラマーに定義する良い方法は何ですか?この概念がソフトウェアの作成に役立つ理由を説明する良い方法は何ですか?状態の概念は、プログラミングコースや書籍の開始時に一般的に明示的に教えられていますか?

2
堅牢性とフォールトトレランスの違いは何ですか?
システム/プログラム/分散アルゴリズム/ ...は、多くの場合、述語堅牢またはフォールトトレラントで記述されています。 違いはなんですか? 詳細: + robust + "fault-tolerant"でGoogleを検索すると、2回しかヒットしませんが、どちらも役に立ちません。 Googleで学者の用語を検索すると、タイトルに両方の用語が含まれている多くの論文が見つかります。残念ながら、彼らは用語を正確に定義していません:(しかし、彼らは両方の用語を使用しているので、どちらも他方を意味しないようです。

5
「問題ドメイン」とは
学校プロジェクトのプログラムを文書化する必要があり、「問題ドメイン」というセクションがありますが、このセクションで何を議論するのかわかりません。 質問は次のとおりです。問題の領域で何を議論すべきか。

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