Главная » Просмотр файлов » programming.systems.cpp.09.ide

programming.systems.cpp.09.ide (1119533), страница 2

Файл №1119533 programming.systems.cpp.09.ide (Лекции Волковой 2015) 2 страницаprogramming.systems.cpp.09.ide (1119533) страница 22019-05-09СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

поддерживает частичную перекомпиляцию),5. расстановка/снятие точек останова, которые визуализируются втекстовом редакторе,6. выдача всей информации в терминах исходной программы.Стратегии тестированияСтратегия тестирования — это метод, используемый для отбора тестов, которыедолжны быть включены в тестовый комплект.Стратегия является эффективной, если тесты, включенные в нее, с большойвероятностью обнаружат ошибки тестируемого объекта. Эффективность стратегиизависит от комбинации природы тестов и природы ошибок, на поиск которых эти тестынаправлены.•Стратегия поведенческого теста основана на технических требованиях.Тестирование, выполняемое с помощью стратегии поведенческого теста, называетсяповеденческим тестированием, функциональным тестированием илитестированием черного ящика.•Стратегия структурного теста определяется структурой тестируемого объекта.Тестирование, выполненное с помощью стратегии структурного теста, называется такжетестированием белого ящика.

Стратегия структурного теста требует полного доступа кструктуре объекта, то есть к исходной программе.•Стратегия гибридного теста является комбинацией поведенческой и структурнойстратегий. Модули и низкоуровневые компоненты часто тестируются с помощьюструктурной стратегии.

Большие компоненты и системы в основном тестируются спомощью поведенческой стратегии. Гибридная стратегия полезна на всех уровнях.Способы тестирования•Тестирование проводится не только на той стадии разработки программ,которая специально для этого предназначена, но и на предшествующихстадиях – при автономной отладке программ, еще до объединения их вединый программный комплекс.

Такое тестирование называетсямодульным. Его обычно проводят сами разработчики, которые проверяютточное соответствие программы выданной им спецификации.•Интеграционное тестирование призвано проверить все аспектыработы программы от правильности взаимодействия внутреннихпрограммных компонентов до правильности взаимодействия программногокомплекса с его пользователями.•Во время пользовательского тестирования результаты работыпрограммы проверяются с прикладной точки зрения.•Нагрузочное тестирование дает возможность проверить безопасную иэффективную работу созданной программы в нормальном и пиковомрежимах ее использования. Функциональность на этом этапе проверяетсятолько в смысле ее влияния на важнейшие технические параметрыпрограммы, например, на время реакции системы на запрос пользователя.•Важной в тестировании является возможность проведениярегрессионного тестирования.

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

Библиотеки функций (или подпрограмм).2. Библиотеки классов.3. Библиотеки компонентов.Библиотеки функцийБиблиотеки функций во многом определяют возможности системпрограммирования в целом. Чем больше выбор библиотечныхфункций СП предоставляет пользователю, тем лучшие позиции онаимеет на рынке средств разработки программного обеспечения.Различают:• библиотеки для языков программирования (например, функцииввода-вывода, работа со строками) и• библиотеки для решения задач в конкретной проблемной области(например, функции, реализующие алгоритмы линейной алгебры).Библиотеки функций представляют собой откомпилированныеобъектные модули, а необходимые фрагменты библиотеки функцийвключаются в исполняемый файл на этапе работы редактора связей.Библиотеки классовБиблиотеки классов также являются важной частью современныхсистем программирования, базирующихся на ООЯП.Недостаток библиотеки классов — все ее классы должны бытьнаписаны на том же ЯП, на котором пишется программа, кудаинтегрируются библиотечные классы.В библиотеке классов различают:•конкретные классы;•абстрактные классы, иерархии классов;•шаблоны классов, иерархии шаблонов классов.Библиотеки классов включаются в программу на этапе компиляции икомпилируются со всей программой вместе.Библиотеки компонентовБиблиотеки компонентов - это библиотеки готовых откомпилированныхпрограммных модулей, предназначенных для использования в качествесоставных частей программ, и которыми можно манипулировать во времяразработки программ.Компоненты бывают локальные (находящиеся на той же ЭВМ, где создаетсяПП) и распределенные (расположенные на сервере и доступные по сети ЭВМ).Примеры технологий, использующих библиотеки компонентов:• Технология CORBA (Common Object Request Broker Architecture) отмеждународной группы OMG позволяет использовать программныекомпоненты, размещённые как локально, так и дистанционно.Использование CORBA-компонент не зависит от языка, на котором онибыли написаны.• Технология COM (Common Object Model) от компании Microsoft под ОСWindows позволяет использовать локально размещённые компоненты,независимо от языка их реализации.

Её развитие привело краспределённой архитектуре DCOM (Distributed COM), а затем к ActiveX.• Технология Java Beans от Sun Microsystems позволяет использоватькомпоненты, написанные на языке Java. Так как реализация Java-машинысуществует почти для всех ОС, отсутствует жёсткая привязка к конкретнойОС.Динамически подключаемые библиотеки (ДБ)ДБ в отличие от статических библиотек подключаются к программе не во времякомпиляции программы, а непосредственно в ходе её выполнения.На этапе компоновки программы редактор связей, встречая вызовы функций ДБ,вместо процедуры связывания формирует таблицу точек вызова функций ДБ дляпоследующей операции динамического связывания.

Таким образом, процессполной компоновки завершается уже на этапе выполнения целевой программы.Преимущества ДБ:• не требуется включать в программу объектный код часто используемыхфункций, что существенно сокращает объем кода;• различные программы, выполняемые в некоторой ОС, могут пользоваться кодомодной и той же библиотеки, содержащейся в ОС;• изменения и улучшения функций библиотек сводится к обновлению толькосодержимого ДБ, а уже существующие тексты программ не требуютперекомпиляции (этот же факт может оказаться недостатком, если примодификации функций меняется логика их работы, поэтому использование ДБнакладывает определенные обязательства как на разработчика программы, так ина создателя библиотеки).Как правило, динамически подключаются системные функции ОС иобщедоступные функции программного интерфейса (API).Существует возможность создавать свои ДБ для использования при разработкеприкладных программ.Критерии проектирования стандартных библиотек.Требования по составуСтандартная библиотека должна:• обеспечивать поддержку свойств языка (например, управление памятью,предоставление информации об объектах во время выполнения программ);• предоставлять информацию о зависящих от реализации аспектах языка,(например, о максимальных размерах целых значений);• предоставлять функции, которые не могут быть написаны оптимально для всехвычислительных систем на данном языке программирования (например, sqrt() илиmemmove() — пересылка блоков памяти);• предоставлять программисту нетривиальные средства, на которые он можетрассчитывать, заботясь о переносимости программ (например, средства работы сосписками, функции сортировки, потоки ввода/вывода);• предоставлять основу для расширения собственных возможностей, в частности,соглашения и средства поддержки, позволяющие обеспечить операции дляданных, имеющих определяемые пользователями типы, в том же стиле, в которомобеспечиваются операции для встроенных типов (например, ввод/вывод);• служить основой и теоретическим базисом других библиотек.Требования по свойствамкомпонентов стандартной библиотеки (1)Компоненты стандартной библиотеки должны:• иметь общезначимый характер (структуры данных и алгоритмы дляработы с ними – стек, очередь, список, …, сортировка, поиск, копирование,…); быть важными и удобными для использования всеми программистами;• быть настолько эффективными, чтобы у пользователей библиотекине возникало потребности заново программировать библиотечныесредства;• быть независимыми от конкретных алгоритмов или предоставлятьвозможность указывать алгоритм в качестве параметра;• оставаться элементарными, чтобы не терять эффективности из-заизлишних усложнений или попыток совместить различные функции водной;Требования по свойствамкомпонентов стандартной библиотеки (2)• быть безопасными (устойчивыми к неправильному использованию,использование библиотеки не должно провоцировать ошибки, а наоборот,снижать их вероятность);• обладать достаточной полнотой (завершенностью), чтобы ни у кого невозникало желания что-то заменить или доопределить;• обладать удобной и безопасной системой умолчаний;• поддерживать общепринятые стили программирования;• обладать способностью к расширению, чтобы работать с типами,определяемыми пользователем, было так же хорошо, как и совстроенными (базовыми) типами (сочетаемость с базовыми типамиданных и базовыми операциями).СП под UNIX.

Координатор GNU Make.Make существенно упрощает процесс сборки проектов.Make отслеживает изменившиеся файлы и перекомпилирует при обращении к немутолько их и файлы, связанные с ними по компиляции.Информация о зависимостях по компиляции и необходимые команды по компиляциисодержатся в файле Makefile (makefile или в файле с соответствующей структурой, имякоторого задается при обращении к Make: Make -f <имя_файла> ), который долженнаходиться в текущей директории.Makefile состоит из последовательности записей вида:цель: зависимости_по_компиляциикоманда ОС UNIX...команда ОС UNIX...Цель - имя целевого файла или название действия.Если обращение к Make происходит без параметра, то выполняются действия подостижению первой цели, если же параметр есть, то Make достигает цель, имя которойсовпадает с именем параметра.Если цель - имя файла, Make автоматически по дате модификации файлов, указанныхсреди файлов-зависимостей по компиляции, определяет, какие из них должны бытьперекомпилированы и выполняет соответствующие команды.В Makefile должны быть указаны зависимости и команды для получения какпромежуточных объектных файлов, так и исполняемых файлов.Пример 1.

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

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

Список файлов лекций

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