他の誰かが記入するために書かれた未実装コードの用語はありますか?


91

プログラミングエクササイズ、定型的な生成、ジュニアプログラマが実装するタスクにガイドレールを置くなどで、プログラマに未実装のコードが表示され、「空白を埋める」ように指示されることがあります。たとえば、コンパイルはできるが失敗する単体テスト、または空のメソッドを含むクラス宣言。

この慣習に共通の用語はありますか?


まさにあなたが求めているものではなく、関連しています。コードが何をするかを示すテストスクリプトも用意されている場合は、テスト駆動開発と呼ばれます。
-AJFaraday

32
閉会に賛成票を投じた人にとっては、確かに、「この事に名前を付ける」ということは特に興味深い質問ではないかもしれません。ただし、この質問には、主に意見に基づくものではない客観的な答えがあります。証拠として、以下に答えを示します。

3
「ひどいコーディングの練習」と言うでしょう。
陶酔


3
エラー処理について話している場合、「読者のための運動」は教科書的アプローチのようです。
フィルレロ

回答:


177

スタブまたはスケルトンを参照しています:

スタブ

これは通常、コードがコンパイルされるようにダミー値を返すだけのほとんど空のボディを持つメソッドまたは関数です。

スケルトン

これは、高度なアルゴリズムが実装されているメソッドですが、個々の部分は実装されていません。それらは、空のコードブロック、または最終的にサブタスクを実行するスタブメソッド(上記参照)を参照する場合があります。これは、大規模な設計作業に苦労する可能性のあるジュニアプログラマーのために、または低レベルの詳細に多くの時間を投資する前にアルゴリズムが正しいことを確認するためのソフトウェア設計を表現する良い方法です。


これらのコード要素の使用方法は、スタブ化またはコードスケルトンの作成と呼ばれます


3
私はあなたの用語のほうが好きですが、Ruby on Railsの「足場」という用語は同じ概念だと思います。
16年

また、スタブはこれにふさわしい言葉だと思っていましたが、仕事で他の人から押し戻されていたので、確信がありませんでした。ありがとうございました。
ブランドンアーノルド

学術的な文脈で行われた場合、それは「スタブ」です。専門的/商業的文脈で行われ、それは「技術的負債」です。
アロス

10
@arothコードが機能しない場合、技術的な負債ではありません-実装する必要があります。技術的負債とは、コーディングが不十分なコードが最終的に実稼働環境で使用されることを意味します。つまり、正しくリファクタリングするには多大な努力が必要です。スタブにはテストケースが失敗することが理想的であるため、実稼働環境で緩める前に実装およびテストする必要あります。

2
@BrandonArnold:あなたの大学と話すとき、あなたは彼らが理解する言葉を使うべきです。あなたが上司でない限り。
スティグヘマー

42

スタブ」という用語が使用されているのを見てきました。

たとえば、Eclipseは自動的にコメントを挿入すると信じています

String getName() {
    // TODO: Auto-generated method stub
    return null;
}

その悪名高い自動生成されたスタブに。

また、単体テストのコンテキストで「スタブ」という用語が使用されていることに注意してください。


2
「// TODO:自動生成されたメソッドスタブ」と思います。
immibis

これを知ることは間違いなく便利です。。。
ブランドンアーノルド

17

Visual Studioでは、コードを記述するときに、intellisenseによって「新しいメソッドスタブを生成する」オプションが提供されます。このオプションを選択すると、Visual Studioは、説明したとおりにコードのスタブ/スケルトンを生成します。

Microsoftはこれをスタブと呼んでいるので、これらのスタブとも呼びます。

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