Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Вопросы и задачи для самостоятельного решения. Пример проектирования (продолжение примера главы 2)




Пример проектирования (продолжение примера главы 2)

 

Напомним, что мы пришли в нашем случае к последовательность действий программы.

(1) Вести входную строку.

(2) Если входная строка пустая, то закончить работу.

(3) Преобразовать входную строку.

(4) Вывести преобразованную строку.

(5) Ввести очередную входную строку и вернуться к действию (2).

 

Простейший анализ этого описания действий позволил нам выделить основной объект - входную строку и список действий:

- ввести,

- преобразовать,

- операцию проверки состояния пуста ли входная строка. Далее можно выделить объект сообщение и соответствующую ему операцию - вывести.

Конкретный способ реализации объекта выбирается программистом в результате оценки нескольких вариантов. Например, способ представления объекта строка - список в связном представлении или массив символов; вид параметра процедуры вывода сообщения - текст сообщения или его номер в таблице сообщений и т. п.

 

Выводы

В данном примере целесообразно принять решение о представлении объекта строка (входная и преобразованная) в виде массива символов. Этот массив представляет собой основной информационный объект и может быть реализован в отдельном модуле «str». Над ним должны быть определены следующие операции (процедуры).

- Ввести входную строку (readString).

- Проверить входную строку на корректность (testString).

- Проверить входную строку на пустоту (isEmpty).

- Преобразовать строку (processString).

- Вывести строку (printString).

На процедуру testString естественно возложить контроль алфавита, длины входной строки и нарушение структуры входной строки (ведущие символы не пробелы).

Для вывода сообщений можно разработать отдельный модуль «msg» в котором реализовать единственную процедуру msgWrite, параметром которой является значение перечислимого типа (INPUT_MSG, END_MSG, ERROR_MSG) определяющее вывод сообщений 2.2.1.1, 2.2.1.2, 2.2.1.3 соответственно.

При этом логика программы головного модуля может быть представлена так:

 

msgWrite(INPUT_MSG);

readString(str);

while(isEmpty(str)) {

if (!testString(str)) {

msgWrite(ERROR_MSG);

} else {

processString(str);

printString(str);

}

msgWrite(INPUT_MSG);

readString(str);

}

msgWrite(END_MSG);

 

Предполагается, что процедура ввода строки обращается к модулю «msg» для вывода приглашения к вводу msgWrite (INPUT_MSG)

Далее кодирование и отладка головного модуля и модулей «str» и «msg» могут быть произведены на языке программирования.

Какие подходы к проектированию, кроме объектного Вам известны?

Какие основные шаги необходимо выполнять при объектно-ориентированном подходе к проектированию?

В чем основные преимущества объектного подхода и когда его следует использовать?

Что такое объект?

Определите основные объекты для следующей задачи: Электронная база штрафов ГИБДД – сотрудники ГИБДД, выписывая штрафы водителям, заносят данные о водителе, нарушении, его месте, времени, транспортном средстве водителя в общую базу данных.





Поделиться с друзьями:


Дата добавления: 2014-12-26; Просмотров: 314; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.