Она не смеялась, честное слово. Она успела приготовить ужин, убраться в квартире — после того, как Игорь принялся за ремонтные работы, накопилось немало пыли и прочего мусора, — и сделать ещё целую сотню полезных дел, а он забирался на слишком высокий стул, стукался головой о потолок, падал на пол непонятно с какой радости, вскакивал, едва не перевернул на себя единственный выживший в этом доме вазон, кажется, привезённый тоже Сашей.

В общем, каковы б действия ни были им произведены, они не имели никакого успеха. В конце концов, отбросив в сторону дурную затею починить люстру, Игорь отбросил плафон на диван, сам устроился на полу и тяжело вздохнул.

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

— Ну, почему же бездарь? — смилостивилась Саша. — Во-первых, ты гениальный программист.

— Код мне люстру не установит.

— Во-вторых, твоя зарплата позволяет тебе нанять кого угодно, чтобы тебе починили что угодно, — он не поднимал головы и не понял сначала, что за шум. — В-третьих, ты уже почти всё сделал, и остаётся только прицепить плафон.

— Подумать только, какая малость!

— В-четвёртых, Игорь, тут не надо ничего прикручивать, тут просто два крючка, на которые надо его повесить. Ты ж уже прицепил световой блок.

Он вскинул голову. Плафон красовался на своём положенном месте, целёхонький, и Саша стояла на табуретке, скрестив руки на груди.

— Как крючки? — поразился Игорь, запрыгивая на всё ту же табуретку. Саша удержалась на ней и оказалась в поразительной близости. — Боже… Я — слепой придурок, который сутки не мог прицепить лампу, потому что не видел два несчастных крючка.

— Ты просто заработался.

— Саша, ты — гений! — покорно признал Ольшанский. — А я — полнейшее ничтожество, которого надо выселить из дома за такую профнепригодность.

— Прекрати, — рассмеялась девушка. — Ты есть будешь?

Есть ему сейчас совершенно не хотелось. Саша стояла совсем рядом, деваться ей было некуда, и Игорь чувствовал себя восторженным маленьким ребёнком, увидавшим впервые в жизни кого-то столь достойного, как она. Девушка даже не успела спрыгнуть со стула, прежде чем он обнял её, прижал к себе и поцеловал.

На поцелуй она ответила, но обнять его смогла только после того, как наскоро вытерла руки о передник — вероятно, готовила минуту назад.

— У меня там… — пытаясь отстраниться, пискнула Саша, — на плите…

— Ничего страшного, — ответил Игорь, прижимая её к себе. — Потом выключишь.

Благо, ему хватило ума не сказать что-то вроде "это не займёт много времени".

— Так зальёт же газ! — воскликнула Александра и тут же каким-то чудом спрыгнула с табурета. — Ты не понимаешь…

— Саша!

— Ты хочешь, чтобы мы устроили пожар? — возмутилась она уже откуда-то с кухни. — Или чтобы у меня сгорел борщ? — что-то загремело, а Игорь для проверки щёлкнул пару раз выключателем в гостиной. Люстра отлично работала, а плафон совершенно не спешил срываться со своих крючков и падать.

— Мне всё равно, что будет с квартирой или борщом, — буркнул он себе под нос. — В том, чего я на самом деле хочу, мне постоянно кто-то мешает.

— Я всё слышу! — крикнула с кухни Саша. — Мой руки и иди есть. И не ворчи там, как маленький ребёнок!

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

274

2 августа 2017 года

Среда

С каждым днём жить вместе становилось всё более невыносимо. И не то чтобы они не сходились характерами, нет, наоборот, с этим как раз было всё в полном порядке! Они нравились друг другу, вызывали взаимную симпатию (и, как хотелось верить Игорю, взаимные желания). Но у них был не в меру вредный кот и не в меру много работы. Именно по этой причине вставать приходилось рано, а из-за того, что сегодняшний митинг Игорь назначил на восемь утра, надеясь разобраться с делами пораньше, а они вскочили только в семь пятнадцать, разминуться в ванной, как обычно, не удалось.

Саша вызывала у Игоря вполне естественные желания. Именно по этой причине, когда она выскользнула из душа в одном полотенце, потому что забыла взять с собой одежду и не знала, что он торчит под дверью и ждёт своей очереди, воцарилась воистину неловкая тишина.

Он видел её в платьях, видел в той излишне тёплой пижаме, первой или второй, но в одном только махровом куске ткани — ещё ни разу. Влажные после душа волосы были собраны в узел, открывая тонкую длинную шею и худые плечи, полотенце старательно сползало, как бы Саша его ни подтягивала…

Игорь не успел отреагировать. Они спешили, Саша прошмыгнула мимо, напрочь разрушив все удобные и не очень моменты, и уже из спальни напомнила, что они страшно опаздывают, и Игорь поплёлся в душ, проклиная утро, собственную спешку и то дурацкое полотенце.

…Сейчас же, на работе, он искренне старался не смотреть на Александру. Это было чревато последствиями — он предполагал, что вряд ли отвернётся добровольно, и, к тому же, не следовало вызывать у коллег лишний повод пофантазировать относительно их личной жизни.

Именно поэтому, ткнув в руки каждому по задаче, он вернулся к общей диаграмме и принялся рассказывать, что и кто должен делать.

Стажёра всё ещё не было. Регина клятвенно обещала подыскать нужную кандидатуру, но пока что весьма плохо справлялась со взятыми на себя обязательствами, и Игорь предполагал, что счастье — явление стажёра миру, — случится ещё не скоро.

— Вот здесь, — попытался максимально сосредоточенно промолвить он, — мы должны имплементировать интерфейс, — Игорь ткнул пальцем в заковыристое название, — и нарастить как минимум три функции. Я считаю, что статистику лучше прикрутить отдельным блоком, и сделать связующий класс. Кто-нибудь ещё хочет что-то сказать? Есть идеи?

— А если связь не выносить отдельно? — предложила Саша. — А минимизировать контакты. Мы же всё время наследуем эти функции.

— Да, — согласился Дима, — но в тот же момент, у нас есть места, в которых такое связующее звено кажется более удобным, — он обвёл в отдельный кружочек новое название и ткнул в него ручкой. — И именно потому мне кажется, что следует разбить функционал на связующий и необходимый.

Игорь поймал себя на том, что смотрит на Сашу, не отрываясь, и представляет её в том махровом полотенце, постоянно сползающем. И думает — а если её немного отвлечь в тот момент, чтобы она махнула руками, и этот глупый элемент наряда…

Он тряхнул головой и вынудил себя сосредоточиться на сути встречи.

— Вот здесь, — промолвил Игорь, — важно правильно распределить, какие функции нам однозначно удобнее будет вмонтировать в класс, чтобы ими легче было воспользоваться. И непараметрический конструктор тоже надо бы модифицировать, иначе могут возникнуть определённые неприятности при выполнении. Наскочит одно на другое.

— А если спуститься ниже на один уровень иерархии наследования? — тут же предложила Александра.

Егор хмыкнул, делая вид, что не одобряет ни одну идею, и предложил:

— А если цепь наследования прервать вообще?

— Бред, — безапелляционно ответили Дима, Саша и Игорь в один голос.

— Я полагаю, — вновь взял слово Дмитрий, — вот тут будет достаточно удобно сделать двойное имплементирование. Интерфейсы между собой не пересекаются, между прочим. Жаль, унаследовать и то, и то нельзя на более готовом варианте…

— А если придумать комплексный класс? — вновь вмешался Егор. — И в него запихнуть то, что вы хотите сделать с этим и этим?

— Глупость! Эти реализационные моменты приведут к перегрузке всего на свете, — ответила Саша. — Мы сейчас прилепим к интерфейсу часть математики, и что тогда? Проект накроется медным тазом.

— А я считаю, — с апломбом ответил Егор, игнорируя шиканье остальных членов команды и подозрительный взгляд Игоря, — что мой вариант лучше. К тому же, у меня больше опыта работы, а ещё я…