Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Системы программирования



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

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

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

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

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

В процессе программирования очень часто пользуются готовыми подпрограммами, реализующими стандартные функции (например, вычисляющих математические функции sin или In); они содержатся в библиотеках, которые поставляются вместе с компилятором.

Исходный текст большой программы состоит, как правило, из не­скольких модулей (файлов с исходными текстами), потому что хранить все тексты в одном файле неудобно - в них сложно ориентироваться. Каждый модуль компилируется в отдельный файлс объектным кодом. Сгенерированный код модулей и подключенные к нему стандартные функции надо не просто объединить в одно целое, а выполнить такое объ­единение с учетом требований операционной системы, то есть получить на выходе программу, отвечающую определенному формату. Для этого объектный код обрабатывается специальной программой -редактором связей (сборщиком), который выполняет связывание объектных модулей и машинного кода стандартных функций, находя их в библиотеках, и формирует на выходе работоспособное приложение- исполнимый код (обычно итоговый файл имеет расширение.ЕХЕ или.СОМ).

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

Интегрированные системы программирования

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

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

Для всех универсальных языков программирования сегодня имеется несколько систем программирования, выпускаемых различными фирмами и ориентированных на различные модели ПК и операционные систе­мы. Наибольшее распространение получили системы, которые удобны в использовании, позволяют получать эффективные программы, имеют богатые библиотеки подпрограмм и мощные возможности для отладки. К ним относятся, в частности, Turbo Pascal, Turbo C++, Microsoft С, Microsoft Basic.

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

В последние несколько лет в программировании (особенно для опера­ционной системы Windows) все большее распространение получает так называемый визуальный подход. Прежде серьезным препятствием для разработки графических приложений была сложность создания различ­ных элементов управления и контроль за их работой. В окнах любой Win­dows-программы имеется множество стандартных элементов управления (кнопки, пункты меню, списки, переключатели и т. д.). Очень трудоемко вручную описывать процесс создания этих элементов в соответствии с требованиями Windows, на глазок определять координаты, отслеживать их состояние с помощью специальных команд.

Например, для простой программы, складывающей два числа, по­требуется всего один оператор (одна строка исходного текста) для вы­полнения собственно необходимых действий и сотни строк кода - для подготовки приложения к работе в Windows, создания одной кнопки и пары полей ввода.

Этот процесс автоматизирован в средах быстрого проектирования (Rapid Application Development, RAD-среды). Все необходимые элементы оформления и управления создаются и обслуживаются не путем ручно­го программирования, а с помощью готовых визуальных компонентов, которые с помощью мыши «перетаскиваются» в проектируемое окно. Их свойства и поведение затем настраиваются с помощью простых ре­дакторов, визуально показывающих характеристики соответствующих элементов. При этом вспомогательный исходный текст программы, ответ­ственный за создание и работу этих элементов, генерируется RAD-средой автоматически, что позволяет сосредоточиться только на логике реша­емой задачи. В результате программирование во многом превращается в проектирование окон (подобный подход называют также визуальным программированием).

Компоненты окон создавать достаточно легко, поэтому во всем мире сегодня распространяются тысячи бесплатных и платных компонентов для наиболее известных RAD-сред. Из них формируются библиотеки компонентов - объектные репозитории. Компоненты выступают в роли «строительных кирпичиков», позволяющих собирать готовое приложение

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

Из визуальных сред быстрого проектирования программ наибольшую популярность приобрели: для языка Basic - Microsoft Visual Basic; Pascal - Borland Delphi; C++ - Borland C++Builder; Java - Symantec Cafe. К си­стемам проектирования, использующим визуальные средства разработки, можно отнести также AutoCAD, системы лабораторных исследований Lab View, MATLAB, математический пакет Maple. Все они являются лидерами в своей области.

Для разработки серверных и распределенных приложений можно ис­пользовать систему программирования Microsoft Visual C++, продукты фирмы Inprise под маркой Borland, практически любые средства про­граммирования на Java.

CASE-средства программирования

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

Наиболее трудоемкими этапами разработки ИС являются этапы ана­лиза и проектирования, в процессе которых CASE-средства обеспечивают качество принимаемых технических решений и подготовку проектной документации. При этом большую роль играют методы визуального представления информации. Это предполагает построение структурных или иных диаграмм в реальном масштабе времени, использование много­образной цветовой палитры, сквозную проверку синтаксических правил. Графические средства моделирования предметной области позволяют разработчикам в наглядном виде изучать существующую программу, перестраивать ее в соответствии с поставленными целями и имеющимися ограничениями.

В разряд CASE-средств попадают как относительно дешевые системы для персональных компьютеров с весьма ограниченными возможностями, так и дорогостоящие разработки для неоднородных вычислительных платформ и операционных сред. Сейчас на рынке распространяется око­ло 300 различных CASE-средств, наиболее мощные из которых так или иначе используются практически всеми ведущими программистскими фирмами. В принципе к ним относится любое программное средство, автоматизирующее ту или иную совокупность процессов жизненного цикла ПО и обладающее следующими характерными особенностями:

наличие графических инструментов для описания и документирования ИС, обеспечивающих удобный интерфейс разработчика и развивающие его творческие возможности;

тесная интеграция отдельных компонент, обеспечивающая управля­емость процессом разработки ИС;

использование специальным образом организованного хранилища проектных метаданных (репозитория).

Интегрированные CASE-средства (поддерживающие полный жизнен­ный циклПО) содержат следующие компоненты:

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

графические средства анализа и проектирования, обеспечивающие создание и редактирование иерархически связанных диаграмм (DFD, ERD и др.), образующих модели ИС;

средства разработки приложений, включая языки 4GL и генераторы кодов;

инструменты конфигурационного управления;

средства документирования, тестирования, управления проектом, реинжиниринга.

Все современные CASE-средства подразделяются по типам и катего­риям. Классификация по типам отражает их функциональную ориента­цию на те или иные процессы жизненного цикла ПО. Классификация по категориям определяет степень интегрированное™ системы по выполня­емым функциям: различают отдельные локальные средства, решающие небольшие автономные задачи (tools); наборы частично интегрирован­ных средств, охватывающих большинство этапов жизненного цикла ИС (toolkit); полностью интегрированные средства, поддерживающие весь жизненный циклИС, связанные общим репозиторием. Кроме того, CASE-средства можно классифицировать по таким признакам, как методология и модели систем и БД, степень интегрированное™ с СУБД, доступные аппаратные и программные платформы и т.д.

Классификация по типам соотносится с компонентным составом CASE-средств; можно назвать следующие основные типы:

средства анализа (Upper CASE), предназначенные для построения и анализа моделей предметной области;

средства анализа и проектирования (Middle CASE), поддерживающие наиболее распространенные методологии проектирования и использую­щиеся для создания проектных спецификаций. Выходом таких средств являются спецификации компонентов и интерфейсов системы, архитек­туры системы, алгоритмов и структур данных;

инструменты проектирования баз данных, обеспечивающие моделиро­вание данных и генерацию схем баз данных (как правило, на языке SQL) для наиболее распространенных СУБД. К ним относятся ERwin (Logic Works), S-Designer (SDP) и DataBase Designer (ORACLE);

средства разработки приложений, такие как 4GL (Uniface Compu-ware), JAM (JYACC), PowerBuilder (Sybase), Developer/2000 (ORACLE), New Era (Informix), SQLWindows (Gupta), Delphi (Borland) и генераторы кодов, входящие в состав Vantage Team Builder, PRO-IV и частично в Silverrun;

средства реинжиниринга, обеспечивающие анализ программных кодов и схем баз данных и формирование на их основе различных моделей и проектных спецификаций.

Контрольные вопросы и задания

1. В чем состоит назначение транслятора?

2. Опишите принципы работы интерпретатора и компилятора.

3. Перечислите основные компоненты инструментальных средств создания
программ и опишите их функции.

4. В чем заключаются отличительные особенности визуальных сред быстрого
программирования?

5. Охарактеризуйте интегрированные системы программирования.

6. С какой целью разработчики ПО используют CASE-средства





Дата публикования: 2014-11-18; Прочитано: 3326 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.009 с)...