タグ付けされた質問 「language-agnostic」

このタグは、特定のプログラミング言語に依存しないプログラミングの質問に使用します。

30
配列とリンクリスト
誰かがリンクされたリストを配列で使用したいのはなぜですか? リンクされたリストをコーディングすることは、間違いなく、配列を使用するよりも少し多くの仕事であり、何が追加の努力を正当化するのか疑問に思うかもしれません。 新しい要素の挿入はリンクされたリストでは取るに足らないことだと思いますが、これは配列の主要な作業です。リンクリストを使用して一連のデータを格納することと、配列に格納することには、他に利点がありますか? この質問は一般的なデータ構造に関係していますが、他の質問は特定のJavaクラスについて具体的に尋ねているため、この質問はこの質問の複製ではありません。

6
浮動小数点数が不正確なのはなぜですか?
一部の数値が浮動小数点数として格納されると、精度が失われるのはなぜですか? たとえば、10進数9.2は2つの10進整数(92/10)の比率として正確に表すことができ、両方とも2進数()で正確に表すことができます0b1011100/0b1010。ただし、浮動小数点数として保存された同じ比率が正確に次の値になることはありません9.2。 32-bit "single precision" float: 9.19999980926513671875 64-bit "double precision" float: 9.199999999999999289457264239899814128875732421875 そのように見える単純な数が64ビットのメモリで表現するには「大きすぎる」のはなぜでしょうか。

11
地図と辞書の違いは何ですか?
マップがキーを値にマップするデータ構造であることは知っています。辞書は同じではありませんか?地図と辞書1の違いは何ですか? 1.それらが言語XまたはYでどのように定義されているかを尋ねているのではなく(これは一般にSOでここで求められているようです)、理論の違いを知りたいです。

24
例外を通常の制御フローとして使用しないのはなぜですか?
私がGoogledを使用した可能性があるすべての標準的な回答を回避するために、私はあなたが自由に攻撃できる例を提供します。 C#やJava(とあまりにも多くの人は)タイプの「オーバーフローの行動のいくつかの私がすべてではないのと同様に行うのたっぷり持っている(例えばtype.MaxValue + type.SmallestValue == type.MinValue例: int.MaxValue + 1 == int.MinValue)。 しかし、私の悪質な性質を見て、この動作を拡張して、この傷害にいくつかの侮辱を加えますDateTime。たとえば、オーバーライドされたタイプとしましょう。(私DateTimeは.NETで封印されていることを知っていますが、この例では、DateTimeが封印されていないことを除いて、C#とまったく同じ擬似言語を使用しています)。 オーバーライドされたAddメソッド: /// <summary> /// Increments this date with a timespan, but loops when /// the maximum value for datetime is exceeded. /// </summary> /// <param name="ts">The timespan to (try to) add</param> /// <returns>The Date, incremented with the given …

5
「ファーストクラス」オブジェクトとは何ですか?
特定のプログラミング言語でオブジェクトまたは何か他のものが「ファーストクラス」であると言われるのはいつですか?なぜですか?彼らはそうでない言語と何が違うのですか? 編集。「すべてがオブジェクトである」(Pythonのように)と言うとき、彼は実際に「すべてがファーストクラス」であることを意味しますか?

15
ストリームの概念を説明できますか?
ストリームは一連のバイトの表現であることを理解しています。各ストリームは、指定されたバッキングストアに対してバイトを読み書きする手段を提供します。しかし、ストリームのポイントは何ですか?なぜ私たちがやり取りしているのは、バッキングストア自体ではないのですか? どんな理由であれ、このコンセプトは私のためにクリックするだけではありません。たくさんの記事を読みましたが、類推か何かが必要だと思います。

7
デザインパターン:ファクトリvsファクトリメソッドvs抽象ファクトリ
ウェブサイトからデザインパターンを読んでいた そこで、ファクトリー、ファクトリーメソッド、アブストラクトファクトリーについて読みましたが、それらは非常に混乱しており、定義が明確ではありません。定義によると ファクトリ-インスタンス化ロジックをクライアントに公開せずにオブジェクトを作成し、共通のインターフェースを介して新しく作成されたオブジェクトを参照します。ファクトリーメソッドの簡易バージョンです ファクトリメソッド-オブジェクトを作成するためのインターフェイスを定義しますが、インスタンス化するクラスをサブクラスに決定させ、共通のインターフェイスを通じて新しく作成されたオブジェクトを参照させます。 抽象ファクトリー-クラスを明示的に指定せずに、関連オブジェクトのファミリーを作成するためのインターフェースを提供します。 Abstract FactoryとFactory Methodに関する他のスタックオーバーフロースレッドも調べましたが、そこに描画されたUMLダイアグラムは理解をさらに悪くします。 誰か教えてください これら3つのパターンはどのように違うのですか? いつ使用するのですか? また、可能であれば、これらのパターンに関連するJavaの例はありますか?

17
すべての再帰を反復に変換できますか?
redditのスレッドが明らかに興味深い質問を育てました。 末尾再帰関数は簡単に反復関数に変換できます。その他のものは、明示的なスタックを使用して変換できます。すべての再帰を反復に変換できますか? 投稿の(counter?)の例はペアです: (define (num-ways x y) (case ((= x 0) 1) ((= y 0) 1) (num-ways2 x y) )) (define (num-ways2 x y) (+ (num-ways (- x 1) y) (num-ways x (- y 1))


23
変数「i」と「j」がカウンターに使用されるのはなぜですか?
ロックされています。この質問とトピックへの回答はロックされています。質問はトピックから外れていますが、歴史的に重要です。現在、新しい回答や相互作用を受け入れていません。 これはまったく馬鹿げた質問のように思えるかもしれませんが、私は質問したくないので不思議です... 「i」と「j」がほとんどの制御構造でカウンタとして使用する変数になったのはなぜですか? 常識的には未知の値を表すのに使われるXのようなものですが、皆が同じように何度も何度も教えられるのには理由があるに違いないと思います。 それは実際にベストプラクティスや慣例に推奨されているためですか、それとも背後に不明瞭な理由がありますか? 念のために、好きな名前を付けられることと、変数名は関係ないことを知っています。


17
最高の一般的なSVN無視パターン?
使用するのに最適な(またはできるだけ良い)一般的なSVN無視パターンは何ですか? IDE、エディター、コンパイラー、プラグイン、プラットフォームなど、さまざまな特定のファイルと、「重複」する(つまり、あるタイプのプロジェクトでは望ましいが、他のタイプのプロジェクトでは望ましくない)いくつかのファイルタイプがあります。 ただし、開発環境の詳細に関係なく、自動的にソース管理に含めたくないファイルの種類は多数あります。 この質問への回答は、プロジェクトの出発点として役立ちます。必要な環境固有のアイテムをいくつか追加するだけで済みます。他のバージョン管理システム(VCS)にも適応できます。

20
「疎結合」とは何ですか?例を挙げてください
「ルーズカップリング」の概念を理解できないようです。「緩い」という言葉が通常否定的な意味を持つことは役に立たないと思うので、疎結合が良いことをいつも忘れますことであることます。 誰かがこの概念を説明する「前」と「後」のコード(または疑似コード)を見せてくれませんか?

24
さまざまなアプローチや概念を理解するために学ぶべき重要な言語は何ですか?[閉まっている]
現在のところ、この質問は、Q&A形式には適していません。事実、参考文献、専門知識によって回答が裏付けられることを期待していますが、この質問は、討論、議論、投票、または拡張ディスカッションを求める可能性があります。この質問が改善され、場合によっては再開できると思われる場合は、ヘルプセンターにアクセスしてください。 9年前休業。 ロックされています。この質問とトピックへの回答はロックされています。質問はトピックから外れていますが、歴史的に重要です。現在、新しい回答や相互作用を受け入れていません。 ボルトカッターとウォッカのボトルが1つあれば、すべてがウルフブリッツァーのボートハウスのドアの鍵のように見えます。(xkcdを読み取らない場合は、ハンマーと釘で置き換えてください) 私は現在、Clojure、Python、Java、およびPHPをプログラミングしているので、CとLISPの構文、および空白の事柄に精通しています。私は、命令型、関数型、不変型、OOP、およびいくつかの型システムなどを知っています。もっと欲しい! 異なるアプローチを採用し、実用的なツールの選択または理論的な理解に役立つ言語は何ですか? 私は他の関数型言語(Haskell)や他の命令型OOP言語(Ruby)を学ぶ気になりませんし、Brainfuckのような非実用的な楽しい言語も練習したくありません。 私が見つけた非常に興味深いことの1つは、Factorのようなモノイコニックスタックベースの言語です。 ほとんどの概念を理解していて、すべての質問に答えていると感じたときだけ、自分のおもちゃの言語について考え始め、自分の個人的な好みをすべて含めたいと思います。

8
IOException:別のプロセスが使用しているため、プロセスはファイル 'file path'にアクセスできません
私はいくつかのコードを持っており、それが実行されたとき、それはスローIOExceptionと言って、 別のプロセスによって使用されているため、プロセスはファイル 'filename'にアクセスできません これはどういう意味ですか。どうすればよいですか。

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