Инструментарий технологии программирования — программные продукты поддержки (обеспечения) технологии программирования.
В рамках этого направления сформировались следующие группы программных продуктов, как показано на рисунке 20:
- средства для создания приложений, включающие:
- локальные средства, обеспечивающие выполнение отдельных работ по созданию программ;
- интегрированные среды разработчиков программ, обеспечивающие выполнение комплекса взаимосвязанных работ по созданию программ;
- средства для создания информационных систем (CASE- технология), представляющие методы анализа, проектирования и создания программных систем и предназначенные для автоматизации процессов разработки и реализации информационных систем.
Рис. 20. Классификация инструментария технологии программирования
3.1. Средства для создания приложений
ИНСТРУМЕНТЫ АНАЛИТИКА — что учить, чтобы стать аналитиком в IT?
Локальные средства разработки программ Эти средства на рынке программных продуктов наиболее представительны и включают языки и системы программирования, а также инструментальную среду пользователя. Язык программирования — формализованный язык для описания алгоритма решения задачи на компьютере. Средства для создания приложений — совокупность языков и систем программирования, а также различные программные комплексы для отладки и поддержки создаваемых программ. Языки программирования можно условно разделить на следующие классы (если в качестве признака классификации взять синтаксис образования конструкций языка):
- машинные языки (computer language) — языки программирования, воспринимаемые аппаратной частью компьютера (машинные коды);
- машинно-ориентированные языки (computer-oriented language) — языки программирования, которые отражают структуру конкретного типа компьютера (ассемблеры);
- алгоритмические языки (algorithmic language) — языки программирования, не зависящие от архитектуры компьютера (Паскаль, Си, Фортран, Бейсик и др.);
- процедурно-ориентированные языки (procedure-oriented language) — языки программирования, где имеется возможность написания программы как совокупности процедур (подпрограмм);
- проблемно-ориентированные языки (universal programming language) — языки программирования, предназначенные для решения задач определенного класса (Лисп, Пролог, Симула и др.);
- интегрированные системы программирования.
Другой классификацией языков программирования является их деление на языки, ориентированные на реализацию основ структурного программирования, и объектно-ориентированные языки, поддерживающие понятие объектов и их свойств и методов обработки. Программа, подготовленная на языке программирования, проходит этап трансляции, когда происходит преобразование исходного кода программы (source code) в объектный код (object code), который далее пригоден к обработке редактором связей. Редактор связей специальная программа, обеспечивающая построение загрузочного модуля (load module), пригодного к выполнению, схема которой показана на рисунке 21. Рис. 21. Схема процесса создания загрузочного модуля программы Трансляция может выполняться с использованием средств компиляторов (compiler) или интерпретаторов (interpreter). Компиляторы транслируют всю программу, но без ее выполнения. Интерпретаторы, в отличие от компиляторов, выполняют пооператорную обработку и выполнение программы. Существуют специальные программы, предназначенные для трассировки и анализа выполнения программ, так называемые отладчики (debugger). Лучшие отладчики позволяют осуществить трассировку (отслеживание выполнения программы в пооператорном варианте), идентификацию места и вида ошибок в программе, наблюдение за изменением значений переменных, выражений и т.п. Для отладки и тестирования правильности работы программ создается база данных контрольного примера. Более мощным средством разработки программ являются системы программирования. Системы программирования (programming system) включают:
- компилятор;
- интегрированную среду разработчика программ;
- отладчик;
- средства оптимизации кода программ;
- набор библиотек (возможно с исходными текстами программ);
- редактор связей;
- сервисные средства (утилиты) для работы с библиотеками текстовыми и двоичными файлами;
- справочные системы;
- документатор исходного кода программы;
- систему поддержки и управления проектом программного комплекса.
Средства поддержки проектов — новый класс средств разработки программного обеспечения, предназначенный для:
- отслеживания изменений, выполненных разработчиками программ;
- поддержки версий программы с автоматической разноской изменений;
- получения статистики о ходе работ проекта.
Инструментальная среда пользователя представлена специальными средствами, встроенными в пакеты прикладных программ, такими, как:
- библиотека функций, процедур, объектов и методов обработки;
- макрокоманды;
- клавишные макросы; языковые макросы;
- программные модули-вставки; конструкторы экранных форм и отчетов;
- генераторы приложений; языки запросов высокого уровня;
- языки манипулирования данными; конструкторы меню и многое другое.
Средства отладки и тестирования программ предназначены для подготовки разработанной программы к промышленной эксплуатации. Интегрированные среды разработки программ Дальнейшим развитием локальных средств разработки программ, являются интегрированные программные среды разработчиков. Основное назначение инструментария данного вида — повышение производительности труда программистов, автоматизация создания кодов программ, обеспечивающих интерфейс пользователя графического типа, разработка приложений для архитектуры клиент-сервер, запросов и отчетов. CASE-технологии CASE-технологии — относительно новое направление, формировавшееся на рубеже 80-х годов. CASE-технологии делятся на две группы:
- встроенные в систему реализации, в которых все решения по проектированию и реализации привязаны к выбранной системе явления базами данных (СУБД);
- независимые от системы реализации, в которых все решения по проектированию ориентированы на унификацию начальных этапов жизненного цикла, средств их документирования и обеспечивают большую гибкость в выборе средств реализации.
Основное достоинство CASE-технологии — поддержка коллективной работы над проектом за счет возможности работы в локальной сети разработчиков, экспорта/импорта любых фрагментов проекта, организационного управления проектом. Некоторые CASE-технологии ориентированы только на системных проектировщиков и предоставляют специальные графические средства для изображения различного вида моделей:
- диаграмм потоков данных (DFD — data flow diagrams) совместно со словарями данных и спецификациями процессов;
- диаграмм «сущность-связь» (ERD — entity relationship diagrams), являющихся информационной моделью предметной области;
- диаграмм переходов состояний (STD — state transition diagrams), учитывающих события и реакцию на них системы обработки данных.
Диаграммы DFD устанавливают связь источников информации с потребителями, выделяют логические функции (процессы) образования информации, определяют группы элементов данных и их хранилища (базы данных). Описание структуры потоков данных, определение их компонентов хранятся в актуальном состоянии в словаре данных, который выступает как база данных проекта. Каждая логическая функция может детализироваться с помощью DFD нижнего уровня согласно методам исходящего проектирования. Этими CASE-технологиями выполняются автоматизированное проектирование спецификаций программ (задание основных характеристик для разработки программ) и ведение словаря данных. Другой класс CASE-технологий поддерживает только разработку программ, включая:
- автоматическую генерацию кодов программ на основании их спецификаций;
- проверку корректности описания моделей данных и схем потоков данных;
- документирование программ согласно принятым стандартам и актуальному состоянию проекта;
- тестирование и отладку программ.
Кодогенерация программ выполняется двумя способами: создание каркаса программ и создание полного продукта. Каркас программы служит для последующего ручного варианта редактирования исходных текстов, обеспечивая возможность вмешательства программиста; полный продукт не редактируется вручную. В рамках CASE-технологий проект сопровождается целиком, а не только его программные коды. Проектные материалы, подготовленные в CASE-технологии, служат заданием программистам, а само программирование скорее сводится к кодированию — переводу на определенный язык структур данных и методов их обработки, если не предусмотрена автоматическая кодогенерация.
Анализ данных: инструменты и программы маркетинговой аналитики
Источник: studfile.net
X Международная студенческая научная конференция Студенческий научный форум — 2018
При создании ПО, как и при создании любого другого вида продукции, предназначенного для решения поставленных задач, разработчику необходимы определенные инструменты. Технологии программирования предоставляют инструментарий для разработки приложений. Иными словами, технология программирования – это различные технологии разработки программ для компьютеров, которые будут использоваться людьми для решения различных задач на компьютерах. Технологии программирования включают себя как сами языки программирования, так и средства для их разработки.
База данных — представленная в объективной форме совокупность самостоятельных материалов (статей, расчётов, нормативных актов, судебных решений и иных подобных материалов), систематизированных таким образом, чтобы эти материалы могли быть найдены и обработаны с помощью электронной вычислительной машины (ЭВМ).
Многие специалисты указывают на распространённую ошибку, состоящую в некорректном использовании термина «база данных» вместо термина «система управления базами данных», и указывают на необходимость различения этих понятий.
ОПИСАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ
В технологии программирования основное внимание уделяется изучению процессов разработки ПС (технологических процессов) и порядку их прохождения: методы и инструменты разработки ПС участвуют в этих процессах, их применении и формировании технологических процессов. В разработке программного обеспечения различные методы и инструменты для разработки ПС изучаются с точки зрения достижения определенных целей. Эти методы могут использоваться в различных технологических процессах [1].
Рассмотрим несколько аспектов развития технологии программирования:
«Стихийное» программирование — это отсутствие четко сформулированных технологий программирования. Этот период охватывает 60-е годы XX века. Разработка технологии должна изменить язык компьютера ассемблерами, а затем алгоритмическими языками. Также была заменена повторное использование подпрограмм.
Разработка «снизу в верх» использовалась спонтанно, подход, в котором были разработаны и внедрены первоначально относительно простые подпрограммы, из которых они позже пытались построить сложную программу. За это время начался кризис программирования. Это было выражено в том, что фирмы превысили все предельные сроки завершения программных проектов и их стоимость. В результате многие проекты еще не завершены.
Структурный подход к программированию. Этот период охватывает 60-70-е годы XX века. Структурный подход был набором технологических методов. Этот подход основан на принципе разложения сложных частей с целью их последующей реализации в виде отдельных подпрограмм. Структурный подход представляется в виде иерархии подзадач простейшей структуры.
Алгоритм представлялся «сверху вниз» и подразумевал реализацию общей идеи, обеспечивающей разработку интерфейсов подпрограмм. Были введены ограничения на разработку алгоритмов, рекомендованы формальные модели для их описания, а также специальный метод разработки алгоритмов — метод пошаговой детализации. Поддержка принципов структурного программирования была заложена в основу языков процедурного программирования (PL / 1, Algol-68, Pascal, C).
Объектный подход. Сформирован с середины 80-х и до конца 90-х годов XX века. Объектно-ориентированное программирование или ООП определяется технологией создания сложного программного обеспечения на основе представления программы в виде объектов, каждый из которых является экземпляром определенного класса. Классы, в свою очередь, образуют иерархию с наследованием свойств. Основным преимуществом ООП по сравнению со структурным подходом является более естественное разложение программного обеспечения, что значительно упрощает разработку программы.
Компонентный подход и CASE-технологии (с середины 90-х годов 20-го века до нашего времени). Этот подход включает в себя создание программного обеспечения из отдельных компонентов — физически отдельных частей программного обеспечения, которые взаимодействуют друг с другом посредством стандартизованных двоичных интерфейсов.
В отличие от обычных объектов объекты компонента могут быть собраны в динамически называемые библиотеки или исполняемые файлы, распределенные в двоичной форме (без исходного кода) и используемые на любом языке программирования, который поддерживает соответствующую технологию. В настоящее время рынок компонентов поддерживается в Интернете, массовой рекламе и публикациях. Принципы компонентного подхода были разработаны Microsoft, начиная с технологии OLE (Object Linking and Embedding), которая использовалась в более ранних версиях Windows для создания составных документов. Его разработкой стало появление COM-технологии (Component Object Model), а затем ее распределенной версии (DCOM), на основе которой были разработаны различные технологии [2].
Инструментарий по технологиям программирования обеспечивают процесс разработки программы и включают специализированное программное обеспечение, которое является средством разработки. Программное обеспечение этого процесса находится на всех технологических этапах процесса проектирования, программирования, отладки и тестирования. Пользователи этого класса программного обеспечения являются системными и прикладными программами.
Выделяют две группы программных продуктов:
Инструменты для создания приложений.
Средства для создания информационных систем (CASE-технологии).
Средства для создания приложений
Средства для создания приложений делятся на локальные и интегрированные средства, рисунок 1.
Рисунок 1. Инструментарий технологии программирования
Локальные инструменты делятся на языки и системы программирования, а также на среду инструментов пользователя.
Язык программирования — формализованный язык для описания алгоритма решения проблемы на компьютере. Они делятся на классы [1]:
машинные языки — языки программирования, воспринимаемые аппаратным обеспечением компьютера (машинные коды);
машинно-ориентированные языки — языки программирования, которые отражают структуру конкретного типа компьютера (сборщиков);
алгоритмические языки — компьютерно-независимые языки программирования для отражения структуры алгоритма (Pascal, BASIC, FORTRAN);
процессно-ориентированные языки — языки программирования, где есть возможность описать программу как набор процедур (подпрограмм);
проблемно-ориентированные языки — предназначены для решения задач определенного класса (Lisp, Simula);
интегрированные системы программирования.
Под системой программирования понимается набор языков программирования и виртуальная машина, которая обеспечивает выполнение программ, написанных на этом языке [1].
Система программирования, помимо переводчика, включает в себя текстовый редактор, компоновщик, стандартную библиотеку программ, отладчик, средства визуальной автоматизации для программирования. Примерами таких систем являются Delphi, Visual Basic, Visual C ++, Visual FoxPro [3]. Инструментальная среда пользователя представлена специальными средствами, встроенными в пакеты прикладных программ, такими как:
библиотека функций, процедур, объектов и методов обработки;
клавишные и языковые макросы;
конструкторы экранных форм и отчетов;
языки запросов высокого уровня;
конструкторы меню и многое другое.
Средства для создания информационных систем (CASE-технологии)
CASE (Computer Aided Software/System Engineering) — в дословном переводе – разработка программного обеспечения информационных систем с помощью компьютера.
CASE-технология — программный комплекс, автоматизирующий весь технологический процесс анализа, проектирования, разработки и сопровождения сложных программных систем.
Средства CASE-технологии делятся на две группы:
встроенные в систему реализации — все решения по проектированию и реализации привязаны к выбранной системе управления базами данных (СУБД);
независимые от системы реализации — все решения по проектированию ориентированы на унификацию (приведение к единообразию, к единой форме или системе) начальных этапов жизненного цикла и средств их документирования, обеспечивают большую гибкость в выборе средств реализации.
Основное достоинство CASE-технологии — поддержка коллективной работы над проектом за счет возможности работы в локальной сети разработчиков, экспорта/импорта любых фрагментов проекта, организационного управления проектом [2].
Информационная система – взаимосвязанная совокупность средств, методов и персонала, используемых для хранения, обработки и выдачи информации в интересах достижения поставленной цели.
2. РАЗРАБОТКА КОНЦЕПТУАЛЬНОЙ МОДЕЛИ БАЗЫ ДАННЫХ
База данных предназначена для хранения информации о классификации инструментария технологии программирования, который делится на две основные группы: средства для разработки приложений и CASE-технологии. Как уже известно (рисунок 1) средства для разработки приложений делятся на локальные средства и интегрированные среды. Локальные средства, в текущей базе данных, будут включать в себя языки программирования и инструментальную среду пользователя. Так как инструментальная среда по своей сути является интегрированной средой программирования, учитывать её в модели текущей базы данных не будем.
CASE-технологии являются автоматизированными средами разработки различных приложений. Само проектирование баз данных можно отнести к одной из функций CASE-технологий. Данный раздел разделим на две группы: название программного обеспечения и язык программирования, который позволяет взаимодействовать с данной средой.
Построим ER диаграмму, описывающую нашу модель базы данных (рисунок 2).
3. ЛОГИЧЕСКОЕ ПРОЕКТИРОВАНИЕ БАЗЫ ДАННЫХ
Для разработки заданной базы данных выбрана СУБД Microsoft Access 2016.
С учетом типов данных и ограничений, принятых в MS Access, опишем требования к таблицам (таблица 1-3).
Таблица 1 – Требования к таблице “Язык программирования
Источник: scienceforum.ru
Инструментарий технологии программирования
Определение 2 Инструментарий технологии программирования – совокупность программ и программных комплексов, обеспечивающих технологию разработки, отладки и внедрения создаваемых программных продуктов
Инструментарий технологии программирования – совокупность программ и программных комплексов, обеспечивающих технологию разработки, отладки и внедрения создаваемых программных продуктов. Он классифицируется так, как показано на рисунке 1:
Рисунок 1 – классификация инструментария
Системы программирования 3 Включают в себя: -компилятор; -интегрированную среду разработки программ; -отладчик; -средства оптимизации кода программ; -набор библиотек; -редактор связей; -сервисные средства; -справочные системы; -систему…
Включают в себя:
-компилятор;
-интегрированную среду разработки программ;
-отладчик;
-средства оптимизации кода программ;
-набор библиотек;
-редактор связей;
-сервисные средства;
-справочные системы;
-систему поддержки и управления продуктами программного комплекса.
Компилятор 4 Компилятор транслирует всю программу без её выполнения
Компилятор транслирует всю программу без её выполнения. Процесс компиляции представлен на рисунке 2:
Рисунок 2 – процесс компиляции
Транслятор 5 Транслятор (интерпретатор) выполняет пооперационную обработку и выполнение программы
Транслятор (интерпретатор) выполняет пооперационную обработку и выполнение программы. Трансляция проходит следующим образом (рисунок 3):
Рисунок 3 – процесс трансляции
Отладчики 6 Это специализированные программы, предназначенные для трассировки и анализа выполнения программ
Это специализированные программы, предназначенные для трассировки и анализа выполнения программ. Процесс отладки в среде программирования Lazarus представлен на рисунке 4:
Рисунок 4 – процесс отладки в среде программирования Lazarus
Трассировка 7 Это обеспечение выполнения в пооператорном варианте
Это обеспечение выполнения в пооператорном варианте. В режиме трассировки программист видит последовательность выполнения команд и значения переменных на данном шаге выполнения программы, что позволяет легче обнаруживать ошибки.
Рисунок 5 – процесс трассировки, производимый с помощью командной строки
Инструментальная среда пользователя 8
Инструментальная среда пользователя
Это специальные средства, встроенные в пакеты прикладных программ, такие как: библиотека функций, процедур, обьектов и методов обработки.
Рисунок 6 – инструментальная среда пользователя BPWin
Инструментальная среда пользователя 9
Инструментальная среда пользователя
Это специальные средства, встроенные в пакеты прикладных программ, такие как:
• макрокоманды;
• клавишные макросы;
• языковые макросы;
• конструкторы экранных форм и объектов;
• генераторы приложений;
• языки запросов высокого уровня;
• конструкторы меню и др.
Интегрированные среды разработки 10
Интегрированные среды разработки
Интегрированные среды разработки программ объединяют набор средств для их комплексного применения на технологических этапах создания программы. Среда разработки включает в себя: текстовый редактор, транслятор, средства автоматизации сборки, отладчик.
Рисунок 7 – интегрированные среды разработки с открытым исходным кодом NetBeans
Спасибо за внимание 11
Спасибо за внимание
Материалы на данной страницы взяты из открытых истончиков либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.
Источник: znanio.ru