20 September 2017

furrry: (frustration)
Этюд.

Все имена и события в произведении вымышленны, любые совпадения с реальными людьми, событиями и языками программирования - чистая случайность.

Инженер1: Нам надо создать робота, который по нажатию кнопки Клиентом будет идти к холодильнику, и приносить Клиенту бутылку холодного пива заданной Клиентом марки.
Инженер2: (запускает vim, задумывается): А что должен делать робот, если холодного пива заданной марки в холодильнике нет?
Инженер1: э...нет пива? а такое бывает? Ну наверное приносить пиво другой марки..или теплое пиво..или не приносить ничего..мне кажется, клиента устроит любое пиво.
Инженер2: (закрывая vim): ты уверен? Давай спросим у клиента?

Инженер2: Дорогой клиент! А что должен делать робот, если холодного пива заданной марки в холодильнике нет? Должен ли робот:
a) принести тебе теплого пива той же марки
b) холодного пива другой марки
с) принесть хоть что-нибудь
d) встать у холодильника и ждать появления там пива
e) вернуться и доложить о невозможности выполнения задания
?

Клиент: Что ты имеешь ввиду, говоря "нет пива"? Очевидно же, что я не буду нажимать на кнопку и посылать робота за пивом, если я не поставил пиво в холодильник. Если я нажимаю на кнопку, значит пиво там есть. А если пива нет, то это моя зона ответственности сначала поставить пиво, а потом нажимать на кнопку.

Инженер2: да, но все-таки..давай представим на минутку, что робот пришел к холодильнику, а холодного пива твой марки там нет.

Клиент: ты имеешь ввиду ситуацию, когда мы пиво туда еще не поставили, или когда мы его уже все выпили? В первом случае это наша проблема - мы всегда сначала ставим пиво, а потом уже нажимаем на кнопку, так что не беспокойтесь. Но если вдруг...ну пусть приносит какое есть холодное..Во втором случае...На практике второй случай никогда не реализуется, потому что мы всегда ставим достаточно пива в холодильник.

Инженер2: да, но...вообще-то мне все равно, почему холодного пива там нет..может, холодильник сломался и не холодит..или кто-то еще пиво выпил..или у холодильника дверцу заклинило. Так все-таки, что должен делать робот?

Клиент: Ну уговорили, давайте сделаем так, чтобы робот возвращался и говорил, что "Пива Нет!".

Инженер2 запускает vim и набирает include "fmt".
Занавес.

Profile

furrry: (Default)
Jen

October 2017

S M T W T F S
1234567
8 91011121314
151617 18192021
22232425262728
293031    

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated 19 October 2017 18:08
Powered by Dreamwidth Studios