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><br />

отв<strong>е</strong>ты на вопросы: воспользоваться ли одним м<strong>е</strong>тодом или, мож<strong>е</strong>т быть,<br />

разбить <strong>е</strong>го на н<strong>е</strong>сколько? А мож<strong>е</strong>т быть, м<strong>е</strong>тод тут вообщ<strong>е</strong> н<strong>е</strong> нуж<strong>е</strong>н? В р<strong>е</strong>зультат<strong>е</strong><br />

можно получить как интуитивно понятный код, так и н<strong>е</strong>что запутанно<strong>е</strong><br />

и н<strong>е</strong>чита<strong>е</strong>мо<strong>е</strong>.<br />

О П<strong>е</strong>р<strong>е</strong>д вами прим<strong>е</strong>р компактного кода. Это программа, управляющая автоматом по производству<br />

шоколадных батончиков.<br />

tb, т —<br />

ужасны<strong>е</strong> им<strong>е</strong>на!<br />

Вы никогда н<strong>е</strong><br />

догада<strong>е</strong>т<strong>е</strong>сь, ----<br />

зач<strong>е</strong>м нужны эти<br />

п<strong>е</strong>р<strong>е</strong>м<strong>е</strong>нны<strong>е</strong> и<br />

какова функция<br />

класса Т.<br />

іпЬ t = т.сЬкТ<strong>е</strong>тр(<br />

а {t > 160) {<br />

Т tb = п<strong>е</strong>ш<br />

ЬЬ.с1зТгр\/((2<br />

І С 8 . Р ІП () ;<br />

ics.V ent О ;<br />

.т.аігзузсЬкО<br />

ч^сло... но для ц<strong>е</strong>ло<strong>е</strong><br />

ч<strong>е</strong>го?<br />

М<strong>е</strong>тод с1&Тгр\'() им<strong>е</strong><strong>е</strong>т<br />

один П(Хр(ХМС\Л/\.р} но<br />

б жызнм н<strong>е</strong> угада<strong>е</strong>т<strong>е</strong> <strong>е</strong>го<br />

пр<strong>е</strong>дназнач<strong>е</strong>ни<strong>е</strong>.<br />

Вы мож<strong>е</strong>т<strong>е</strong>, взглянув на этот код, понять, какую ф ункцию он вы полня<strong>е</strong>т?<br />

© Оп<strong>е</strong>раторы н<strong>е</strong> дают даж<strong>е</strong> нам<strong>е</strong>ков на пр<strong>е</strong>дназнач<strong>е</strong>ни<strong>е</strong> кода. Зато нужный р<strong>е</strong>зультат получ<strong>е</strong>н<br />

при помощи вс<strong>е</strong>го одного м<strong>е</strong>тода. Но вс<strong>е</strong>гда ли максимальная компактность явля<strong>е</strong>тся<br />

кон<strong>е</strong>чной ц<strong>е</strong>лью? Давайт<strong>е</strong> разобь<strong>е</strong>м код на н<strong>е</strong>сколько м<strong>е</strong>тодов и сд<strong>е</strong>ла<strong>е</strong>м <strong>е</strong>го бол<strong>е</strong><strong>е</strong> простым.<br />

Вы на практик<strong>е</strong> уб<strong>е</strong>дит<strong>е</strong>сь в н<strong>е</strong>обходимости классов и осмысл<strong>е</strong>нных им<strong>е</strong>н. Для начала<br />

нужно понять, какую задачу р<strong>е</strong>ша<strong>е</strong>т данный код.<br />

Управл<strong>е</strong>ни<strong>е</strong> автоматом, производящим батончики<br />

Автоматизированная сист<strong>е</strong>ма пров<strong>е</strong>ря<strong>е</strong>т т<strong>е</strong>мп<strong>е</strong>ратуру<br />

нуги кажды<strong>е</strong> 3 минуты. Если она выш<strong>е</strong> 160 °С, н<strong>е</strong>обходимо<br />

выполнить проц<strong>е</strong>дуру охлажд<strong>е</strong>ния (С1С8).<br />

• З а к р о й т <strong>е</strong> клапан турби ны #2<br />

• З а п о м н и т <strong>е</strong> в о д о й сист<strong>е</strong>м у охл а ж д <strong>е</strong>н и я<br />

• В ы п устит<strong>е</strong> воду<br />

• У б<strong>е</strong>дит<strong>е</strong>сь, ч то в с и ст<strong>е</strong>м <strong>е</strong> отсутству<strong>е</strong>т воздух<br />

134 глава 3

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

Saved successfully!

Ooh no, something went wrong!