tehnologia (1018792), страница 19

Файл №1018792 tehnologia (Г.С. Иванова - Учебник - Технология программирования) 19 страницаtehnologia (1018792) страница 192017-07-08СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 19)

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

Язык может быть определен:• организацией, ведущей разработку; например, если фирма владеет лицензионнымвариантом C++ Builder, то она будет вести разработки преимущественно в данной среде;• программистом, который по возможности всегда будет использовать хорошо знакомыйязык;• устоявшимся мнением («все разработки подобного рода должны выполняться на C++или на Java или на ...») и т.п.Если же все-таки выбор языка реально возможен, то нужно иметь в виду, что всесуществующие языки программирования можно разделить на следующие группы:• универсальные языки высокого уровня;• специализированные языки разработчика программного обеспечения;• специализированные языки пользователя;• языки низкого уровня.98В группе у н и в е р с а л ь н ы х я з ы к о в в ы с о к о г о у ро в н я безусловным лидером насегодня является язык С (вместе с C++).

Действительно различные версии С и C++ имеютцелый ряд очень существенных достоинств:• многоплатформенность – для всех используемых в настоящее время платформсуществуют компиляторы с языка С и C++;• наличие операторов, реализующих основные структурные алгоритмическиеконструкции (условную обработку, все виды циклов);• возможность программирования на низком (системном) уровне с использованиемадресов оперативной памяти;• огромные библиотеки подпрограмм и классов.Все это сделало С и C++ основными языками, используемыми для созданияоперационных систем, и, в свою очередь, служит для них дополнительной рекламой. ОднакоС и C++ имеют и серьезные недостатки:• отсутствие полноценных встроенных структурных типов данных (имеющиесяпсевдоструктурные типы, использующие адресную арифметику, недостаточно жесткоопределены, чтобы контролировать многие операции над этими данными, что приводит кбольшому количеству ошибок, выявляемых только в процессе отладки программы);• наличие синтаксических неоднозначностей, которые также не позволяют компиляторуконтролировать правильность программы;• ограниченный контроль параметров, передаваемых в подпрограмму, что такжеобнаруживается только в процессе отладки программы, и т.п.Альтернативой С и C++ среди универсальных языков программирования, используемыхдля создания прикладного программного обеспечения, на сегодня является Pascal,компиляторы которого в силу четкого синтаксиса обнаруживают помимо синтаксических ибольшое количество семантических ошибок.

Версия Object Pascal, использованная в средеDelphi, сопровождается профессиональными библиотеками классов, упрощающими ведениебольших разработок, в том числе и требующих использования баз данных, что делает Delphiдостаточно эффективной средой для создания приложений Windows.Кроме этих языков к группе универсальных принадлежат также Basic, Modula, Ada инекоторые другие. Каждый из указанных языков, так же, как C++ и Pascal, имеет своиособенности и, соответственно, свою область применения.Специализированныеязыкиразработчикаиспользуют для созданияконкретных типов программного обеспечения.

К ним относят:• языки баз данных;• языки создания сетевых приложений;• языки создания систем искусственного интеллекта и т.д.99Эти языки изучаются в специальных курсах, и в настоящем учебнике рассматриваться небудут.Специализированные языки пользователя обычно являются частью профессиональныхсред пользователя, характеризуются узкой направленностью и разработчикамипрограммного обеспечения не используются.Я з ы к и н и з к о г о у р о в н я позволяют осуществлять программирование практически науровне машинных команд. При этом получают самые оптимальные, как с точки зрениявремени выполнения, так и с точки зрения объема необходимой памяти программы.

Но этиязыки совершенно не годятся для создания больших программ и, тем более, программныхсистем. Основная причина – низкий уровень абстракций, которыми должен оперироватьразработчик, откуда недопустимо большое время разработки. Существенно и то, что самиязыки низкого уровня не поддерживают принципов структурного программирования, чтозначительно ухудшает технологичность разрабатываемых программ.В настоящее время языки типа Ассемблера обычно используют:• при написании сравнительно простых программ, взаимодействующих непосредственнос техническими средствами, например драйверов, поскольку в этом случае приходитсякропотливо настраивать соответствующее оборудование, преимущества языковпрограммирования высокого уровня становятся несущественными;• в виде вставок в программы на языках высокого уровня, например, для ускоренияпреобразования данных в циклах с большим количеством повторений.Выбор среды программирования.

Средой программирования называют программныйкомплекс, который включает специализированный текстовый редактор, встроенныекомпилятор, компоновщик, отладчик, справочную систему и другие программы,использование которых упрощает процесс написания и отладки программ.Последнее время широкое распространение получили упоминавшиеся выше средывизуального программирования, в которых программист получает возможность визуальногоподключения к программе некоторых кодов из специальных библиотек компонентов, чтостало возможным с развитием объектно-ориентированного программирования.Наиболее часто используемыми являются визуальные среды Delphi, C++ Builder фирмыBorland (Inprise Corporation), Visual C++, Visual Basic фирмы Microsoft, Visual Ada фирмыIBM и др.Между основными визуальными средами этих фирм Delphi, C++ Builder и Visual C++имеется существенное различие: визуальные среды фирмы Microsoft обеспечивают болеенизкий уровень программирования «под Windows».

Это является их достоинством инедостатком. Достоинством – так как уменьшается вероятность возникновения«нестандартной» ситуации,100т.е. ситуации, не предусмотренной разработчиками библиотеки компонентов, а недостатком– так как это существенно загружает программиста «рутинной» работой, от которойизбавлен программист, работающий с Delphi или C++ Builder.

Много нареканий вызываеттакже интерфейс Visual C++, также ориентированный на «низкоуровневое»программирование.В общем случае, если речь идет о выборе между этими средами, то он в значительнойстепени должен определяться характером проекта.Выбор или формирование стандартов разработки. Реальное применение любойтехнологии проектирования требует формирования или выбора ряда стандартов, которыедолжны соблюдаться всеми участниками проекта:• стандарт проектирования;• стандарт оформления проектной документации;• стандарт интерфейса пользователя.Стандарт проектирования должен определять:• набор необходимых моделей (схем, диаграмм) на каждой стадии проектирования истепень их детализации;• правила фиксации проектных решений на диаграммах, в том числе правила именованияобъектов и соглашения по терминологии, набор атрибутов для всех объектов и правила ихзаполнения на каждой стадии, правила оформления диаграмм, включая требования к форме иразмерам объектов;• требования к конфигурации рабочих мест разработчиков, включая настройкиоперационной системы и используемых CASE-средств;• механизм обеспечения совместной работы над проектом, в том числе и правилаинтеграции подсистем проекта и анализа проектных решений на непротиворечивость.Стандарт оформления проектной документации должен регламентировать:• комплектность, состав и структуру документации на каждой стадии;• требования к ее содержанию и оформлению;• правила подготовки, рассмотрения, согласования и утверждения документов.Стандарт интерфейса пользователя должен определять:• правила оформления экранов (шрифты и цветовую палитру), состав и расположениеокон и элементов управления;• правила пользования клавиатурой и мышью;• правила оформления текстов помощи;• перечень стандартных сообщений;• правила обработки реакции пользователя.Все описанные выше проектные решения существенно влияют на трудоемкость исложность разработки.

Только после их принятия следует переходить к анализу требованийи разработке спецификаций проектируемого программного обеспечения.101Контрольные вопросы и задания1. Что понимают под технологичностью программного обеспечения? Почему?2. Какие типы программных продуктов можно выделить? Чем они различаются?3. Назовите основные эксплуатационные требования к программным продуктам. Какимисредствами и приемами обеспечивается каждый из них? Для каких типов программных системцелесообразно указывать каждый из них?4. В каких ситуациях необходимы предпроектные исследования? Какие вопросы при этомрешают? Что получают в результате таких исследований?5. Назовите, какой раздел технического задания можно считать основным и почему? Какуюинформацию должны содержать остальные разделы? В чем основная сложность разработкитехнического задания?6.

Составьте техническое задание на разработку «калькулятора» по типу, предлагаемогоWindows. Проанализируйте, какие программы или программные системы могли бы отвечатьуказанным вами требованиям. Попробуйте ограничить их количество, уточнив техническое задание.7. Какие решения ранних этапов проектирования считают основными и почему?1024. АНАЛИЗ ТРЕБОВАНИЙ И ОПРЕДЕЛЕНИЕСПЕЦИФИКАЦИЙ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯПРИ СТРУКТУРНОМ ПОДХОДЕСобственно разработка любого программного обеспечения начинается с анализа требований к будущемупрограммному продукту.

В результате анализа получают спецификации разрабатываемого программногообеспечения: выполняют декомпозицию и содержательную постановку решаемых задач, уточняют ихвзаимодействие и эксплуатационные ограничения. В целом в процессе определения спецификаций строятобщую модель предметной области, как некоторой части реального мира, с которой будет тем или инымспособом взаимодействовать разрабатываемое программное обеспечение, и конкретизируют его основныефункции.4.1. Спецификации программного обеспеченияпри структурном подходеКак уже упоминалось в § 1.4, спецификации представляют собой полное и точноеописание функций и ограничений разрабатываемого программного обеспечения.

Характеристики

Тип файла
PDF-файл
Размер
7,85 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Учебник - Технология программирования
Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6458
Авторов
на СтудИзбе
304
Средний доход
с одного платного файла
Обучение Подробнее