. Стиллмен, Дж. Грин - Изучаем C#, 2-е издание
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
издат<strong>е</strong>ль, встр<strong>е</strong>чай подписчика<br />
Х о ти т<strong>е</strong> , что объ<strong>е</strong>кты научились думать сами?<br />
Пр<strong>е</strong>дположим, вы пишит<strong>е</strong> симулятор игры в б<strong>е</strong>йсбол. Вы собира<strong>е</strong>т<strong>е</strong>сь про-<br />
повс<strong>е</strong>м<strong>е</strong>стно^<br />
гт ^ ^ ^ юаспростран<strong>е</strong>нныи<br />
дать это прилож<strong>е</strong>ни<strong>е</strong> команд<strong>е</strong> «Янки» и заработать миллион долларов. Вы способ им<strong>е</strong>нования<br />
создали объ<strong>е</strong>кты B a ll (Мяч), P itc h e r (Подающий), Umpire (Судья), Fan м<strong>е</strong>тодов. Мы<br />
(Фанат) и многи<strong>е</strong> други<strong>е</strong>. Вы даж<strong>е</strong> написали код, мод<strong>е</strong>лирующий п<strong>е</strong>р<strong>е</strong>брасывани<strong>е</strong><br />
мяча объ<strong>е</strong>ктом P itc h e r .<br />
обсудим <strong>е</strong>го чуть<br />
позж<strong>е</strong>.<br />
Осталось собрать вс<strong>е</strong> вм<strong>е</strong>ст<strong>е</strong>. Вы добавля<strong>е</strong>т<strong>е</strong> мячу м<strong>е</strong>тод O n B a llln P la y ()<br />
(Мяч в игр<strong>е</strong>), и т<strong>е</strong>п<strong>е</strong>рь нужно, чтобы объ<strong>е</strong>кт P i tc h e r отв<strong>е</strong>тил м<strong>е</strong>тодом сво<strong>е</strong>го<br />
обработчика событий. М<strong>е</strong>тоды уж<strong>е</strong> написаны, их тр<strong>е</strong>бу<strong>е</strong>тся только связать<br />
друг с другом:<br />
посль э—т<br />
вызыва<strong>е</strong>т^<br />
^ B a l l . O n B a l l l n P l a y (70, 82<br />
Мяч л<strong>е</strong>т ит по 70-градцсиой<br />
^^ра<strong>е</strong>ктории и y n a d e m Z<br />
расстоянии 8Z ф у ^ а от базы.<br />
Подаю1ций долж<strong>е</strong>н<br />
бросить этот<br />
мяч.<br />
Подающий мож<strong>е</strong>т<br />
мяч под<br />
'^^ким углом и на<br />
^ако<strong>е</strong> расстояни<strong>е</strong><br />
больш<strong>е</strong>, ч<strong>е</strong>м 82)<br />
Как объ<strong>е</strong>кты узнают, что произошло?<br />
P i t c h e r .C a t c h B a l l (70<br />
90)<br />
Сформулиру<strong>е</strong>м пробл<strong>е</strong>му. Вы хотит<strong>е</strong>, чтобы объ<strong>е</strong>кт B a ll б<strong>е</strong>спокоился<br />
об отправляющ<strong>е</strong>м <strong>е</strong>го в пол<strong>е</strong>т удар<strong>е</strong>, а объ<strong>е</strong>кт P i tc h e r —<br />
о поимк<strong>е</strong> л<strong>е</strong>тящих на н<strong>е</strong>го мяч<strong>е</strong>й. При этом н<strong>е</strong> нужно, чтобы объ<strong>е</strong>кт<br />
B a ll сообщал объ<strong>е</strong>кту P itc h e r , «Я л<strong>е</strong>чу».<br />
Scooting и оч<strong>е</strong>нь быстро б<strong>е</strong>гающий.<br />
Г<br />
Объ<strong>е</strong>кты должны<br />
заботиты;я о с<strong>е</strong>б<strong>е</strong>,<br />
а н<strong>е</strong> о других.<br />
Мы за разд<strong>е</strong>л<strong>е</strong>ни<strong>е</strong><br />
сф<strong>е</strong>ры влияния<br />
0№Ь<strong>е</strong>1 !КТОВ.<br />
^<br />
492 глава 11<br />
м ы говорам<br />
что<br />
опр<strong>е</strong>д<strong>е</strong>ля<strong>е</strong>т<br />
кидать. Это н<strong>е</strong><br />
о « « » * « “ “ '