Главная » Просмотр файлов » Л.Е. Карпов - Системы программирования

Л.Е. Карпов - Системы программирования (1114903), страница 20

Файл №1114903 Л.Е. Карпов - Системы программирования (Л.Е. Карпов - Системы программирования) 20 страницаЛ.Е. Карпов - Системы программирования (1114903) страница 202019-05-08СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

Всевариации конфигураций можно получать, используя развитые языки управлениязаданиями современных операционных систем, например, возможности условноговызова программ системы программирования или значения переменных системногоокружения.Примыкает к такому способу управления конфигурацией работа винтегрированных средах разработки программного обеспечения. Такие системы умеютработают с “проектом программного комплекса”, который включает в себя все файлыкомплекса (как с текстами программ, так и с библиотечными модулями), а такжережимы их обработки. Интегрированные среды позволяют гибко переходить ототладочной конфигурации комплексов к оптимизированной конфигурации, чтооблегчает процесс сопровождения уже разработанных программ.Перечисленные способы управления обладают своими преимуществами(простотой или удобством), но имеют один существенный недостаток.

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

Иногда этиколлективы работают в распределенном режиме в глобальной вычислительной сети.Реальную помощь таким коллективам при управлении конфигурациейформируемых программных комплексов могут оказать только специальноразрабатываемые системы управления версиями программ.

Эти системы способнывести централизованные базы данных программных проектов, к которым обеспеченколлективный доступ со стороны многих разработчиков одновременно.3.8. Системы управления версиями программных комплексовВ настоящее время многие системы программирования начали включать в свойсостав системы управления версиями. Например, в составе систем Visual Studioкомпании Microsoft, имеется система Visual SourceSafe, позволяющая создавать базыданных версий, включать файлы в состав версий программных проектов, отслеживатьисторию их изменений, сравнивать различные версии между собой. Имеется такжеопределенный выбор систем управления версиями, которые не привязаны жестко ккакой-либо системе прогр аммиро вания, а мо гут р аботать с любыми из них, ведя базыданных или репозитории файлов, составляющих законченные программные комплексы.Такие автономные системы управления версиями обычно удобны тем, чтопозволяют вести управления версиями особенно сложных программных комплексов –распределенных.

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

Приэтом клиенты могут быть самыми разнообразными, они могут работать с разнымаппаратным обеспечением, с разными операционными системами, с разнымисистемами программирования. Необходимо лишь, чтобы система управления версиями73могла взаимодействовать со всеми ними по единым, понятным для всех правилам.Именно так и работают лучшие и наиболее используемые системы управленияверсиями, которые способны поддерживать до нескольких десятков операционныхсистем и нескольких тысяч клиентов, одновременно работающих над созданиемединого программного комплекса.Среди коммерческих систем наиболее широко используются системыуправления жизненным циклом программ Peforce SCM (Software ConfigurationManagement) и IBM Rational ClearCase. В задачу этих систем входит создание иизменение конфигураций программ, их комплексирование, регистрация поставок, атакже обеспечение повторного использования программ.

На клиентских местахразрешается использовать все наиболее распространенные операционные системы(Windows, UNIX, Linux, mainframe z/OS), а также наиболее современные системыразработки, включая Rational Application Developer, WebSphere Studio, Microsoft VisualStudio .NET, Eclipse.Широко известны и свободно распространяемые системы управления версиями,среди которых лидером является система CVS (Concurrent Versions System).

Сервернаячасть системы может работать под управлением любого варианта операционнойсистемы UNIX – FreeBSD, Linux и др. Клиентские части работают под управлениемUNIX систем, а также системы Windows.Система CVS поддерживает историю дерева каталогов (репозитория) сисходным кодом, работая с последовательностью изменений. Каждое изменение вфайлах репозитория маркируется моментом времени, когда оно было сделано, иименем пользователя, совершившим изменение.

Обычно человек, совершившийизменение, также предоставляет текстовое описание причины, по которой произошлоизменение. Система CVS может отвечать на такие вопросы:••••Кто совершил данное изменение?Когда они его совершили?Зачем они это сделали?Какие еще изменения произошли в то же самое время?Точно так же, как книгу выписывают из библиотеки, следует сначала получитьиз репозитория рабочее дерево каталогов.

Большинство этих файлов – рабочие копииисходных текстов. Однако самый первый подкаталог имеет другое назначение. CVSиспользует его для хранения дополнительной информации о каждом файле в этомкаталоге, чтобы определять, какие изменения внесены в них с тех пор, как их извлеклииз репозитория.После того, как рабочее дерево каталогов создано, можно редактировать,компилировать и проверять находящиеся в нем файлы.

Так как каждый разработчикиспользует собственный рабочий каталог, изменения, которые делает каждый из них всвоем каталоге, не становятся автоматически видимыми всем остальным. Когдаизменения будут проверены, их надо зафиксировать в репозитории и сделатьдоступными остальным.Перед тем, как фиксировать изменения, необходимо, чтобы исходные текстыбыли синхронизованы со всеми изменениями, которые сделали остальные членыгруппы.

Перед фиксацией система запускает текстовый редактор и просит ввестиописание изменений.74Система CVS позволяет узнать, какие изменения внесли другие разработчики.Журнальные записи выводятся на экран в обратном хронологическом порядке, исходяиз предположения, что недавние изменения более интересны.Система CVS обращается с добавлением и удалением файлов так же, как и спрочими изменениями, записывая такие события в истории файлов. Фактически,система сохраняет историю каталогов вместе с историей файлов, однако, система несчитает, что все созданные файлы должны оказаться под ее контролем; это не так вомногих случаях. Например, не требуется записывать историю изменений объектных ивыполняемых файлов, потому что их содержимое всегда может быть воссоздано изисходных файлов.Чтобы удалить файл из проекта, его помечают для удаления.

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

Если один разработчик добавляет новый параметр в функцию иисправляет все ее вызовы, пока другой разработчик одновременно добавляет новыйвызов этой функции, и не передает ей этот новый параметр, что определенно являетсяконфликтом (два изменения несовместимы), то система CVS не сообщит об этом. Еепонимание конфликтов строго текстуально.На практике, однако, конфликты случаются редко.

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

Блокировки уместны в некоторых ситуациях, но ихиспользование не всегда лучше, чем использование CVS без блокировок. Измененияобычно объединяются без проблем, а разработчики иногда забывают убратьблокировку, в обоих случаях явное блокирование приводит к ненужным задержкам.Более того, блокировки предотвращают только текстуальные конфликты – они ничегоне могут поделать с семантическими конфликтами типа вышеописанного, когда дваразработчика редактируют разные файлы.В настоящий момент активно ведется разработка нового проекта Subversion,учитывающего положительные стороны системы CVS. Он будет распространяться сисходными текстами по свободной лицензии.3.9. Средства отладки и тестирования программЛюбая полезная программа может содержать ошибки даже после ее передачипользователям.

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

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

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

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