Файл: Интегрированные среды разработки программ (Теоретический аспект интегрированных сред разработки программ).pdf
Добавлен: 28.03.2023
Просмотров: 102
Скачиваний: 2
СОДЕРЖАНИЕ
1. Теоретический аспект интегрированных сред разработки программ
1.2.Системы управления версиями
1.3.Терминология систем управления версиями
2.Практический аспект интегрированных систем разработки программ
2.1.Версии интегрированных сред разработки программ
2.2. Delphi как среда разработки программ
Conflict – конфликтная ситуация, когда несколько пользователей сделали изменения одного и того же участка документа. Конфликт обнаруживается в случае, когда один пользователь уже опубликовал свои изменения, а второй только пытается их опубликовать и система сама не может корректно слить конфликтующие изменения. Поскольку программа может быть недостаточно разумна для того, чтобы определить, какое изменение является «корректным», второму пользователю нужно самому разрешить конфликт (resolve).
Merge, integration (слияние) - объединение независимых изменений в единую версию документа. Осуществляется, когда два человека изменили один и тот же файл или при переносе изменений из одной ветки в другую.
Repository (хранилище документов) - место, где система управления версиями хранит все документы вместе с историей их изменения и другой служебной информацией.
Revision (версия документа). Системы управления версиями различают версии по номерам, которые назначаются автоматически.
Tag, label (метка) – которую можно присвоить определённой версии документа. Метка представляет собой символическое имя для группы документов, причём описывает она не только набор имён файлов, но и ревизию каждого файла. Ревизии включённых в метку документов могут принадлежать разным моментам времени.
Trunk, mainline (ствол) – основная ветвь разработки проекта. Политика работы со стволом может отличаться от проекта к проекту, но в целом она такова: большинство изменений вносится в ствол; если требуется серьёзное изменение, способное привести к нестабильности, создаётся ветвь, которая сливается со стволом, когда нововведение будет в достаточной мере испытано; перед выпуском очередной версии создаётся «релизная» ветвь, в которую вносятся только исправления.
Update, sync (обновление, синхронизация) – синхронизация рабочей копии до некоторого заданного состояния хранилища. Чаще всего это действие означает обновление рабочей копии до самого свежего состояния хранилища. Однако при необходимости можно синхронизировать рабочую копию и к более старому состоянию, чем текущее.
Working copy (рабочая копия) – рабочая (локальная) копия документов.
2.Практический аспект интегрированных систем разработки программ
2.1.Версии интегрированных сред разработки программ
Рассмотрим возможности ИСР на примере наиболее доступных и популярных версий.
Eclipse (от англ. затмение) – свободная интегрированная среда разработки модульных кроссплатформенных приложений. Развивается и поддерживается некоммерческой организацией Eclipse Foundation (http://www.eclipse.org/).
Первоначально Eclipse разрабатывалась фирмой «IBM» в качестве корпоративного стандарта ИСР для разработки на разных языках под платформы от данной компании. По сведениям «IBM», проектирование и разработка стоили 40 млн. долл. Исходный код был полностью открыт и сделан доступным после того, как Eclipse был передан для дальнейшего развития независимому от «IBM» сообществу.
В основе Эклипс лежат фреймворк OSGi и SWT/JFace, на основе которых разработан следующий слой – RCP (Rich Client Platform, платформа для разработки полноценных клиентских приложений). RCP служит основой не только для Эклипс, но и для других RCP-приложений, например, Azureus и File Arranger. Следующий слой – сам Эклипс, представляющий собой набор расширений RCP: редакторы, панели, перспективы, модуль CVS и модуль Java Development Tools (JDT) [3, с. 45].
Эклипс – в первую очередь, полноценная Java ИСР, нацеленная на групповую разработку: поддержка CVS входит в поставку Эклипс, активно развиваются несколько вариантов SVN-модулей, существует поддержка VSS и других. В силу бесплатности и высокого качества, Эклипс во многих организациях является корпоративным стандартом для разработки приложений.
Второе назначение Эклипс – служить платформой для разработки новых расширений, чем он и завоевал популярность: любой разработчик может расширить Эклипс своими модулями. Уже существуют C/C++ Development Tools (CDT), разрабатываемые инженерами QNX совместно с «IBM», и средства для языков COBOL, FORTRAN, PHP и прочие от различных разработчиков. Множество расширений дополняет среду Эклипс менеджерами для работы с базами данных, серверами приложений и др.
Рисунок 1. Интерфейс главного окна Эклипс
Эклипс написана на Java, потому является платформо-независимым продуктом, за исключением библиотеки SWT, которая разрабатывается для всех распространённых платформ. Библиотека SWT используется вместо стандартной для Java библиотеки Swing. Она полностью опирается на нижележащую платформу (операционную систему), что обеспечивает быстроту и натуральный внешний вид пользовательского интерфейса, но иногда вызывает на разных платформах проблемы совместимости и устойчивости приложений.
Основой Eclipse является платформа расширенного клиента (RCP - от англ. rich client platform). Её компоненты:
- ядро платформы (загрузка Eclipse, запуск модулей);
- OSGi (стандартная среда поставки комплектов (англ. bundles));
- SWT (портируемый инструментарий виджетов);
- JFace (файловые буферы, работа с текстом, текстовые редакторы);
- рабочая среда Эклипс (панели, редакторы, проекции, мастеры).
Другой популярной свободной ИСР является КДевелоп (http://www.kdevelop.org).
КДевелоп (англ. KDevelop) - свободная среда разработки программного обеспечения для UNIX-подобных операционных систем. Проект стартовал в 1998 году. КДевелоп распространяется согласно лицензии GNU (General Public License) [2, с. 56].
KDevelop не включает в свой состав компилятор, вместо этого он использует любой компилятор для создания исполняемого кода.
Текущая стабильная версия поддерживает большое количество языков программирования, таких как Ада, Bash, C, C++, Фортран, Java, Pascal, Perl, PHP, Python, Ruby и SQL.
КДевелоп использует встроенный компонент – текстовый редактор – через технологию KParts. Основным редактором является Kate.
Функции КДевелоп:
- подсветка исходного кода с учетом синтаксиса используемого языка программирования, который определяется автоматически;
- менеджер проектов для проектов разного типа, таких как Automake, qmake для проектов базирующихся на технологиях Qt и Ant для проектов, базирующихся на Java;
- навигатор классов (Class Browser);
- Front-end для GNU Compiler Collection;
- Front-end для GNU Debugger;
- помощников для генерации и обновления определения классов и платформы (framework);
- автоматическая система завершения кода (Си/C++);
- встроенная поддержка системы документирования исходных кодов (Doxygen);
- одна из систем контроля версий: SCM, CVS, Subversion, Perforce и ClearCase;
- функция Quick Open позволяющая быстро перемещаться по файлам.
KDevelop представляет собой «подключаемую» архитектуру. Когда разработчик делает изменения, он должен лишь скомпилировать плагин. Предусмотрена возможность сохранения профилей, указывающих какие плагины должны быть загружены. KDevelop не поставляется со встроенным текстовым редактором, он подключается как плагин. KDevelop не зависит от языка программирования и от платформы, на которой он запускается, поддерживая KDE, GNOME и много других технологий (например, Qt, GTK+ и wxWidgets).
Встроенный отладчик KDevelop позволяет работать графически со всеми средствами отладки, такими как точки останова и трассировки. Он также может работать с динамически подгружаемыми плагинами, в отличие от консольного gdb.
На данный момент существует примерно от 50 до 100 плагинов для данной IDE. Среди наиболее полезных – persistent project-wide code bookmarks, Code abbreviations, позволяющие быстро разворачивать текст, Source formatter, который переформатирует текст для style guide до сохранения, поиск по регулярным выражениям и project-wide поиск/замена.
Последней рассматриваемой ИСР является Microsoft Visual Studio (Microsoft Visual Studio, рис. 2). По сути, Microsoft Visual Studio является линейкой продуктов компании «Майкрософт», включающих интегрированную среду разработки программного обеспечения и ряд других инструментальных средств [4, с. 55].
Рисунок 2. Интерфейс Microsoft Visual Studio
Microsoft Visual Studio включает один или несколько компонентов из следующих: Visual Basic.NET, Visual C++, Visual C#, Visual F#, Microsoft SQL Server, Visual InterDev, Visual J++, Visual J#, Visual FoxPro, Visual Source Safe.
Одним из главных преимуществ Майкрософт Визуал Студия является высокое качество документирования процесса разработки и описания возможных проблем в MSDN Library. Однако наиболее интересная для профессионала часть, посвящённая тонкостям разработки, существует только на английском языке.
Aptana Studio - бесплатная IDE, профессиональная среда разработки Web 2.0 приложений.
Используется для создания веб приложений с поддержкой всех современных технологий - HTML5, CSS3, JavaScript, Ruby, Rails, PHP и Python.
Основные возможности Aptana Studio:
- Имеет мощные функции по работе с кодом HTML, CSS, JavaScript, PHP, Ruby - редактирование, просмотр структуры кода, мгновенный предпросмотр в распространённых моделях браузеров.
- Работа с использованием последних спецификаций HTML 5 и CSS3. Разработчику предоставляется подробная информация о поддержке каждого элемента в распространённых веб-браузерах.
- Встроенный отладчик позволяет устанавливать точки останова, просматривать значения переменных и контролировать исполнение программы. Также в наличии интегрированный Ruby and Rails отладчик.
- Мастер развертывания приложений позволяет работать с удалёнными проектами с использованием FTP, SFTP, FTPS протоколов.
- Поддержка совместной работы над проектами.
- Поддержка работы из командной строки.
- Расширенные возможности по настройке IDE, возможность создания пользовательских скриптов.
- Подключаемые модули для расширения функциональности IDE.
NetBeans IDE - интегрированная среда разработки приложений, бесплатная IDE с открытым исходным кодом.
Предназначена для профессиональной разработки десктоп приложений, web-приложений, корпоративных систем, программ для мобильных устройств. NetBeans - единственная IDE, которая устроит и начинающего разработчика и профессионала.
Особенности программы:
- Поддерживаемые языки программирования: Java, JavaFX, PHP, JavaScript, Ruby, Groovy, Python и C/C++, а также все языки разметки: HTML, XML и стили CSS.
- Поддерживает технологии: J2SE, J2EE, J2ME, JavaFX SDK, PHP Zend framework, UML, SOA, Ajax, Ruby on Rails, Groovy and Grails.
- NetBeans IDE является платформой для построения десктоп приложений с функциональным пользовательским интерфейсом, т.к. представляет из себя фреймворк к Java библиотеке Swing. Это сэкономит массу времени тому, кто не поленится ознакомиться с особенностями программирования на платформе NetBeans.
- NetBeans IDE является платформой для создания плагинов и расширения своей функциональности.
- Основные функции: рефакторинг, профилирование, работа с CVS и SVN, работа с удалённым сервером через FTP, визуальный редактор пользовательских интерфейсов, подсветка синтаксических конструкций, автодополнение, показ справки на лету, возможность использования готовых шаблонов кода, интеграция с серверами - автоматическое развёртывание приложений, управление сервером и т.д.
- Расширенные возможности по работе с базами данных - встроенный клиент к базам данных - MySQL, Postgres, Oracle и др., редактор запросов SQL.
Подробное описание возможностей NetBeans - NetBeans - универсальная IDE.
NetBeans для WEB разработки - NetBeans и PHP - настройка NetBeans IDE для WEB программирования.
Программирование на PHP Smarty в NetBeans. Работа с Apache Tomcat в NetBeans - Настройка и начало работы с сервером Apache Tomcat в NetBeans IDE.
2.2. Delphi как среда разработки программ
Delphi - ϶ᴛᴏ среда разработки программ, ориентированных на работу в Windows. В корне идеологии Delphi лежат методология объектно-ориентированного программирования и технология визуального проектирования.
Включать объекты в свою программу пользователь может вручную, используя соответствующие операторы, или путем визуального программирования, используя заготовки – компоненты.
Работа производится в Интегрированной среде разработки (ИСР) Delphi, которая предоставляет пользователю заготовку формы, в которой можно разместить с помощью мыши необходимые компоненты, имеющиеся в библиотеке Delphi. С помощью простых манипуляций мышью можно изменять размеры и расположение этих компонент. При этом в процессе проектирования можно постоянно видеть результат – изображение формы и расположенных на ней компонентов. А самое главное состоит по сути в том, что во время проектирования формы редактор кода Delphi автоматически генерирует код программы, включая в нее соответствующие фрагменты, описывающие данный компонент. В соответствующих диалоговых окнах можно изменить заданные по умолчанию свойства компонентов и, при крайне важно сти, написать обработчики событий.