И. П. Гиривенко к т. н., доцент, зав кафедрой информатики и вычислительной техники Рязанского государственного педагогического университета им. С. А. Есенина





НазваниеИ. П. Гиривенко к т. н., доцент, зав кафедрой информатики и вычислительной техники Рязанского государственного педагогического университета им. С. А. Есенина
страница11/32
Дата публикации01.09.2013
Размер1.4 Mb.
ТипЛекция
100-bal.ru > Информатика > Лекция
1   ...   7   8   9   10   11   12   13   14   ...   32

3. Учебный пример: класс "карта" для карточной игры


Рассмотрим, какие переменные для представления состояния и методы для реализации поведения необходимы в абстрактном классе "карта" CCard, который может использоваться в произвольной карточной игре.

На рис. 3.1 показана CRC-карточка, описывающая состояние и поведение игральной карты. Поскольку пока не уточняется структура конкретной программы, в которой используется класс CCard, нельзя указать сотрудничающие с классом компоненты. Обязанности класса CCard очень ограничены, он является менеджером данных, описывающих состояние игральной карты – масть, ранг, расположение на столе. Поведение класса состоит из методов, связанных с отображением карты на экране и изменением состояния.


Класс CCard

Сотрудничающие
компоненты


Хранит масть и ранг карты

Возвращает цвет карты

Хранит состояние "картинка вверх" или "картинка вниз"

Рисует карту на экране

Удаляет карту с экрана





Рис. 3.1. CRC-карточка класса CCard.
CRC-карточки многократно уточняются и переписываются, постепенно эволюционируя от естественного языка к тексту программы. После определения обязанностей класса надо выбрать имена для его методов и указать для них список параметров. Описание может не поместиться на одну карточку, тогда придется скреплять скрепками несколько карточек (или заменить их на обычные листы бумаги).

На рис. 3.2 показана CRC-карточка класса CCard с записанными именами методов. Обратите внимание, что даже если обязанность состоит всего лишь в возврате значения (например, признака "картинка вверх"), все равно для этого определяется специальный метод. Более подробно необходимость введения посредников для доступа к атрибутам класса будет обоснована позже.

На оборотной стороне CRC-карточки можно записать имена и типы атрибутов данного класса. Затем надо переходить от СRC-карточки к описанию поведения и состояния на языке программирования.


Класс CCard
(описание методов)


Сотрудничающие
компоненты


Suit – возвращает масть карты

Rank – возвращает ранг карты

Color – возвращает цвет карты

Draw, Erase – рисует или удаляет образ карты с экрана

IsFaceUp, Flip – проверяет или изменяет состояние "картинка вверх"





Рис. 3.2. Уточненная CRC-карточка класса CCard.

4. Две части описания класса: интерфейс и реализация


ООП является развитием идей модульности и скрытия информации. Принципы Парнаса ("ничего лишнего") применимы к ООП в той же мере, что и к модульному подходу. Их можно записать в терминах объектов следующим образом:

  • объявление класса должно обеспечивать клиента информацией, минимально необходимой для использования класса.

  • методам класса должна быть доступна вся информация, минимально необходимая для выполнения обязанностей класса.

Принципы Парнаса делят класс на две части: интерфейс (interface) и реализацию (implementation). Интерфейсная часть видна пользователю объекта. Она описывает, как объект взаимодействует с внешним миром. Пользователю разрешен доступ только к тем атрибутам и методам класса, которые описаны в интерфейсной части. Реализация определяет, как именно достигается выполнение обязанностей, объявленных в интерфейсной части.

1   ...   7   8   9   10   11   12   13   14   ...   32

Похожие:

И. П. Гиривенко к т. н., доцент, зав кафедрой информатики и вычислительной техники Рязанского государственного педагогического университета им. С. А. Есенина iconИ. П. Гиривенко к т. н., доцент, зав кафедрой информатики и вычислительной...
...
И. П. Гиривенко к т. н., доцент, зав кафедрой информатики и вычислительной техники Рязанского государственного педагогического университета им. С. А. Есенина iconИ. П. Гиривенко к т. н., доцент, зав кафедрой информатики и вычислительной...
...
И. П. Гиривенко к т. н., доцент, зав кафедрой информатики и вычислительной техники Рязанского государственного педагогического университета им. С. А. Есенина iconПротокол №5 От 12 января 2012 г Заседания кафедры электроники и вычислительной...
Зав кафедрой Хакимова Г. Г. сообщила, что кафедра проводит 2-й Чемпионат по цифровой схемотехнике
И. П. Гиривенко к т. н., доцент, зав кафедрой информатики и вычислительной техники Рязанского государственного педагогического университета им. С. А. Есенина iconМетодические рекомендации по подготовке, оформлению, предзащите и...
В. А. Усков, заместитель декана естественно-географического факультета по развитию, доцент кафедры физической географии и методики...
И. П. Гиривенко к т. н., доцент, зав кафедрой информатики и вычислительной техники Рязанского государственного педагогического университета им. С. А. Есенина iconПроблемы коммуникации
М. Е. Евсевьева (зав кафедрой, доцент А. А. Ветошкин); С. А. Борисова, директор Института международных отношений Ульяновского государственного...
И. П. Гиривенко к т. н., доцент, зав кафедрой информатики и вычислительной техники Рязанского государственного педагогического университета им. С. А. Есенина iconПрограмма по формированию навыков безопасного поведения на дорогах...
Елена Святославовна Симакова, кандидат педагогических наук, доцент кафедры гуманитарных и естественнонаучных дисциплин Рязанского...
И. П. Гиривенко к т. н., доцент, зав кафедрой информатики и вычислительной техники Рязанского государственного педагогического университета им. С. А. Есенина iconПрограмма курса по выбору «Орнитология» предназначена для студентов...
Автор программы: к б н., доцент, зав кафедрой биологии и химии Марина Николаевна Харламова
И. П. Гиривенко к т. н., доцент, зав кафедрой информатики и вычислительной техники Рязанского государственного педагогического университета им. С. А. Есенина iconРоссийской Федерации Федеральное государственное образовательное...
Петренко И. М., зав кафедрой экономической теории, д-р экон наук профессор Дулин М. П., зав кафедрой педагогики и психологии, д-р...
И. П. Гиривенко к т. н., доцент, зав кафедрой информатики и вычислительной техники Рязанского государственного педагогического университета им. С. А. Есенина iconРахманкулова Людмила Кузьминична, кандидат филологических наук, доцент...
Автор программы: С. А. Виноградова, кандидат филологических наук, доцент, зав кафедрой английского языка и английской филологии
И. П. Гиривенко к т. н., доцент, зав кафедрой информатики и вычислительной техники Рязанского государственного педагогического университета им. С. А. Есенина iconПрограмма по формированию навыков безопасного поведения на дорогах...
...
И. П. Гиривенко к т. н., доцент, зав кафедрой информатики и вычислительной техники Рязанского государственного педагогического университета им. С. А. Есенина iconЛингвистические проблемы
Московского государственного педагогического института иностранных языков им. М. Тореза (зав кафедрой доцент Ю. А. Денисенко); д-р...
И. П. Гиривенко к т. н., доцент, зав кафедрой информатики и вычислительной техники Рязанского государственного педагогического университета им. С. А. Есенина iconМгпу учебно-методический комплекс дисциплины
А. В. Прялухина, кандидат психологических наук, доцент, зав кафедрой психологии Российского государственного социального университета...
И. П. Гиривенко к т. н., доцент, зав кафедрой информатики и вычислительной техники Рязанского государственного педагогического университета им. С. А. Есенина iconРабочая программа по дисциплине «теория экономического анализа»
Рецензент: к с н., доцент, зав кафедрой «Экономики и управления на предприятии и маркетинга» Пятигорского государственного гуманитарно-технологического...
И. П. Гиривенко к т. н., доцент, зав кафедрой информатики и вычислительной техники Рязанского государственного педагогического университета им. С. А. Есенина iconРабочая программа по дисциплине «международный менеджмент»
Рецензент: к с н., доцент, зав кафедрой «Экономики и управления на предприятии и маркетинга» Пятигорского государственного гуманитарно-технологического...
И. П. Гиривенко к т. н., доцент, зав кафедрой информатики и вычислительной техники Рязанского государственного педагогического университета им. С. А. Есенина iconМетодические рекомендации по написанию курсовых работ дисциплине
Рецензент: к с н., доцент, зав кафедрой «Экономики и управления на предприятии и маркетинга» Пятигорского государственного гуманитарно-технологического...
И. П. Гиривенко к т. н., доцент, зав кафедрой информатики и вычислительной техники Рязанского государственного педагогического университета им. С. А. Есенина iconУчебное пособие Краснодар 2008
В. А. Оробец); кафедра паразитологии и ветсанэкспертизы Донского государственного аграрного университета (зав кафедрой, проф., к...


Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
100-bal.ru
Поиск