Экстремальное программирование. Разработка через тестирование



Download 1,35 Mb.
Pdf ko'rish
bet46/140
Sana15.04.2022
Hajmi1,35 Mb.
#555128
1   ...   42   43   44   45   46   47   48   49   ...   140
Bog'liq
Экстремальное программирование Разработка через тестирование PDFDrive

Метафора
Лично д ля меня самым большим сюрпризом в д анном примере
явило сь впечатляющее отличие окончательного д изайна от тех
разработок, с которыми мне приход ило сь иметь д ело д о написания этой
книги. Я выполнял разработку аналогичного мультивалютного код а д ля
различных программных систем, реально используемых в производ стве,
по меньшей мере три раза (насколько я могу припомнить). Кроме того, я
использовал эту же зад ачу д ля разного род а публикаций еще раз шесть
или семь. Помимо публикаций я пятнад цать раз программировал этот
пример перед ауд иторией на различных конференциях (программировал
со сцены – звучит зд орово, но выгляд ит менее впечатляюще). Наконец,
прежд е чем написать окончательный вариант первой части д анной
книги, я перебрал три или четыре различных направления разработки
код а (я менял направление своих мыслей в соответствии с
по ступавшими ранними рецензиями и отзывами о написанном
материале). И вот, пока я работал над текстом первой части, мне в
голову 
пришла 
мысль 
использовать 
в 
качестве 
метафоры


математические выражения
(expressions). В результате д изайн стал
развиваться по совершенно иному, не известному мне ранее пути.
Я никогд а не д умал, что метафора – это настолько мощный
инструмент. Многие д умают, что метафора – это всего лишь источник
имен. Разве не так? Похоже, что нет.
Для пред ставления «комбинации нескольких д енежных величин,
которые могут быть выражены в разных валютах», Уорд Каннингэм
использовал метафору 
вектора
. Имеется в вид у математический вектор –
набор коэффициентов, кажд ому из которых соответствует некоторая
валюта. Лично я некоторое время использовал метафору 
суммы денег
(MoneySum), затем прид умал 
денежный мешок
(MoneyBag) – звучит
понятно и близко к реально сти, – наконец, о становился на метафоре
бумажника
(Wallet). Что такое бумажник и как он функционирует,
известно абсолютно всем. Все эти метафоры под разумевают, что набор
д енежных значений (объектов Money) является пло ским. Иначе говоря,
выражение 2 USD + 5 CHF + 3 USD эквивалентно выражению 5 USD + 5
CHF. Два значения в од ной и той же валюте автоматически сливаются в
од но.
Метафора 
математического 
выражения
избавила 
меня 
от
множества неприятных проблем, связанных со слиянием д ублирующихся
валют. Результирующий код получился чище, чем я когд а-либо вид ел.
Конечно же, я несколько обеспокоен производ ительно стью код а,
о снованного на под обной метафоре, од нако, прежд е чем приступать к
оптимизации, я намерен проанализировать статистику обращений к
различным участкам код а.
Почему я был вынужд ен переписать заново то, что я уже писал д о
этого не меньше 20 раз? Буд у ли я и д альше сталкиваться с под обными
сюрпризами? Существует ли спо соб, который позволит мне найти
правильное решение, по крайней мере в течение первых трех попыток? А
может быть, этот спо соб позволит мне найти правильное решение с
первой попытки?

Download 1,35 Mb.

Do'stlaringiz bilan baham:
1   ...   42   43   44   45   46   47   48   49   ...   140




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish