Файл: Интегрированные среды разработки программ (Цели теоретической).pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 01.04.2023

Просмотров: 123

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

1. Введение

1. 1. Цели

1. 1. 1. Цели теоретической части

1. 1. 2. Цели практической части

2. Теоретическая часть

2. 1. Обзор

2. 2. История

3. Практическая часть, обзор возможностей

В этой части представлен обзор различных компонентов и возможностей ИСР.

3. 1. Подсветка синтаксиса

3. 2. Автозаполнение написанного кода

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

3. 4. Отладчик

3. 5. Визуальное программирование

3. 6. Поддержка нескольких языков программирования

3. 8. Обозреватель классов

3. 9. Профилирование

4. Практическая часть, обзор возможностей семейства ИСР IntelliJ IDEA

4. 1. Глубокий анализ и понимание кода

4. 1. 1. Интеллектуальное авто-дополнение

4. 1. 2. Авто-дополнение цепочек вызовов

4. 1. 3. Завершение статических методов

4. 1. 4. Анализ потока данных

4. 1. 5. Языковая инъекция

4. 1. 6. Рефакторинг для нескольких языков

4. 1. 7. Обнаружение дубликатов

4. 1. 8. Инспекции и быстрые исправления

4. 2. Эргономика разработчика

4. 2. 1. Быстрый доступ к возможностям ИСР

4. 2. 2. Горячие клавиши для всех действий

4. 2. 3. Эргономичный пользовательский интерфейс

4. 2. 4. Встроенный отладчик

4. 3. Встроенные инструменты разработчика

4. 3. 1. Системы контроля версий

4. 3. 2. Инструменты для сборки проектов

4. 3. 3. Автоматическое тестирование и анализ покрытия тестами

4. 3. 4. Декомпилятор

4. 3. 5. Инструменты для работы с базами данных

4. 3. 6. Серверы приложений

4. 3. 7. Контейнеризация

5. Заключение

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

3. 4. Отладчик

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

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

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

3. 5. Визуальное программирование

Визуальное программирование — это сценарий использования, в котором обычно требуется среда ИСР. Visual Basic, например, позволяет пользователям создавать новые приложения путем перемещения программ, строительных блоков или узлов кода для создания блок-схем или структурных диаграмм, которые затем компилируются или интерпретируются. Эти блок-схемы часто основаны на унифицированном языке моделирования.

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


3. 6. Поддержка нескольких языков программирования

Некоторые ИСР поддерживают несколько языков, таких как GNU Emacs на основе C и Emacs Lisp, и IntelliJ IDEA, Eclipse, MyEclipse или NetBeans, все на основе Java или MonoDevelop на основе C#.

Поддержка альтернативных языков часто обеспечивается плагинами, что позволяет устанавливать их в одной и той же среде ИСР одновременно. Например, Flycheck — это современное расширение для проверки синтаксиса на лету для GNU Emacs 24 с поддержкой 39 языков. Eclipse и Netbeans имеют плагины для C / C ++, Ada, Perl, Python, Ruby и PHP, которые выбираются между автоматически в зависимости от расширения файла, среды или настроек проекта.

3. 8. Обозреватель классов

Обозреватель классов — это функция интегрированной среды разработки, которая позволяет программисту просматривать, перемещаться или визуализировать структуру объектно-ориентированного программного кода.

С появлением C ++ в конце 1980-х современные ИСР добавили обозреватели классов, сначала для простой навигации по иерархии классов, а затем для помощи в создании новых классов. С появлением Java в середине 1990-х классовые браузеры стали ожидаемой частью любой графической среды разработки.

3. 9. Профилирование

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

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

Это часто используется, чтобы определить, как долго выполняются определенные части программы, как часто они выполняются, или генерировать граф вызовов. Обычно эта информация используется, чтобы идентифицировать те участки программы, которые работают больше всего. Эти трудоёмкие участки могут быть оптимизированы, чтобы выполняться быстрее.


4. Практическая часть, обзор возможностей семейства ИСР IntelliJ IDEA

4. 1. Глубокий анализ и понимание кода

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

4. 1. 1. Интеллектуальное авто-дополнение

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

4. 1. 2. Авто-дополнение цепочек вызовов

Работает еще чуть глубже, чем интеллектуальное авто-дополнение и перечисляет соответствующие символы, доступные через методы или методы получения в текущем контексте. Допустим, разработчик ищет значение Project и имеет только объявление модуля, он может нажать сочетание клавиш Ctrl+Shift+Space дважды, и получит авто-дополнение для метода module.getProject() без каких-либо дополнительных усилий.

4. 1. 3. Завершение статических методов

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

4. 1. 4. Анализ потока данных


Предлагая варианты завершения, IntelliJ IDEA анализирует поток данных, чтобы угадать возможный тип символа времени выполнения, и уточняет варианты выбора на основе этой информации, автоматически добавляя приведение классов.

4. 1. 5. Языковая инъекция

Предоставляет помощь в кодировании для выбранного языка в выражениях и строковых литералах на другом языке, что дает разработчику все преимущества, которые он обычно имеет только при работе с отдельными файлами. Например, он может вставить фрагменты кода SQL, XPath, HTML, CSS или JavaScript в литералы Java строк.

4. 1. 6. Рефакторинг для нескольких языков

Зная все об использовании символа, IntelliJ IDEA предлагает чрезвычайно эффективный, тщательный рефакторинг. Например, когда разработчик переименовывает класс в выражении JPA, ИСР будет обновлять все, от класса сущности JPA, до каждого выражения JPA, в котором он используется.

4. 1. 7. Обнаружение дубликатов

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

4. 1. 8. Инспекции и быстрые исправления

Всякий раз, когда IntelliJ IDEA обнаруживает, что разработчик собирается совершить ошибку, в редакторе появляется небольшая лампочка. Щелкнув по нему или нажав Alt+Enter, откроется список действий, которые разработчик может предпринять, чтобы все исправить.

4. 2. Эргономика разработчика

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


4. 2. 1. Быстрый доступ к возможностям ИСР

Большую часть времени редактор (и код) — это единственное, что видно на экране разработчика. IntelliJ IDEA позволяет не покидать его, чтобы делать что-то, что не связано с написанием программного кода.

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

Если нажать сочетание клавиш Ctrl+Shift+I, интегрированная среда разработки показывает определение символа в каретке.

IntelliJ IDEA позволяет сгенерировать шаблонный код без заполнения огромных форм или прохождения мастера настройки.

4. 2. 2. Горячие клавиши для всех действий

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

Доступ к окну инструмента через его ярлык перемещает фокус ввода на него, так что разработчик может использовать все команды клавиатуры в контексте окна. Чтобы вернуться обратно в контекст редактирования программного кода необходимо нажать клавишу Esc.

Когда разработчик находится в окне инструмента Project, он может не только перемещаться по существующим элементам, но и создавать новые, просто нажимая сочетание клавиш Alt+Insert.

4. 2. 3. Эргономичный пользовательский интерфейс

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

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

4. 2. 4. Встроенный отладчик