машинно-независимые (языки высокого уровня)




алгоритмические языки (algorithmic language) — не зависящие от архитектуры компьютера языки программирования для отражения структуры алгоритма (Паскаль, Фортран, Бейсик и др.); программа на таких языках транслируется с языка высокого уровня на машинный язык, а затем уже исполняется;

процедурно-ориентированные языки (procedure-oriented language) - языки программирования, где имеется возможность описания программы как совокупности процедур (подпрограмм);

проблемно-ориентированные языки (universal programming language) – языки программирования, предназначенные для решения определенного класса задач (Пролог и др.).

языки гипервысокого уровня – объектно-ориентированные (Object Pascal, C++, Java и др.), в основе которых лежит понятие объекта, сочетающего в себе данные и действия над нами. Программа на объектно-ориентированном языке, решая некоторую задачу, по сути, описывает часть мира, относящуюся к этой задаче. Описание действительности в форме системы взаимодействующих объектов естественнее, чем в форме взаимодействующих процедур.

 

Жизненный цикл программного обеспечения включает в себя следующие этапы:

Анализ требований. На этом этапе должны быть получены четкие ответы на следующие вопросы:

Что представляют собой входные данные?

Что должна делать программа?

Какими должны быть выходные данные?

Часто при этом строится математическая модель объекта или явления. Модель отражает лишь существенные стороны объекта, но не тождественна ему. Степень соответствия модели объекту проверяется практикой, экспериментом. В случае необходимости модель уточняется.

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

Проектирование. На этом этапе выбирается метод решения, составляется общий проект программы, выделяются основные части, их взаимодействие (интерфейс), уточняются входные и выходные данные. Затем разрабатывается общий алгоритм решения, который постепенно детализируется.

Кодирование. Детализация алгоритма должна быть закончена тогда, когда есть возможность реализовать его блоки средствами языка программирования. Кодирование заключается в переводе на язык программирования конструкций алгоритма. Во время кодирования могут быть, чисто визуально, обнаружены ошибки, неточности в алгоритме, что может потребовать уточнения алгоритма.

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

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

Процесс отладки имеет 3 основные цели:

1) обнаружение ошибок,

2) локализация ошибок,

3) исправление ошибок.

Всегда надо помнить золотое правило программистов: «Каждая программа содержит как минимум одну ошибку».

Ошибки весьма условно можно разделить на три группы.

1) алгоритмические,

2) ошибки программирования,

3) синтаксические ошибки кодирования.

Синтаксические ошибки исправляются и программа перетранслируется. Содержательные ошибки (алгоритма и программы) выявить труднее. Для этого готовят систему тестов. Каждый тест – набор исходных данных, для которых известен результат. Если результат прогона теста не совпадает с ожидаемым, то это означает, что в программе есть ошибка. Тесты необходимо готовить так, чтобы они не только устанавливали факт ошибки, но локализовали бы эту ошибку, т.е. суживали бы подозреваемую часть программы.

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

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2020-06-03 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: