14.02.2017 Views

. Стиллмен, Дж. Грин - Изучаем 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 />

о « « » * « “ “ '

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!