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

システム開発ライフサイクルに関連する単語や概念の客観的な意味や一般的な理解に関する質問

5
プログラミング言語とマークアップ言語とスクリプト言語
これまで、私はこれら3つの主要な違いを知りません。誰かにこれについて尋ねられたとき、私はC#がプログラミング言語であり、HTMLとXMLがマークアップ言語であり、JavaScriptとVBScriptがスクリプト言語であると言うだけです。しかし、それらを互いに区別する主な違いは何ですか?

10
Today()が不純な関数の例なのはなぜですか?
「純粋関数」に関するこのウィキペディアの記事のようなものを読むToday()と、不純関数の例としてリストされているように見えますが、私にはかなり純粋に見えます。正式な入力引数がないためですか?実際の時刻が「関数への入力」として扱われないのはなぜですか。その場合、同じ入力を与えた場合、つまりtoday()同時に2回実行した場合、または時間をさかのぼって再度実行した場合(仮定: ))、出力は同じ時間になります。Today()あなたに乱数を与えることはありません。常に時刻が表示されます。 ウィキペディアの記事には「異なる時間で異なる結果が得られる」と書かれていますが、それは異なるx sin(x)ことを言うと異なる比率が得られるようなものです。そしてsin(x)、純粋な関数の例です。

24
抽象化とは何ですか?[閉まっている]
プログラマーが使用するような、プログラミングの抽象化とは何かについて一般的に合意された定義はありますか?[注意、プログラミングの抽象化は、「抽象化」という単語の辞書定義と混同しないでください。]明確な、または数学的な定義さえありますか?抽象化の明確な例は何ですか?

5
複数回適用でき、最初のアプリケーションを超えて状態を変更しない操作の言葉は何ですか?
私は単語を思い出そうとしています。それは計算理論またはデータベース理論に関連していると思います。最も近い同義語はですatomicが、それは正確ではありません。基本的に、それは、連続して複数回実行された場合でも同じ結果を生成する一種の計算です。つまり、それ自体に副作用は発生しません。 具体的には、chmodコマンド(またはその他の権限に関連する操作)に関するStack Overflowの回答でこの言葉に出くわしました。 うまくいけば、それで十分です。ウィキペディアを突っ込んでも大した助けにはなりません。

8
「抽象化の層」と「間接化のレベル」の違いは何ですか?
両方の用語を同じ意味で使用できるかどうかはわかりません。たぶん、日々のプログラミングに関係のないコンピューターサイエンスの学問的な違いがありますか?または、間違っていなくても両方の用語を同じ意味で使用できますか?たぶん、両方の用語を使用するコンテキストに依存しますか? 編集:両方の用語が互換性があると思う理由は、抽象化レイヤーに関するWikipediaのエントリです。そこでは、David Wheelersが「コンピュータサイエンスのすべての問題は、別のレベルの間接参照によって解決できる」という引用を見つけることができます。

3
Pythonの「クラスメソッド」および「インスタンスメソッド」とは何ですか?
質問に関連するチャットでの質問があり(質問自体はこの質問とは無関係です)、Pythonをまったく知らないかもしれないことが明らかになりました。 私の考えでは、用語は言語によって異なりますが、一般的に機能を次のように分類できます。 [無料]機能 静的メソッド/静的メンバー関数 非静的メソッド/非静的メンバー関数 どうやらPythonには、上記のカテゴリに当てはまらない別の種類の関数があります。それはメソッドですが、「そのクラスを知りません」。 Pythonの「クラスメソッド」と「インスタンスメソッド」とは何ですか?

8
本当に大きなソースコードコミットの用語は何ですか?[閉まっている]
時々、ソフトウェアのコミット履歴を確認すると、実際には大きなコミットがいくつかあることがわかります。数百のソースコード行(デルタ)が変更された10または20のファイルが変更される場合があります。このようなBIGコミットには一般的に使用される用語がありますが、その用語が何であるかを正確に思い出すことはできません。誰も私を助けることができますか?プログラマーがこのようなBIGと巨大なコミットを指すために通常使用する用語は何ですか? ところで、たくさんの変更をまとめてコミットするのは良い習慣ですか? 更新:感動的な議論をありがとう!しかし、「コードボム」は私が探している用語だと思います。

6
優秀なプログラマーがなぜNinjaと呼ばれるのですか?[閉まっている]
忍者プログラマーはどのように定義されていますか?それが単なる経験豊富な開発者である場合、それを説明するより良い方法は本当にありませんか?忍者は、開発者を自慢の妄想で引き付けるように設計された幼稚なマーケティング策略のように聞こえます。それとも何か不足していますか?特に、比較を有効にするプログラマーに必要な忍者の品質を知りたい(クールネスファクター以外)? 忍者の特性とアジャイル開発のいくつかの良い比較を行うこの記事を見つけました。しかし、私は忍者という言葉を雇用目的で使った人たちと、その背後にある動機について聞いてみたいと思います。 更新:議論の両側にいくつかの良い点が挙げられました。これらをブログ投稿で要約しようとしました。JBの回答を受け入れたものとして選択しました。これは、比較を行うためのすべての正当な理由を要約しているためです。


2
「作曲しない」の意味は何ですか?
多くのテキスト、特に関数型プログラミングテキストは、特定のCSの概念が「構成しない」と主張しています。例は次のとおりです。ロックは作成されません、モナドは作成されません。 私はこのフレーズの意味を正確に追跡するのに苦労してきました。構成について考えるとき、関数構成またはオブジェクト集約のいずれか(「継承よりも優先する構成」など)を考えますが、それはここで人々が使用している意味ではないようです。 上記の2つの例(つまり、ロックとモナド)のような式で使用される場合、誰かがこのフレーズの意味を説明できますか?

2
Node.jsはフレームワークですか?[閉まっている]
リクルーター、開発者などは、フレームワークとしてNode.jsを参照しています。私の意見では、これはNode.jsが実際に何であるかについて無知ではありません。 多くの場合、職務記述書では、Node.jsはAngularJS、Reactなどのライブラリとしてグループ化されています。一般的に、違いを知らない人(HR、採用担当者など)によって入力されているように見えます。 私の意見では、Node.jsはプラットフォーム、またはランタイム環境です。ファイルシステムのような他のさまざまなAPIのDOM API(ブラウザーのJavaScript)を切り替えます(ブラウザーではなくサーバーとして実行されるため)。 Node.jsがフレームワークであると人々が考えるのはなぜですか。私が間違っている?実際にはフレームワークですか?

6
表現力とは具体的に何を指しますか?
表現力はウィキペディアによって次のように定義されています: ..その言語で表現および伝達できる幅広いアイデア。 「アイデア」とは、マシンと通信できるもの(操作、構造、アルゴリズムなど)を指しますか?それとも、他の人間に言語でキャプチャして伝達できる「人間」の概念を指しますか? 表現力はどのように評価および測定されますか? たとえば、JavaScriptのような言語を使用して、変数がアンダースコアに続く8桁の数字でなければならない/^_[0-9]{8}$/など、変数名に奇妙な制限を課した場合、表現力は失われますか? それとも、それはばかげて迷惑なだけでしょうか? 明確にするために: 言語に固有の一般的なアイデアによって測定される表現力です: 整数と文字列 ループ 条件付き または、言語が表すことができる具体的でユニークなアイデアの数: 整数1、2 ... 2 ^ 32 「キツネの言うこと」を含む文字列 そして「ファパパパパパパパウ」 それぞれのカエルでカエルの私のコレクション 場合カエルがある緑や何かその後、何かを


4
このタイプのリファクタリングの用語は何ですか
次のリファクタリングの用語があると確信していますが、それを思い出すことができず、Google-fuが失敗しています! リファクタリングは、ステートメントを変更すると、ステートメントが最も影響を与える場所に移動します $test = someFunctionThatReturnsABool(); for($x = 0; $x < 10000; $x++) { if ($test) { echo $x; } } これに $test = someFunctionThatReturnsABool(); if ($test) { for($x = 0; $x < 10000; $x++) { echo $x; } }


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