Функція-заглушка

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

Функція-заглушка[1] (англ. stub function) - функція, що не виконує жодної осмисленої дії, і яка повертає порожній результат або вхідні дані в незмінному вигляді. Те ж саме, що заглушка методу.

Заглушка може імітувати поведінку існуючого коду (наприклад, процедури на віддаленому комп'ютері) або бути тимчасовою заміною ще нествореного коду. Наприклад, замість функції, що виконує складні обчислення, можна тимчасово (поки не буде написана сама функція) поставити заглушку, що повертає завжди 1, і відлагоджувати інші функції, що залежать від неї.

Реалізація[ред. | ред. код]

Приклад заглушки на псевдокоді може виглядати наступним чином:

   ПОЧАТОК
       Температура = ОтриматиТемпературу(Зовні)
       ЯКЩО Температура > 40 ТОДІ
            ДРУКУВАТИ "Спекотно!"
       КІНЕЦЬ ЯКЩО
   КІНЕЦЬ
   ФУНКЦІЯ ОтриматиТемпературу(Джерело всерединіЧиЗовні)
        ПОВЕРНУТИ 42
   КІНЕЦЬ ОтриматиТемпературу

Даний псевдокод використовує функцію ОтриматиТемпературу, яка повертає температуру. Функція ОтриматиТемпературу повинна отримати значення температури з вказаного джерела, але в поточному варіанті ця функція не містить необхідний код. Таким чином ОтриматиТемпературу по суті не виконує необхідну роботу, проте вона повертає конкретне значення, дозволяючи основній програмі бути, принаймні частково протестованою. Також зверніть увагу, що, хоча функція приймає параметр типу джерела, який визначає, чи потрібно отримати температуру всередині або зовні, вона не використовує фактичне передане значення(аргумент всерединіЧиЗовні) в своїй логіці.

Приклади реалізації[ред. | ред. код]

C#[ред. | ред. код]

int GetDayOfYear(DateTime now)
{
   return 42;
}

Python[ред. | ред. код]

def GetDayOfYear(date):
    return 42

Див. також[ред. | ред. код]

Примітки[ред. | ред. код]

  1. Нейл Дейл, Чип Уимз, Марк Хедингтон. Программирование на C++. — М. : ДМК Пресс, 2000. — С. 294. — ISBN 5-93700-008-0.

Посилання[ред. | ред. код]