Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Средства разработки программ. Современные методы и языки программирования.






Широкое внедрение вычислительной техники в различные сферы деятельности человека стимулировало развитие автоматизированных методов и инструментальных средств создания прикладного программного обеспечения (ПО). Производство современного ПО происходит на фоне высоких требований к его качеству, так как сложность и ответственность выполняемых им функций непрерывно возрастает. Создание качественной программы, как и любого другого продукта, зависит не только от опыта разработчика, но и от инструмента, которым он пользуется. “Идеальной” технологией программирования была бы такая технология, которая по некоторому неформальному описанию объекта программирования автоматически генерировала бы текст синтаксически и семантически корректной программы. Все время существования программного средства, от зарождения идеи по его созданию до завершения его эксплуатации, обычно определяют как жизненный цикл. Укрупнено можно выделить пять наиболее важных этапов жизненного цикла программного средства (ЖЦ ПС): спецификацию (10%), проектирование (10%), кодирование (10%), отладку (20%) и сопровождение (50%). В скобках записаны относительные затраты ресурсов на создание ПС.

 

По затратам времени, человеческих и машинных ресурсов все эти этапы не одинаковы. Наиболее “дорогими”, в этом смысле, являются этапы, связанные с поиском ошибок в программах. Затраты ресурсов на них могут быть равными, или даже превосходить совокупные затраты ресурсов на остальных этапах. В стандарте DOD-STD-2167-A около 30% требований, документов и соответствующих им процессов непосредственно связаны с отладкой, тестированием и испытаниями программ. Данный стандарт является обязательным при выполнении заказов Министерства обороны США.

Специализированные или проблемно-ориентированные языки [34], построенные для решения конкретных задач, несомненно упрощают процесс разработки программных продуктов в выбранной предметной области, но в то же время для новых языков характерна проблема преемственности, а для специализированных - ограниченности области применения.

 

Техника модульного программирования, содержательной основой которой является интерпретация типа как алгебры над множеством объектов и множеством операций, а модуля как программного эквивалента абстрактного типа.

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

 

Эволюция техники модульного программирования привела к появлению объектно-ориентированного стиля программирования [154, 158, 170], который во многом унифицировал процесс создания ПС. К достоинствам этого метода относится то, что в нем более полно реализуется технология структурного программирования, облегчается процесс создания сложных иерархических систем, появляется удобная возможность создания пользовательских библиотек объектов в различных областях применения.

 

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

 

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

 

В настоящее время известно достаточно большое количество удачных инструментальных средств визуализации программирования. Прежде всего это относится к визуальным средствам разработки экранных форм, меню и других элементов программы (Microsoft Windows 3.0, Visual BASIC [38, 59, 133] и т.д.), средствам автоматизации проектирования программного обеспечения (CASE-средствам), средствам быстрой разработки приложений для информационных систем (Visual FoxPro), текстовым и графическим редакторам, издательским системам и т.д.

 

И 2 наиболее известные:






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.