Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

ИНТЕГРИРОВАННЫЕ СРЕДЫ РАЗРАБОТКИ ПРОГРАММ (текстовый редактор, компилятор, компоновщик, отладчик, подсистему исполнения в одной оболочке)

Содержание:

Введение.

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

Дальнейшее развитие средств разработки также тесно связано с повсеместным распространением развитых средств графического интерфейса пользователя. Такой интерфейс стал неотъемлемой составной частью многих современных ОС и так называемых графических оболочек. Со временем он стал стандартом де-факто практически во всех современных прикладных программах.

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

1.История.

Первые IDE были созданы для работы через консоль или терминал. Ранние системы не могли поддерживать того, что программы были подготовлены, ис-пользуя блоксхемы, вводя текст с перфорированных карт (или перфолента, и т.д.) прежде, чем представить их компилятору. Dartmouth BASIC был первым язы­ком, который был создан с IDE (и был также первым, который был разработан для использования в консоли или терминале). Эта IDE (часть Dartmouth Time Sharing System) была командная (т.е. управлялась при помощи команд), и поэтому очень отличалась от управляемых с помощью меню, графических IDE, распространенных сегодня. Однако это позволило редактировать, управлять файлами, компилировать, отлаживать и выполнять способом, непротиворечивым современным IDE.

Maestro Iпродукт от Softlab Munich и был первой в мире интегрированной средой разработки для программного обеспечения в 1975 г.[2] Maestro I был установлен для 22,000 программистов во всем мире. До 1989 6,000 установок существовали в Федеративной Республике Германия. Maestro I был возможно мировым лидером в этом поле в течение 1970-х и 1980-х. На сегодняшний день Maestro I может быть найден разве что в Музее Информационной технологии в Арлингтоне.

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

2.Среды разработки.

Интегрированная среда разработки (ИСР) – это система программных средств, используемая программистам для разработки программного обеспечения. В английском языке такая среда называетсяIntegrated development environment или сокращённо IDE.
Если IDE включает в себя возможность визуального редактирования интерфейса программы, она называется средой визуальной разработки.
IDE обычно включает в себя:
● Текстовый редактор;
● Компилятор;
● Интерпретатор;
● Средства автоматизации разработки и сборки ПО и отладчик;
● Иногда также содержит средства для интеграции с системами управления версиями и разнообразные инструменты для упрощения конструирования графического интерфейса пользователя.

Компилятор — это такая программа, которая считывает исходные коды, написанные программистом и преобразует эти коды в программу.

Интерпретатор — это программа которая считывает команды, находящиеся в исходных кодах, сразу выполняя их.
Интегрированные среды разработки были созданы для того, чтобы максимизировать производительность программиста благодаря тесно связанным компонентам с простыми пользовательскими интерфейсами. Это позволит разработчику делать меньше действий для переключения различных режимов, в отличие от дискретных программ разработки. Однако, так как IDE является сложным программным комплексом, то лишь после долгого процесса обучения среда разработки сможет качественно ускорить процесс разработки ПО. IDE обычно представляет из себя единственную программу, в которой проводилась вся разработка. Она обычно содержит много функций для создания, изменения, компилирования, развертывания и отладки программного обеспечения. Цель среды разработки заключается в том, чтобы абстрагировать конфигурацию, необходимую, чтобы объединить утилиты командной строки в одном модуле, который позволит уменьшить время, чтобы изучить язык, и повысить производительность разработчика. Также считается, что трудная интеграция задач разработки может далее повысить производительность. Например, IDE позволяет проанализировать код и тем самым обеспечить мгновенную обратную связь и уведомить о синтаксических ошибках.
IDE позволяют избежать большого объема однообразных действий и тем самым существенно повысить эффективность процесса разработки и отладки позволяют, то есть они являются RAD-средами различной степени автоматизации процесса программирования.
IDE также часто поддерживают пометки в комментариях в исходном тексте программ, отмечающие места, требующие дальнейшего внимания или предполагающие внесение изменений, такие как TODO. В дальнейшем эти пометки могут выделяться редактор или использоваться для организации совместной работы с построением тегов и задач. Использование комментариев с TODO так же является стандартом оформления кода на Object Pascal, Delphi.

Работа в интегрированной среде дает программисту:
• Возможность использования встроенного много файлового текстового редактора, специально ориентированного на работу с исходными текстами программ.

•Диагностика выявленных при компиляции ошибок, и исходный текст программы, доступный редактированию, выводятся одновременно в многооконном режиме.

•Возможность организации и ведения параллельной работы над несколькими проектами. Менеджер проектов позволяет использовать любой проект в качестве шаблона для вновь создаваемого проекта. Опции используемых компиляторов и список исходных файлов проекта, устанавливаются в диалоговых меню и сохраняются в рамках проекта, устраняя необходимость работы с неудобными batch-файлами.

•Перекомпиляции подвергаются только редактировавшийся модули.

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

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

3.Редактор исходного кода.

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

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

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

4.TODO.

Интегрированные среды разработки также часто поддерживают пометки в комментариях в исходном тексте программ, отмечающий места, требующие дальнейшего внимания или предполагающие внесение изменений, такие как TODO[3][4]. В дальнейшем эти пометки могут выделяться редакторами (напр. vim[5], emacs[6], встроенный редактор Visual Studio[7]) или использоваться для организации совместной работы с построением тегов и задач (например, в IntelliJ[8]). В руководстве по оформлению исходных текстов Android приводится следующий формат записи[значимость факта?]:

// TODO: однострочное_описание

Там же указывается, что в случае использования @SupressWarring обязательно указание TODO с объяснением причин подавления предупреждения[9].

Использование комментариев с TODO так же является стандартом оформления кода на Object Pascal, Delphi[10][значимость факта?].

Microsoft в руководстве по Visual Studio рекомендует использовать тег TODO (наравне с HACK, UNDONE) для следующих пометок:

- добавление новых функций

- известных проблем, которые нужно устранить

- предполагаемых к реализации классов

- мест размещения кода обработчиков ошибок

- напоминаний о необходимости переработки участка кода.

5. Возможности ИСР  популярных версий.

5.1 Eclipse (от англ. затмение) – свободная интегрированная среда разработки модульных кроссплатформенных приложений (рисунок 69). Развивается и поддерживается некоммерческой организацией 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).

Эклипс – в первую очередь, полноценная Java ИСР, нацеленная на групповую разработку: поддержка CVS входит в поставку Эклипс, активно развиваются несколько вариантов SVN-модулей, существует поддержка VSS и других. В силу бесплатности и высокого качества, Эклипс во многих организациях является корпоративным стандартом для разработки приложений.

Второе назначение Эклипс – служить платформой для разработки новых расширений, чем он и завоевал популярность: любой разработчик может расширить Эклипс своими модулями. Уже существуют C/C++ Development Tools (CDT), разрабатываемые инженерами QNX совместно с «IBM», и средства для языков COBOL, FORTRAN, PHP и прочие от различных разработчиков. Множество расширений дополняет среду Эклипс менеджерами для работы с базами данных, серверами приложений и др.

5.2 Другой популярной свободной ИСР является КДевелоп (англ. KDevelop) - свободная среда разработки программного обеспечения для UNIX-подобных операционных систем. Проект стартовал в 1998 году. КДевелоп распространяется согласно лицензии GNU (General Public License).

KDevelop не включает в свой состав компилятор; вместо этого он использует GNU Compiler Collection (или любой другой компилятор) для создания машинного кода.

Текущая стабильная версия поддерживает большое количество языков программирования, таких как Ада, 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 поиск/замена.

5.3 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. Однако наиболее интересная для профессионала часть, посвящённая тонкостям разработки, существует только на английском языке.

5.4 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.

5.5Code::Blocks - это бесплатная C и C++ IDE с открытым исходным кодом, приложение расширяемое, полностью настраивается и может работать на нескольких платформах.

Это программное обеспечение разработано для Windows, Linux, FreeBSD и Mac OS X. Оно создано с использованием плагинов и может быть расширено путём установки или создания дополнительных компонентов.

Особенности CodeBlocks:

Программа имеет WYSIWYG-редактор для библиотеки wxWidgets для разработки графического интерфейса пользователя (GUI).

Поддержка нескольких компиляторов: MinGW/GCC C/C++, Microsoft Visual C++, Borland C++ и др.

Настраиваемый и расширяемый пользовательский интерфейс с поддержкой вкладок, с подсветкой синтаксиса, сворачиванием блоков кода, авто-завершением кода, интеллектуальными отступами и браузером классов.

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

Code::Blocks имеет расширенную функциональность для отладки и поддерживает GNU GDB и MS CDB.

Кроме того, у программы есть полная поддержка точек остановки (breakpoints), отображение стека вызовов, дизассемблер, настраиваемый дамп памяти и отображение информации профайлера (GNU Profiler).

IDE совместима с MSVC и Dev-C++, может импортировать проекты и рабочие пространства.

Dev-C++ - интегрированная среда разработки на C и C++, полнофункциональная C++ IDE.

Возможности DevCpp:

Удобный редактор с подсветкой синтаксиса, нумерацией строк, автоотступами и т.д.

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

Заготовки кода и шаблоны для вставки.

Использование закладок в редакторе для быстрого перемещения по коду.

Экспорт исходных файлов или целого проекта в HTML или RTF для публикации исходных кодов на своём веб сайте.

Встроенный менеджер проектов.

Импорт проектов из MS Visual C++.

Возможность настройки ассоциации файлов по расширению - c, cpp, h и т.д.

В навигаторе классов два варианта обзора - просмотр функций, классов и их членов как для всего проекта, так и для текущего редактируемого файла.

Гибкая настройка рабочей среды, редактора и компилятора, большое количество различных опций.

Используется Mingw GCC компилятор, может работать с любым компилятором GCC.

Воможность отладки проекта - встроенный дебаггер GDB.

Возможна работа с CVS (скачивается отдельно).

Существует портабельная версия программы, не требующая установки.

Мультиязычный пользовательский интерфейс с поддержкой русского и украинского языков.

Geany также интегрированная среда разработки ПО. Поддерживается на ОС Linux, а также на Mac Os и на Windows. Работает с тридцатью двумя языками (также и с русским языком). В составе Geany отсутствует компилятор. Компилятор можно установить как дополнение. Поддерживает достаточно много языков программирования, среди которых присутствуют классический С. С++ и С#.

Пример работы в среде Geany, на Linux OS:

Достоинства: Простота и удобность, подсветка исходного кода, возможность подключать дополнения.

Недостатки: Не включает в свой состав компилятор.

Среда распространена во многих странах (Более чем в тридцати).

5.6 Komodo или ActiveStateKomodo — была написана на JavaScript, XUL, Python. Интерфейс данной среды только на aнглийском языке. Рaботает нa теx жe опeрационных систeмах как Geany: на Os Linux, Windоws и Mac Os.

Поддерживает десять языков программирования, среди которые присутствуют: PHP, Ruby, HTML5.

Логотип Komodo:

Пример разработки в среде Komodo:

Достоинства: Дополнение Code Explorer позволяет просматривать объектное дерево скрипта или библиотеки, среда является кроссплатформенной, удобный отладчик с возможностью удаленной отладки, возможность настроить интерфейс среды «под себя».

Недостатки: Высокая стоимость, поддерживает мало языков программирования, сильно загружает компьютер (а именно оперативную память), является сложным для понимания.

Распространена в основном в англоговорящих странах.

5.7 Kylix — интегрированная среда. Функционирует на OS Linux. Работает с С, С++ и ObjectPascal.

В данной среде есть возможность писать приложения веб-служб.

Kylix выпускался в трёх пакетах. Эти пакеты: Enterprise Edition — включал в себя сто девяносто компонентов (являлся самым большим и самим дорогим пакетом программы); Professional Edition (более дешевый вариант, который включал в себя около 165 компонентов); Open Edition — бесплатный пакет программы, содержащий в себе 75 компонентов, в нём отсутствует средства для работы с базами данных.

Обновленная версия Kylix 2, в отличии от Kylix работала гораздо быстрее. Например, Kylix 1 осуществлял сортировку пузырьком массива из 115 элементов полторы минуты, Kylix 2 — одну секунду.

В 2002 году данную среду разработки прекратил поддерживать разработчик.

Пример разработки в среде Kylix:

Достоинства: Удобен в переносе написанного с одной операционной системы на другую.

Недостатки: Данная среда больше не поддерживается разработчиком.

Распространена в основном в Европейских странах и США, из-за того что разработчик (Borland) перестал поддерживать Kylix — становится всё менее популярной и не востребованной.

5.8 Netbeans — свободная интегрированная среда разработки приложений (IDE)на языка программирования Java, Python, PHP, JavaScript, C, C++, Ада[4] и ряда других.

Проект NetBeans IDE поддерживается и спонсируется компанией Oracle, однако разработка NetBeans ведётся независимым сообществом разработчиков-энтузиастов (NetBeans Community) и компанией NetBeans Org.

Последние версии NetBeanе IDEподдерживают рефакторинг профилирование, выделение синтаксических конструкций цветом, автодополнение набираемых конструкций на лету и множество предопределённых шаблонов кода.

Для разработки программ в среде NetBeans и для успешной инсталляции и работы самой среды NetBeans должен быть предварительно установлен Sun JDK или J2EE SDK подходящей версии. Среда разработки NetBeans по-умолчанию поддерживала разработку для платформ J2SE и J2EE. Начиная с версии 6.0 NetBeans поддерживает разработку для мобильных платформ J2ME, C++ (только g++) и PHP без установки дополнительных компонентов.

5.9 PyCharm — интегрированная среда разработки для языка программирования Python. Предоставляет средства для анализа кода, графический отладчик, инструмент для запуска юнит-тестов и поддерживает веб-разработку на Django. PyCharm разработана компанией JetBrains[5] на основе IntelliJ IDEA.

PyCharm — это кросс-платформенная среда разработки, которая совместима с Windows, MacOS, Linux. PyCharm Community Edition (бесплатная версия) находится под лицензией Apache License, а PyCharm Professional Edition(платная версия) является проприетарным ПО.

Статический анализ кода, подсветка синтаксиса и ошибок.

Навигация по проекту и исходному коду: отображение файловой структуры проекта, быстрый переход между файлами, классами, методами и использованиями методов.

Рефакторинг: переименование, извлечение метода, введение переменной, введение константы, подъём и спуск метода и т. д.

Инструменты для веб-разработки с использованием фреймворка Django

Встроенный отладчик для Python

Встроенные инструменты для юнит-тестирования

Разработка с использованием Google App Engine

Поддержка систем контроля версий: общий пользовательский интерфейс для Mercurial, Git, Subversion, Perforce и CVS с поддержкой списков изменений и слияния.

Пользователи могут сами писать свои плагины, тем самым расширять возможности PyCharm. Некоторые плагины из других JetBrains IDE могут работать с PyCharm. Существует более тысячи плагинов, совместимых с PyCharm.

PyCharm был выпущен на рынок интегрированных сред разработки для Python для создания конкуренции с PyDev и более распространённой среды разработки Komodo IDE. Бета-версия была выпущена в июле 2010 года, версия 1.0 была выпущена тремя месяцами позже.

Версия 2.0 вышла 13 декабря 2011 года. Версия 3.0 была выпущена 24 сентября 2013 года.

PyCharm Community Edition, бесплатная версия с открытым исходным кодом, была опубликована 22 октября 2013 года.

В марте 2016 года JetBrains перешла на подписную модель лицензирования, а вместе с этим изменилась и нумерация версий. Теперь номер версии выглядит как YYYY.R, где YYYY — год выпуска, а R — выпуск в течение этого года.

5.10 Spyder(ранее Pydee)свободная и кроссплатформенная интерактивная IDE для научных расчетов на языке Python, обеспечивающая простоту использования функциональных возможностей и легковесность программной части.

Spyder является частью модуля spyderlib для Python, основанного на PyQt4, pyflakes, rope и Sphinx, предоставляющего мощные виджеты на PyQt4, такие как редактор кода, консоль Python (встраиваемая в приложения), графический редактор переменных (в том числе списков, словарей и массивов).

Редактор с подсветкой синтаксиса Python, C/C++ и Fortran

Динамическая интроспекция кода (с помощью rope) — автодополнение, переход к определению объекта по клику мыши

Нахождение ошибок на лету (с использованием pyflakes)

Поддержка одновременного использования множества консолей Python (включая оболочку IPython)

Просмотр и редактирование переменных с помощью GUI (поддерживаются различные типы данных - числа, строки, списки, массивы, словари)

Встроенные средства доступа к документации (в формате Sphinx)

Гибко настраиваемый интерфейс

Интеграция с научными библиотеками Python - NumPy, SciPy, Matplotlib, Pandas

Полный список возможностей доступен на официальном сайте.

5.11 Xcode — интегрированная среда разработки (IDE) программного обеспечения для платформ macOS, iOS, watchOS и tvOS, разработанная корпорацией Apple. Первая версия выпущена в 2003 году. Стабильные версии распространяются бесплатно через Mac App Store. Зарегистрированные разработчики также имеют доступ к бета-сборкам через сайт Apple Developer.

Xcode включает в себя большую часть документации разработчика от Apple и Interface Builder — приложение, использующееся для создания графических интерфейсов.

Пакет Xcode включает в себя изменённую версию свободного набора компиляторов GNU Compiler Collection и поддерживаетязыки C, C++, Objective-C, Objective C++ (англ.)русск., Swift, Java, AppleScript, Python и Ruby с различными моделями программирования, включая (но не ограничиваясь) Cocoa, Carbon и Java. Сторонними разработчиками реализована поддержка GNU Pascal[1], Free Pascal[2], Ada[3], C#[4], Perl[5], Haskell[6] и D[7]. Пакет Xcode использует GDB в качестве back-end’а для своего отладчика.

В августе 2006 Apple объявила о том, что DTrace, фреймворк динамической трассировки от Sun Microsystems, выпущенный как часть OpenSolaris, будет интегрирован в Xcode под названием Xray. Позже Xray был переименован в Instruments.

Среда разработки Xcode обеспечивает эффективность работы как небольших, так и крупных девелоперских команд. В Xcode IDE используется схема разделения данных приложения Model-View-Controller (Модель-Представление-Контроллер или MVC) для сегментации каждого слоя приложения. Так проще вносить изменения в код. К примеру, слой UI разделен инструментами, такими как новый Interface Builder, с его помощью можно помещать на экран средства визуального контроля. Auto Layout позволяет динамично управлять презентацией объектов для экранов разных размеров; с помощью Storyboard удобно располагаются экраны приложения; режим Preview быстро покажет, как выглядят экраны приложения. Ни один из этих инструментов не затрагивает программный код, который вы создаете.

Прежде коды в писались языком Objective-C. В июне 2014 Apple представила Swift, новый язык для создания мобильных приложений. Это самый быстро осваиваемый язык по сравнению с другими языками программирования. Людям из Apple потребовалось достаточно много времени, чтобы разработать Swift. Как итог всех усилий, появился язык, который разработчикам освоить намного проще, чем тот же Objective-C. К тому же допускается присутствие в одном проекте как Swift, так и Objective-C.

5.12 Xcode 8 — это радикально быстрая версия, в ней содержится практически все, что нужно для разработки приложений под все устройства Apple. В частности, новые редакторские расширения. Опция Runtime Issues оповещает о дефектах, которые автоматически обнаруживает Xcode. Thread Sanitizer отслеживает изменение данных и прочие баги. Проверку интерфейса осуществляет View Debugger — обновляющийся инструмент с высокой визуальной точностью. Memory Debugger оповещает об «утечках памяти» и скрытых багах.

Чтобы разместить приложение, созданное в Xcode IDE, в iTunes App Store, понадобится лицензия разработчика, которая предоставит доступ в iTunes Connect, инструмент для размещения приложений. Для корпоративных приложений iTunes Connect не нужен, но понадобится сертификат, чтобы зарегистрировать каждое приложение перед публикацией в вашем личном магазине.

6. Командный интерпретатор

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

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

В операционные системы MS-DOS и Windows 95 включён командный интерпретатор COMMAND.COM, в Windows NT — cmd.exe, в OS/2 командный интерпретатор тоже называется cmd.exe, самый распространённый командный интерпретатор в Linux и FreeBSD — bash, помимо которого есть большое семейство других.

Как правило, при низкоуровневой настройке ОС у пользователя есть возможность менять командный интерпретатор, используемый по умолчанию.

К функциям интерпретатора командной строки относятся:

Взаимодействие с пользователем (редактирование командной строки, история команд и т. д.).

Обработка (расширение) шаблонов имен («*», «?» и т. д.).

Перенаправление ввода-вывода команд.

Управление заданиями.

Bash— усовершенствованная и модернизированная вариация командной оболочки Bourne shell. Одна из наиболее популярных современных разновидностей командной оболочки UNIX. Особенно популярна в среде Linux, где она часто используется в качестве предустановленной командной оболочки.

Представляет собой командный процессор, работающий, как правило, в интерактивном режиме в текстовом окне. Bash также может читать команды из файла, который называется скриптом (или сценарием). Как и все Unix-оболочки, он поддерживает автодополнение имён файлов и каталогов, подстановку вывода результата команд, переменные, контроль над порядком выполнения, операторы ветвления и цикла. Ключевые слова, синтаксис и другие основные особенности языка были заимствованы из sh. Другие функции, например, история, были скопированы из csh и ksh. Bash в основном соответствует стандарту POSIX, но с рядом расширений.

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

Скрипты - В простейшем случае, скрипт — простой список команд, записанный в файл. Командный процессор должен знать, что он должен этот файл обработать, а не просто прочесть его содержимое. Для этого служит специальная конструкция, называемая shebang: #!. Символ # задаёт комментарий, но в данном случае shebang означает, что после этого спецсимвола находится путь к интерпретатору для исполнения сценария.

Синтаксис команд bash — это расширенный синтаксис команд Bourne shell. Окончательная спецификация синтаксиса команд bash есть в Bash Reference Manual, распространяемом проектом GNU.

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

chmod +rx scriptname # выдача прав на чтение/исполнение любому пользователю

chmod u+rx scriptname # выдача прав на чтение/исполнение только "владельцу" скрипта

Из соображений безопасности путь к текущему каталогу . не включён в переменную окружения $PATH. Поэтому для запуска скрипта необходимо явно указывать путь к текущему каталогу, в котором находится скрипт:

./scriptname

Кроме того, передать такой файл на исполнение интерпретатору Bash можно и явно, используя команду bash:

bash scriptname

В этом случае не требуется ни установка прав доступа, ни использование последовательности #! в коде.

В bash реализованы только одномерные массивы. Индексами могут быть как целочисленные значения («обычный» массив), так и строки (ассоциативный массив, или «хеш»).

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

Как естественное следствие поддержки «ассоциативных» ключей, в bash существует крайне ограниченная возможность эмуляции многомерных массивов.

PowerShell — расширяемое средство автоматизации от Microsoft с открытым исходным кодом, состоящее из оболочки с интерфейсом командной строки и сопутствующего языка сценариев. Впервые публично язык был продемонстрирован на Профессиональной конференции разработчиков (англ. Professional Developers Conference, PDC) в сентябре 2003 года под кодовым названием Monad. Изначально средство выпущено как компонент Windows под названием Windows PowerShell. Открытый исходный код был выпущен с началом разработки PowerShell Core в августе 2016 года.

Windows PowerShell 2.0 был выпущен в составе Windows 7, Windows 8 и Windows Server 2008 R2, а также Windows Server 2012 R2, как неотъемлемый компонент системы. Кроме того, вторая версия доступна и для других систем, таких, как Windows XP SP3, Windows Server 2003 SP2, Windows Vista SP1, Windows Vista SP2, Windows Server 2008[3] и Windows Server 2012.

Изначально PowerShell построен на базе Microsoft .NET Framework, а позднее на .NET Core и интегрирован с ними. Дополнительно PowerShell предоставляет удобный доступ к COM, WMI и ADSI, равно как и позволяет выполнять обычные команды командной строки, чтобы создать единое окружение, в котором администраторы смогли бы выполнять различные задачи на локальных и удалённых системах.

Эти административные задачи обычно выполняются с помощью командлетов (в оригинале cmdlets), которые являются специализированными классами .NET. Пользователь может комбинировать их в скриптах (сценариях), используя различные конструкции, утилиты командной строки и обращения к обычным классам .NET, объектам WMI или COM. Кроме того, можно использовать различные хранилища данных, такие, как файловая система или реестр Windows, которые предоставляются PowerShell посредством поставщиков (англ. providers).

PowerShell также предоставляет механизм встраивания, благодаря которому исполняемые компоненты PowerShell могут быть встроены в другие приложения. Эти приложения затем могут использовать функциональность PowerShell для реализации различных операций, включая предоставляемые через графический интерфейс. Этот подход применён в Microsoft Exchange Server 2007 для реализации управляющей функциональности в виде командлетов PowerShell и графических утилит управления в виде оболочек PowerShell, которые вызывают необходимые командлеты. Таким образом, графический интерфейс управления находится поверх промежуточного слоя — PowerShell. Другие приложения Microsoft, включая Microsoft SQL Server 2008, System Center Operations Manager и System Center Data Protection Manager также предоставляют доступ к своим интерфейсам управления через командлеты PowerShell.

Другое понятие, используемое в PowerShell, — это конвейер (англ. pipeline). Подобно конвейерам в UNIX, они предназначены для объединения нескольких команд путём передачи выходных данных одной команды во входные данные второй команды, используя оператор |. Но, в отличие от аналога в UNIX, конвейер PowerShell является полностью объектным, то есть данные между командлетами передаются в виде полноценных объектов соответствующих типов, а не как поток байтов. Когда данные передаются как объекты, содержащиеся в них элементы сохраняют свою структуру и типы между командлетами, без необходимости использования какой-либо сериализации или посимвольного разбора данных. Объект также может содержать некоторые функции, предназначенные для работы с данными. Они также становятся доступными для получающего их командлета. Вывод последнего командлета в конвейере PowerShell автоматически передаёт на командлет Write-Host, который создаёт текстовое представление объектов и содержащихся в них данных и выводит его на экран.

Microsoft выпустила PowerShell 2.0 в составе Windows 7 и Windows Server 2008 R2. Windows PowerShell 2.0 предустановлен в этих системах. Исключением является режим установки Windows Server 2008 R2 в режиме Core, где PowerShell 2.0 можно доустановить вручную. Для более старых платформ он доступен в составе Windows Management Framework. PowerShell 2.0 вносит некоторые изменения в язык сценариев и API для встраивания, в дополнение к новым 240 командлетам.

Заключение.

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

Таким образом можно заметить, что данные среды разработки программного обеспечения (или подобные) можно осуществлять весь цикл разработки программного обеспечения. Но есть также интегрированные среды, которые предназначены для одного программного языка. К примеру такая среда как Visual Basic.

Для больших (или командных) проектов в среду разработки должны быть включены файловый менеджер, интегрированная среда разработки программного обеспечения, PlSql (используется и для работы с Системой Управления БД и как инструмент отчётов), Cristal Reports (создание отчётов), StarTeam (ведение журнала версий разрабатываемого продукта).

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

Интегрированные среды разработки удобны для командных проектов, постольку поскольку в таких средах можно производить весь цикл создания программного обеспечения.

Интегрированные среды удобны в написании программ.

Список литературы.

  1. Интернет Энциклопедия «Википедия https://ru.wikipedia.org/wiki/Интегрированная_среда_разработки
  2. Интернет энциклопедия «Википедия» https://ru.wikipedia.org/wiki/Visual_Studio
  3. Интернет Энциклопедия «Википедия» https://ru.wikipedia.org/wiki/Eclipse

Веб-сайт «NetBeans» https://netbeans.org/

  1. Интернет энциклопедия «Википедия» https://ru.wikipedia.org/wiki/Kylix
  2. Интернет энциклопедия «Википедия» https://ru.wikipedia.org/wiki/Объектно-ориентированное_программирование
  3. Социальное СМИ об IT «Хабрхабр» http://habrahabr.ru/post/107261/
  4. Зашеловский А. Е. ВПИ (ф) ВолГТУ
  5. Интернет энциклопедия «Википедия»

https://ru.wikipedia.org/wiki/Xcode Apple XCode IDE от Apple

http://wnfx.ru/apple-xcode-ide-ot-apple/

  1. Интернет энциклопедия «Википедия»

https://ru.wikipedia.org/wiki/PyCharm

  1. Интернет энциклопедия «Википедия»

https://ru.wikipedia.org/wiki/Spyder_(IDE)

  1. Павловская Т.А. C#. Программирование на языке высокого уровня. Учебник для вузов. - СПб.: Питер, 2007.
  2. Фаулер М., Скотт К. UML. Основы / Пер. с англ. - СПб: Символ-Плюс, 2002.
  3. Станек У. Р. Microsoft SQL Server 2005. Справочник администратора /  Пер. с англ. - М.: Издательство «Русская Редакция», 2008

    .