На чем написана idea

Вся мощь IntelliJ IDEA на примере одного языка (в картинках)

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

Однако, одна из проблем такого подхода заключается в том, что это значительно удорожает и замедляет сам процесс разработки. Что если всего этого нет? Тогда на помощь приходит IDE, благодаря которой можно изучить текущую логику по “голому” коду.

Когда мы разрабатывали платформу lsFusion со встроенным языком, то у нас было несколько вариантов. Либо изобретать велосипед, и писать с нуля свою собственную IDE, как сделал в свое время 1С, или реализовать плагин к уже существующей. Мы пошли по второму пути, и в этой статье я покажу, что получилось.

Так как сама платформа разработана на Java, то у нас были две основные опции: Eclipse или IDEA. Мы остановились на последнем варианте и не прогадали. Когда мы принимали решение, IDEA еще была недостаточно популярна, но с тех пор, они вырвались в лидеры на рынке, а Eclipse тихонько отстает.

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

Роль IDE в разработке тяжело переоценить. Несмотря на то, что многие разработчики до сих пор используют vim и считают, что так и надо. Эта позиция имеет право на жизнь, если один человек разрабатывает и в дальнейшем поддерживает этот код. Однако, в более крупных проектах, где участвует большое количество людей очень важна их взаимозаменяемость. Сотрудники болеют, уходят в отпуск, увольняются в конце концов. Кроме того, нагрузка по разным проектам неравномерна, и иногда требуется на один из них подключить большее количество людей, чтобы уложиться в короткие сроки. В такие моменты к доработкам приходится подключать новых людей, которым нужно быстро разобраться в том, как в текущий момент работает программа, и внести необходимые изменения. И тут на первый план выходит IDE.

В первую очередь от IDE нам требовалось следующее:

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

Поддержка синтаксиса

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

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Навигация

Возьмем логику из примера Управление материальными потоками. Предположим, нам нужно посмотреть, где объявляется свойство Цена. Для этого нужно под пользователем с правами администратора навести указатель мыши на заголовок нужной нам колонки:

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

В появившемся окне сразу видно, в каком модуле это свойство создано (Shipment), какой номер строки в нем (37), таблица в которой хранится (_auto_Shipment_ShipmentDetail), и ряд другой информации.

Чтобы перейти непосредственно к объявлению свойства, нужно начать поиск файла и в появившемся диалоге ввести Shipment:

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Затем при помощи Navigate — Line/Column переходим к 37й строке, где видим объявление свойства:

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Нажав CTRL+ALT+F7, стоя курсором на нужном свойстве, можно быстро найти все его использования по всем проектам:

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

В данном случае, первое использование цены идет в расчете суммы по строке. Два последних — это добавление на соответствующие формы.

При необходимости можно включить поиск только по записи в данное свойство, если убрать соответствующую опцию:

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Тогда в списке останется только запись в это свойство. Чтобы узнать, какое конкретно значение в него записывается нужно встать курсором на salePrice и нажать Go To Declaration or Usages. Дальше вернутся через Navigation — Back и перейти к объявлению свойства item:

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

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

Рефакторинг

Часто бывает ситуации, когда требуется изменить название свойства, класса, формы или любого другого элемента в системе. Для осуществления такого действия нужно стать на этот элемент и нажать Refactor — Rename:

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Переименование элемента автоматически изменяет исходный код во всех местах его использования. Кроме того, если создан файл migration.script, туда будут добавлены соответствующие записи. Серверу необходимо знать изменения имен, чтобы, например, автоматически мигрировать данные из одной колонки в другую. Иначе, невозможно отличить переименование от создания нового свойства с другим именем.

Анализ

Перед тем как выполнить рефакторинг, часто бывает необходимо выяснить «что происходит» и «кто все эти люди».

Для этого IDEA, практически из коробки, позволяет просмотреть структуру выбранного класса (доступные для этого класса свойства и действия):

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

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

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

Визуализация форм

В lsFusion структура и дизайн форм задается в том же коде, что и доменная логика, при помощи специальных конструкций. При этом разные части формы могут быть объявлены в разных модулях, а при запуске сервера будут “сливаться” воедино в зависимости от подключенных модулей.

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

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

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

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

Метапрограммирование

Иногда возникает потребность создавать однотипный код для различных задач. В lsFusion есть механизм метакодов, который позволяет генерировать код на основе некоторого шаблона. При этом, в случае изменения метакода, будет происходить автоматическая обновление кода. По сути, это автоматический copy/paste с возможностью замены определенных идентификаторов на заданные значения.

Для включения этого механизма нужно сначала активировать его в меню. После этого IDE будет сама автоматически изменять соответствующий код.

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

При запуске сервера будет использоваться только сгенерированный код. Сами шаблоны META при запуске сервера учитываться не будут.

Кстати, реализация возможности метапрограммирования заставила нас внести еще один вклад в open-source (в данном случае в лице Intellij IDEA). Дело в том, что в ERP метакоды используются достаточно активно, и, соответственно, часто возникает необходимость сгенерировать код / удалить сгенерированный код. Это приводит к большому количеству асинхронных изменений файлов, что, в свою очередь, приводило к весьма своеобразному багу. Проблема в том, что в самом JetBrains его не могли воспроизвести, поэтому все свелось к тому, что нам самим пришлось написать неработающий юнит-тест. Это конечно заняло несколько дней, зато косвенно помогло нам при реализации следующих двух возможностей.

Отладчик

Когда по коду совершенно непонятно что происходит, то приходится обращаться к отладчику. На любой строке императивной логики (действия, события, ограничения) можно поставить breakpoint. Как только выполнение сервера достигнет этой точки, оно будет остановлено и управление перейдет в отладчик. В этот момент можно смотреть watches, а также продолжать выполнение построчно. Слева будет показан stack trace, по которому можно перемещаться как при отладке обычного Java приложения.

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

При просмотре текущих значений можно обращаться как текущим объектам (например, Shipment s), так и к любым другим объектам из базы (например, Item i). Однако, разработчик сам несет ответственность за добавление в watches данных, считывание которых займет много времени или памяти, и приведет к падению производительности.

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

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

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

Для реализации отладчика мы на самом деле использовали существующий в IDEA Java Debugger. То есть отлаживается платформа как обычное Java приложение, но для lsFusion действий мы создаем proxy java методы и подменяем их отображение на свой код (я так понимаю в IDEA это сделано для поддержки Scala и других оберток над Java). И вот тут был забавный момент. В какой-то момент разработчики IDEA сделали конструктор своего Java Debugger закрытым (private). И если ситуацию с вызовом private методов еще можно обойти через Reflection, то как унаследоваться от класса с private конструктором — непонятно. Но как раз в то время шли разборки с багом из верхнего раздела, и мы «по бартеру» решили попросить людей из JetBrains сделать этот конструктор обратно protected, на что они отреагировали очень оперативно (за что им конечно большое спасибо).

Language Injection

Одна из самых необычных возможностей IDEA — возможность обеспечивать поддержку своего языка в строковых константах других языков. Для этого достаточно сказать IDEA, какие именно строковые константы относятся к твоему языку, дальше IDEA сама автоматически:

Здесь в IDEA тоже был (и сохраняется) небольшой баг. Когда виртуальный файл большой, то если при переходе к использованию IDEA должна перейти на начало «окна внедрения», она на самом деле переходит на конец предыдущего «окна внедрения» (то есть например на предыдущее использование свойства в Java-файле). Существует конечно, простой обход этого бага — создавать по отдельному виртуальному файлу на каждый строковый литерал. Но такой подход тормозит когда использований больше 30, поэтому в этом случае все равно приходится использовать один большой виртуальный файл (с другой стороны, когда использований много, найти правильное, то есть следующее, использование не так уж и сложно). Мы просили исправить этот баг опять-таки в рамках «обмена услугами», и разработчики JetBrains его вроде как пофиксили, но, как позже выяснилось, как-то не так (это еще по коммиту было видно, но мы подумали, что просто не до конца его поняли). Впрочем, у нас к этому багу все уже давно привыкли, благо ситуация с использованием больше 30 элементов в одном файле встречается достаточно редко.

Заключение

В статье описаны только основные варианты использования. В ней также присутствуют возможности по поиску реализаций абстрактных свойств и классов, визуализации зависимостей между модулями и свойствами, автоматической генерации форм на основе xml/json и многое другое. И, конечно же, есть встроенная интеграция с основными системами контроля версий Git и Subversion, а также поддержка Maven и Ant.

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

Источник

☕ ☁️ 👍 Начало работы с IntelliJ IDEA и распределенным SQL

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Перевод публикуется с сокращениями, автор оригинальной статьи Jimmy Guerrero.

IntelliJ IDEA – это интегрированная написанная на Java среда разработки (IDE). Создана она компанией JetBrains и доступна как лицензионное издание сообщества Apache 2, а также в проприетарном коммерческом формате. Поскольку YugabyteDB совместим с PostgreSQL, большинство сторонних инструментов и приложений будут работать “из коробки”.

В этом материале вы узнаете как:

Что такое распределенный SQL?

Распределенные базы данных SQL пользуются популярностью среди организаций, заинтересованных в переносе инфраструктуры данных в облако. Это часто затевается ради уменьшения TCO (Total Cost of Ownership) или избавления от ограничений горизонтального масштабирования СУБД: Oracle, PostgreSQL, MySQL и Microsoft SQL Server. Основные характеристики распределенного SQL:

Что такое YugabyteDB?

YugabyteDB – это высокопроизводительная распределенная СУБД с открытым исходным кодом, построенная на масштабируемом и отказоустойчивом дизайне, вдохновленном Google Spanner. YugabyteDB совместима с PostgreSQL, а также умеет интегрироваться с проектами GraphQL и поддерживает хранимые процедуры, триггеры, а также UDFs.

Шаг 1: Установка YugabyteDB на кластер GKE с помощью Helm 3

Полный мануал можно найти по этой ссылке. Предположим, что у вас уже есть запущенный и работающий кластер GKE.

Первое, что нужно сделать – добавить репозиторий:

Создадим пространство имен yb-demo:

В ответ получим следующее:

Теперь установим YugabyteDB и укажем значения для некоторых ограничений:

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Обратите внимание на внешний IP-адрес и порт для сервиса yb-tserver, который мы собираемся использовать для установления соединения между YugabyteDB и IntelliJ: 35.224.XX.XX:5433.

Шаг 2: Создайте Northwind БД

Следующим шагом является загрузка образца схемы и данных. Вы можете найти множество примеров совместимых с YugabyteDB баз данных в документации для разработчиков. Для этого туториала будем использовать образец БД Northwind, содержащий данные о продажах компании “Northwind Traders”. Это отличная учебная схема для ERP-системы малого бизнеса с клиентами, заказами, закупками, поставщиками, доставкой и прочим.

Подключитесь к yb-tserver-pod:

Чтобы загрузить файлы схемы и данные, выполните следующие команды:

Выйдите из оболочки pod и подключитесь к службе YSQL:

Создайте базу данных и подключитесь к ней:

Теперь можно создать объекты БД и заполнить их данными, используя файлы, которые мы загрузили в yb-tserver-pod:

Убедитесь, что таблицы созданы:

Проверьте, что данные присутствуют, выполнив простой SELECT :

По умолчанию настроенная YugabyteDB поставляется без пароля для пользователя yugabyte. Изменение выполняется так же, как и в PostgreSQL:

Шаг 3: Настройка IntelliJ для работы с YugabyteDB

Откройте окно БД (View > Tool Windows > Database):

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Добавьте источник данных PostgreSQL. (New (+) > Data Source > PostgreSQL):

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

На вкладке General заполните данные для подключения к БД:

Прежде чем нажать кнопку “ОК”, убедитесь, что присутствует соединение.

Шаг 4: Выполнение запроса

Теперь давайте протестируем интеграцию, выполнив следующий запрос в IntelliJ:

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

В окне вывода должны увидеть следующий результат:

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Шаг 5: Генерируем объяснение

IntelliJ умеет создавать визуализацию ваших запросов. Например, можно получить визуализацию последнего запроса, выбрав Explain Plan > Show Visualization.

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Примечание: не все функции управления базами данных IntelliJ поддерживаются с помощью YugabyteDB.

Заключение

Источник

Intellij Idea — Краткое руководство

IntelliJ — одна из самых мощных и популярных интегрированных сред разработки (IDE) для Java. Он разработан и поддерживается JetBrains и доступен как окончательная версия для сообщества. Эта многофункциональная IDE обеспечивает быструю разработку и помогает улучшить качество кода.

Что такое IDE и его преимущества?

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

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

Поддерживает функции навигации по коду, автозавершения кода, рефакторинга и генерации кода, что ускоряет процесс разработки.

Поддерживает модульное тестирование, интеграционное тестирование и покрытие кода с помощью плагинов.

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

Поддерживает функции навигации по коду, автозавершения кода, рефакторинга и генерации кода, что ускоряет процесс разработки.

Поддерживает модульное тестирование, интеграционное тестирование и покрытие кода с помощью плагинов.

Особенности IntelliJ

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

Глубокое понимание

IntelliJ IDEA действительно понимает и глубоко понимает ваш код, а также контекст кодера, что делает его таким уникальным среди других Java IDE.

Интеллектуальное завершение кода — поддерживает контекстное завершение кода. Он дает список наиболее значимых символов, применимых в текущем контексте.

Цепное завершение кода — это расширенная функция завершения кода, которая перечисляет соответствующие символы, доступные через методы или методы получения в текущем контексте.

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

Обнаружение дубликатов — Он обнаруживает фрагменты дублированного кода на лету и дает уведомление / предложение об этом пользователю.

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

Интеллектуальное завершение кода — поддерживает контекстное завершение кода. Он дает список наиболее значимых символов, применимых в текущем контексте.

Цепное завершение кода — это расширенная функция завершения кода, которая перечисляет соответствующие символы, доступные через методы или методы получения в текущем контексте.

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

Обнаружение дубликатов — Он обнаруживает фрагменты дублированного кода на лету и дает уведомление / предложение об этом пользователю.

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

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

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

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

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

Встроенный отладчик — Встроенный отладчик позволяет отлаживать приложение в самой IDE. Это делает процесс разработки и отладки беспроблемным.

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

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

Встроенный отладчик — Встроенный отладчик позволяет отлаживать приложение в самой IDE. Это делает процесс разработки и отладки беспроблемным.

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

Чтобы помочь разработчикам организовать рабочий процесс, IntelliJ IDEA предлагает им удивительный набор инструментов, который включает в себя декомпилятор, поддержку Docker, средство просмотра байт-кода, FTP и многие другие инструменты —

Контроль версий — IntelliJ поддерживает большинство популярных систем контроля версий, таких как Git, Subversion, Mercurial, CVS, Perforce и TFS.

Инструменты сборки — IntelliJ поддерживает Java и другие инструменты сборки, такие как Maven, Gradle, Ant, Gant, SBT, NPM, Webpack, Grunt и Gulp.

Тестовый прогон и покрытие кода — IntelliJ IDEA позволяет с легкостью выполнять модульное тестирование. Среда IDE включает в себя тестовые прогоны и инструменты покрытия для основных сред тестирования, включая JUnit, TestNG, Spock, Cucumber, ScalaTest, spec2 и Karma.

Декомпилятор — IntelliJ поставляется со встроенным декомпилятором для классов Java. Если вы хотите заглянуть внутрь библиотеки, для которой у вас нет исходного кода, вы можете сделать это без использования сторонних плагинов.

Терминал — IntelliJ предоставляет встроенный терминал. В зависимости от вашей платформы вы можете работать с командной строкой, например PowerShell или Bash.

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

Сервер приложений — IntelliJ поддерживает основные серверы приложений: Tomcat, JBoss, WebSphere, WebLogic, Glassfish и многие другие. Вы можете развернуть свои артефакты на серверах приложений и отладить развернутые приложения в самой IDE.

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

Контроль версий — IntelliJ поддерживает большинство популярных систем контроля версий, таких как Git, Subversion, Mercurial, CVS, Perforce и TFS.

Инструменты сборки — IntelliJ поддерживает Java и другие инструменты сборки, такие как Maven, Gradle, Ant, Gant, SBT, NPM, Webpack, Grunt и Gulp.

Тестовый прогон и покрытие кода — IntelliJ IDEA позволяет с легкостью выполнять модульное тестирование. Среда IDE включает в себя тестовые прогоны и инструменты покрытия для основных сред тестирования, включая JUnit, TestNG, Spock, Cucumber, ScalaTest, spec2 и Karma.

Декомпилятор — IntelliJ поставляется со встроенным декомпилятором для классов Java. Если вы хотите заглянуть внутрь библиотеки, для которой у вас нет исходного кода, вы можете сделать это без использования сторонних плагинов.

Терминал — IntelliJ предоставляет встроенный терминал. В зависимости от вашей платформы вы можете работать с командной строкой, например PowerShell или Bash.

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

Сервер приложений — IntelliJ поддерживает основные серверы приложений: Tomcat, JBoss, WebSphere, WebLogic, Glassfish и многие другие. Вы можете развернуть свои артефакты на серверах приложений и отладить развернутые приложения в самой IDE.

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

Сравнение между Ultimate и Community Edition

Ultimate Edition предназначен для помощи в разработке веб-сайтов и предприятий, тогда как Community Edition предназначен для разработки JVM и Android. Давайте рассмотрим несколько важных моментов, которые помогут нам понять сравнение между двумя изданиями:

ОсобенностьCommunity EditionUltimate Edition
ЛицензиякоммерческийС открытым исходным кодом, Apache 2.0. для коммерческого развития.
Ява, Котлин, Groovy, Скалаподдержанныйподдержанный
Разработка Androidподдержанныйподдержанный
Maven, Gradle, SBTподдержанныйподдержанный
Git, SVN, Mercurial, CVSподдержанныйподдержанный
Обнаружение дубликатовподдержанныйНе поддерживается
Perforce, TFSподдержанныйНе поддерживается
JavaScript, TypeScriptподдержанныйНе поддерживается
Java EE, Spring, GWT, Vaadin, Play, Grails, Другие фреймворкиподдержанныйНе поддерживается
Инструменты базы данных, SQLподдержанныйНе поддерживается

Intellij Idea — Установка и настройка

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

Установка на Windows

IntelliJ совместим практически со всеми версиями Windows до 2003 года. Полный список будет: Windows 10/8/7 / Vista / 2003 / XP. Перед установкой IntelliJ в Windows рекомендуется закрыть все остальные приложения.

Системные Требования

Для бесперебойной работы рекомендуется минимум 2 ГБ ОЗУ.

Для лучшей визуализации рекомендуется разрешение экрана 1024×768.

Минимум 300 МБ дискового пространства для установки и дополнительные 1 ГБ для кэша.

Для бесперебойной работы рекомендуется минимум 2 ГБ ОЗУ.

Для лучшей визуализации рекомендуется разрешение экрана 1024×768.

Минимум 300 МБ дискового пространства для установки и дополнительные 1 ГБ для кэша.

Загрузка и установка

Загрузка — Вы можете скачать установщик Windows с их официального сайта.

Установка. Давайте начнем с установки, а затем с настройками. Установка IntelliJ аналогична другим программным пакетам. Просто дважды щелкните по установщику и следуйте инструкциям на экране для завершения процесса установки.

Загрузка — Вы можете скачать установщик Windows с их официального сайта.

Установка. Давайте начнем с установки, а затем с настройками. Установка IntelliJ аналогична другим программным пакетам. Просто дважды щелкните по установщику и следуйте инструкциям на экране для завершения процесса установки.

Установка в Linux

Для установки IntelliJ на платформах Linux вы должны заметить, что 32-битный JDK не входит в комплект, поэтому рекомендуется 64-битная система.

Системные Требования

Среда рабочего стола GNOME, KDE или XFCE

Для беспроблемного использования рекомендуется минимум 2 ГБ ОЗУ

300 МБ дискового пространства для установки и добавления 1 ГБ для кэшей

Для лучшей визуализации рекомендуется разрешение экрана 1024×768

Среда рабочего стола GNOME, KDE или XFCE

Для беспроблемного использования рекомендуется минимум 2 ГБ ОЗУ

300 МБ дискового пространства для установки и добавления 1 ГБ для кэшей

Для лучшей визуализации рекомендуется разрешение экрана 1024×768

Загрузка и установка

Загрузка — Вы можете скачать IntelliJ для Linux с их официального сайта.

Установка — Мы скачали пакет tar.gz. Обратите внимание, что в нашем случае имя пакета было ideaIC-2017.2.5.tar.gz. Это может измениться с выпуском / версией. Пожалуйста, используйте соответствующее название пакета.

Загрузка — Вы можете скачать IntelliJ для Linux с их официального сайта.

Установка — Мы скачали пакет tar.gz. Обратите внимание, что в нашем случае имя пакета было ideaIC-2017.2.5.tar.gz. Это может измениться с выпуском / версией. Пожалуйста, используйте соответствующее название пакета.

Настроить IntelliJ

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

Шаг 1 — Если вы используете окончательную версию, появится окно активации лицензии. Выберите параметр «Оценить бесплатно» и нажмите кнопку «Оценить», как показано на следующем рисунке.

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

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

На экране приветствия нажмите «настроить»

Выберите «Проект по умолчанию» из выпадающего списка

Выберите опцию «структура проекта»

На экране приветствия нажмите «настроить»

Выберите «Проект по умолчанию» из выпадающего списка

Выберите опцию «структура проекта»

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Выберите опцию «SDK» в меню «Настройки платформы».

Нажмите на значок «плюс» и выберите опцию «JDK».

Выберите домашний каталог JDK и следуйте инструкциям на экране.

Выберите опцию «SDK» в меню «Настройки платформы».

Нажмите на значок «плюс» и выберите опцию «JDK».

Выберите домашний каталог JDK и следуйте инструкциям на экране.

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Intellij Idea — Знакомство

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

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

Визуальные Элементы

Одна из важных вещей в IDE — это ее визуальные элементы. Выявление и понимание визуальных элементов позволяет вам выполнять действия быстрее и проще. Следующий скриншот и метки на нем показывают основной интерфейс IntelliJ.

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

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

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

Панель навигации — Панель навигации облегчает навигацию внутри проекта. Эта функция становится полезной при увеличении базы кода.

Вкладка «Инструменты»вкладка «Инструменты» отображается с обеих сторон главного окна. Отсюда вы можете получить доступ к важным инструментам, таким как базы данных; Maven / Ant строит и так далее.

Перспектива проекта — Окно перспективы проекта показывает различные элементы проектов, такие как пакеты, модули, классы, внешние библиотеки и так далее.

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

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

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

Панель навигации — Панель навигации облегчает навигацию внутри проекта. Эта функция становится полезной при увеличении базы кода.

Вкладка «Инструменты»вкладка «Инструменты» отображается с обеих сторон главного окна. Отсюда вы можете получить доступ к важным инструментам, таким как базы данных; Maven / Ant строит и так далее.

Перспектива проекта — Окно перспективы проекта показывает различные элементы проектов, такие как пакеты, модули, классы, внешние библиотеки и так далее.

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

Работа с плагинами

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

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Шаги по управлению плагинами

Выполните следующие шаги для управления плагинами —

Перейдите в меню Файл → Настройки.

Выберите вкладку Плагины на левой панели.

В этом окне перечислены все установленные плагины. С правой стороны имени каждого плагина есть флажок. Переключение этого флажка включает / отключает плагины.

Онлайн-плагин для IntelliJ доступен здесь. Чтобы добавить / удалить плагин репозитория, нажмите на кнопку обзора репозитория, и он предоставит способ сделать все необходимое.

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

Перейдите в меню Файл → Настройки.

Выберите вкладку Плагины на левой панели.

В этом окне перечислены все установленные плагины. С правой стороны имени каждого плагина есть флажок. Переключение этого флажка включает / отключает плагины.

Онлайн-плагин для IntelliJ доступен здесь. Чтобы добавить / удалить плагин репозитория, нажмите на кнопку обзора репозитория, и он предоставит способ сделать все необходимое.

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

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

Работа с настройками

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

Настройки экспорта

Это позволяет экспортировать текущие настройки в виде файла JAR.

Перейдите в Файл → Настройки экспорта.

В окне настроек экспорта перечислены доступные настройки, связанные с пользовательским интерфейсом, отладчиком, SDK и другими.

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

Перейдите в Файл → Настройки экспорта.

В окне настроек экспорта перечислены доступные настройки, связанные с пользовательским интерфейсом, отладчиком, SDK и другими.

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

Настройки импорта

Это позволяет импортировать настройки, хранящиеся в файле JAR.

Настройки обмена

Чтобы обеспечить его статус —

Мы можем сохранить текущие настройки в GitHub / Bitbucket и применить их к другим экземплярам. Для сохранения текущей настройки —

Перейдите в Файл → Настройки хранилища.

Введите URL-адрес хранилища Git в вышестоящем диалоговом окне URL.

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

Чтобы применить те же настройки к другим экземплярам, ​​нажмите кнопку «Перезаписать локальный».

Перейдите в Файл → Настройки хранилища.

Введите URL-адрес хранилища Git в вышестоящем диалоговом окне URL.

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

Чтобы применить те же настройки к другим экземплярам, ​​нажмите кнопку «Перезаписать локальный».

Настройка параметров JVM и свойств платформы

–Server — позволяет выбрать виртуальную машину Java HotSpot Server

-Xms — устанавливает начальный размер кучи Java. Значение по умолчанию составляет 128 МБ.

-Xmx — устанавливает максимальный размер кучи Java. Значение по умолчанию составляет 750 МБ.

-Xss — устанавливает размер стека потока Java.

–XX — позволяет установить алгоритм GC и другие свойства.

–Server — позволяет выбрать виртуальную машину Java HotSpot Server

-Xms — устанавливает начальный размер кучи Java. Значение по умолчанию составляет 128 МБ.

-Xmx — устанавливает максимальный размер кучи Java. Значение по умолчанию составляет 750 МБ.

-Xss — устанавливает размер стека потока Java.

–XX — позволяет установить алгоритм GC и другие свойства.

Intellij Idea — создание первого Java-проекта

Создать проект

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

Выберите проект Java и соответствующий SDK и нажмите кнопку «Далее».

Выберите проект Java и соответствующий SDK и нажмите кнопку «Далее».

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Если вы хотите создать класс Java с помощью метода main, то выберите «Создать проект» из флажка шаблона.

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

Введите название проекта и местоположение каталога.

Нажмите на кнопку Готово.

Если вы хотите создать класс Java с помощью метода main, то выберите «Создать проект» из флажка шаблона.

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

Введите название проекта и местоположение каталога.

Нажмите на кнопку Готово.

Создать пакет

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

Перейти к перспективе проекта.

Перейти к перспективе проекта.

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Новое окно модуля будет похоже на новый проект. Выберите опцию Java и соответствующий SDK и нажмите кнопку Далее.

Введите имя модуля.

Нажмите на кнопку Готово.

Новое окно модуля будет похоже на новый проект. Выберите опцию Java и соответствующий SDK и нажмите кнопку Далее.

Введите имя модуля.

Нажмите на кнопку Готово.

Создать класс Java

В этом разделе мы узнаем, как создать класс Java. Класс Java может быть создан под модулем Java. Выполните следующие шаги, чтобы создать модуль —

Перейти к перспективе проекта.

Разверните Project и выберите каталог src из модуля.

Щелкните по нему правой кнопкой мыши; выберите опцию New-> Java Class.

Введите имя класса в диалоговом окне и нажмите кнопку ОК.

Откроется окно редактора с объявлением класса.

Перейти к перспективе проекта.

Разверните Project и выберите каталог src из модуля.

Щелкните по нему правой кнопкой мыши; выберите опцию New-> Java Class.

Введите имя класса в диалоговом окне и нажмите кнопку ОК.

Откроется окно редактора с объявлением класса.

Запустить Java-приложение

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

Давайте напишем простой код, который напечатает сообщение на консоли. Введите следующий код в окне редактора —

Давайте напишем простой код, который напечатает сообщение на консоли. Введите следующий код в окне редактора —

Перейдите в меню «Выполнить» и выберите параметр «Выполнить».

Выберите имя класса и нажмите «Выполнить».

Если нет ошибок компиляции, то он покажет вывод в нижней части окна.

Перейдите в меню «Выполнить» и выберите параметр «Выполнить».

Выберите имя класса и нажмите «Выполнить».

Если нет ошибок компиляции, то он покажет вывод в нижней части окна.

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Intellij Idea — Deep Dive

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

Понимание проектов

Проект — это приложение или программное обеспечение, над которым вы работаете. Он может содержать несколько модулей, классов, библиотек, конфигурации и так далее. Это самый верхний элемент в иерархии.

Понимание модулей

Модули имеют одну ступеньку ниже «Проект». Модуль — это отдельная сущность, которую можно компилировать, отлаживать и запускать независимо от других модулей. Один проект может содержать несколько модулей. Вы можете добавлять или удалять модули из проекта в любое время.

В дополнение к этому, мы также можем импортировать существующие модули. Выполните следующие шаги, чтобы импортировать существующие модули —

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Понимание папок

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

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

Тесты — назначая эту категорию папке, мы указываем IntelliJ, что это место для модульных тестов. Эта папка может получить доступ к классам из папки Sources.

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

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

Тестовые ресурсы — это похоже на ресурсы и используется для модульных тестов.

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

Тесты — назначая эту категорию папке, мы указываем IntelliJ, что это место для модульных тестов. Эта папка может получить доступ к классам из папки Sources.

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

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

Тестовые ресурсы — это похоже на ресурсы и используется для модульных тестов.

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Понимание библиотек

Библиотека представляет собой сборник разных классов. Библиотека позволяет многократно использовать код. В Java библиотека может быть заключена в ZIP, Jar или просто папку. Мы можем определить библиотеки на трех разных уровнях. Уровни — глобальный, проектный и модульный.

Глобальный уровень — общий для всех проектов.

Уровень проекта — общий для всех модулей проекта.

Уровень модуля — общий для классов этих модулей.

Глобальный уровень — общий для всех проектов.

Уровень проекта — общий для всех модулей проекта.

Уровень модуля — общий для классов этих модулей.

Понимание граней

Грани являются расширениями модулей. Они добавляют поддержку фреймворкам и технологиям. Когда фасет добавляется в модуль, IntelliJ определяет, что он добавляет поддержку. Например, подсказки и помощь в редакторе, новые инструменты в панели окон, загрузка зависимостей и так далее. Вы можете добавить фасеты из окна Файл → Структура проекта, как показано ниже —

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Артефакты

Артефакты являются результатом проекта. Это может быть простой файл JAR, приложение Java EE или приложение Java EJB. Если мы используем внешние инструменты сборки, такие как Gradle или Maven, IntelliJ автоматически добавит для них артефакт. Артефакты можно создать, перейдя в Файл → Структура проекта, как показано ниже —

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Импорт существующего проекта

В этом разделе мы поймем, как импортировать существующий проект. Мы можем импортировать проект двумя способами —

В настоящее время он поддерживает инструменты сборки Gradle и Maven. Импортировать проект —

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Форматы проектов

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Директивный формат проекта

Этот формат помогает создать папку идей в вашем проекте и сохранить все файлы конфигурации в этой папке. Настройки сгруппированы в XML-файлы. Например, он создаст misc.xml, modules.xml, workspace.xml и так далее. Следующий скриншот поможет вам понять, как это работает —

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Файловый формат проекта

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

На основе каталогов против файлового формата проекта

По сравнению с форматом проекта на основе файлов формат проекта на основе каталога хранит настройки в отдельной папке со значимыми именами. Другие отличия —

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

Если папка содержит подпапку идеи, то IntelliJ распознает этот проект. Из-за этого вам не нужно явно выбирать проект ipr.

Формат проекта на основе каталогов разбивает настройки на несколько файлов, поэтому проще выбрать конкретный тип настроек для хранения в системе контроля версий.

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

Если папка содержит подпапку идеи, то IntelliJ распознает этот проект. Из-за этого вам не нужно явно выбирать проект ipr.

Формат проекта на основе каталогов разбивает настройки на несколько файлов, поэтому проще выбрать конкретный тип настроек для хранения в системе контроля версий.

Intellij Idea — глубокое погружение в редактор

Визуальные элементы редактора

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

Давайте теперь рассмотрим другое положение —

Водосточная зона

Область желоба редактора расположена на левой стороне IDE, как показано на следующем рисунке —

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Этикетки

Теперь мы поймем, как работают этикетки. Приведенный выше скриншот помечен цифрами. Теперь мы посмотрим, что цифры должны показать —

Здесь мы можем видеть номера строк вместе с другими полезными опциями. Если вы внимательно посмотрите перед именем класса и основным методом, то увидите маленький зеленый треугольник. Он предоставляет возможность запуска, отладки и запуска приложения с покрытием. Просто нажмите на значок треугольника, и он предоставит варианты.

Вы можете увидеть маленький символ плюс в строке номер 6. Это функциональность свертывания кода. Если вы нажмете на эту иконку, она развернется. Свертывание кода может быть выполнено на уровне класса, метода, цикла и других блоков.

В строках с номерами 11 и 14 есть 2 стрелки, которые указывают друг на друга. Маркер представляет начальную и конечную позицию метода. Если вы нажмете на любую стрелку, то она выполнит действие сгиба для этого блока кода. Область желоба будет отображать различные символы при выполнении определенных действий; например, он покажет символы для точек останова, аннотации Java.

Здесь мы можем видеть номера строк вместе с другими полезными опциями. Если вы внимательно посмотрите перед именем класса и основным методом, то увидите маленький зеленый треугольник. Он предоставляет возможность запуска, отладки и запуска приложения с покрытием. Просто нажмите на значок треугольника, и он предоставит варианты.

Вы можете увидеть маленький символ плюс в строке номер 6. Это функциональность свертывания кода. Если вы нажмете на эту иконку, она развернется. Свертывание кода может быть выполнено на уровне класса, метода, цикла и других блоков.

В строках с номерами 11 и 14 есть 2 стрелки, которые указывают друг на друга. Маркер представляет начальную и конечную позицию метода. Если вы нажмете на любую стрелку, то она выполнит действие сгиба для этого блока кода. Область желоба будет отображать различные символы при выполнении определенных действий; например, он покажет символы для точек останова, аннотации Java.

Статус бар

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

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана ideaНа чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

На первом изображении 16: 1 представляет текущий номер строки и номер столбца соответственно.

Далее идет разделитель строк, для UNIX и Mac OS это \ n, а для Windows — \ r.

UTF-8 представляет кодировку файла.

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

Когда мы вводим код в редакторе, IntelliJ проверяет код на лету и показывает подсказки / предложения. Мы можем решить уровень проверки отсюда. Например, мы можем полностью отключить его или разрешить проверку только на синтаксис и так далее.

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

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

На первом изображении 16: 1 представляет текущий номер строки и номер столбца соответственно.

Далее идет разделитель строк, для UNIX и Mac OS это \ n, а для Windows — \ r.

UTF-8 представляет кодировку файла.

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

Когда мы вводим код в редакторе, IntelliJ проверяет код на лету и показывает подсказки / предложения. Мы можем решить уровень проверки отсюда. Например, мы можем полностью отключить его или разрешить проверку только на синтаксис и так далее.

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

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

Царапины

IntelliJ предоставляет временный редактор. Вы можете создавать текст или фрагмент кода без изменения текущей структуры проекта. Он предоставляет два типа временных файлов —

Скретч-файлы

Они функциональны, работают и отлаживаются. Создать скретч-файл —

Перейдите в Файл → Создать → Скретч- файл.

Выберите язык по вашему выбору.

Он создаст файл в папке IntelliJ-Installation-Directory \ config \ scratches.

Перейдите в Файл → Создать → Скретч- файл.

Выберите язык по вашему выбору.

Он создаст файл в папке IntelliJ-Installation-Directory \ config \ scratches.

Царапин буферы

Это используется только для создания любого текста. Чтобы создать рабочий буфер —

Нажмите Ctrl + Shift + A или нажмите значок поиска везде

Появится диалоговое окно.

Введите новый текст буфера очистки в этом поле и нажмите Enter.

Это откроет рабочий буфер в окне редактора.

Нажмите Ctrl + Shift + A или нажмите значок поиска везде

Появится диалоговое окно.

Введите новый текст буфера очистки в этом поле и нажмите Enter.

Это откроет рабочий буфер в окне редактора.

Как и рабочие файлы, рабочие папки также хранятся в папке IntelliJ-Installation-Directory \ config \ scratches.

Полоса прокрутки

Полоса прокрутки выделяет предупреждения / сообщения об ошибках / маркеры TODO из кода. Например, методы sayHello () и sayGoodBye () никогда не используются; следовательно, полоса прокрутки показывает желтый маркер для них.

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

В строке № 8 есть комментарий TODO, полоса прокрутки выделяет его с помощью синего маркера. Ошибки подсвечиваются красным маркером.

Действия редактора

В этом разделе мы обсудим действия редактора в IntelliJ.

Поиск и замена

Для поиска текста в текущем файле —

Перейдите к файлу в окне редактора и нажмите Ctrl + F.

Появится текстовое поле, введите текст для поиска там.

Здесь вы можете указать различные параметры — совпадение с учетом регистра, точное совпадение, регулярное выражение и т. Д.

Перейдите к файлу в окне редактора и нажмите Ctrl + F.

Появится текстовое поле, введите текст для поиска там.

Здесь вы можете указать различные параметры — совпадение с учетом регистра, точное совпадение, регулярное выражение и т. Д.

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Вы можете выполнить операцию поиска на очень детальном уровне. Например, поиск может быть выполнен на уровне проекта, модуля или каталога —

Нажмите комбинацию клавиш Ctrl + Shift + F.

Появится новое окно; отсюда вы можете выбрать соответствующий уровень.

Нажмите комбинацию клавиш Ctrl + Shift + F.

Появится новое окно; отсюда вы можете выбрать соответствующий уровень.

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Чтобы выполнить действие замены в текущем файле —

Нажмите комбинацию клавиш Ctrl + R.

Появится диалоговое окно, введите текст для замены здесь.

Эта операция позволяет заменить одно совпадение, все совпадения или пропустить текущее совпадение.

Нажмите комбинацию клавиш Ctrl + R.

Появится диалоговое окно, введите текст для замены здесь.

Эта операция позволяет заменить одно совпадение, все совпадения или пропустить текущее совпадение.

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Выполнить действие замены на уровне детализации —

Нажмите сочетание клавиш Shift + Ctrl + R.

Это позволит вам заменить текст в проекте, модуле, каталоге и других областях.

Нажмите сочетание клавиш Shift + Ctrl + R.

Это позволит вам заменить текст в проекте, модуле, каталоге и других областях.

Режим выбора столбца

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

История буфера обмена

Когда мы копируем любой текст, он попадает в историю буфера обмена. IntelliJ поддерживает историю буфера обмена. Чтобы просмотреть эту историю, нажмите комбинацию клавиш Ctrl + Shift + V. Вы можете выбрать содержимое для вставки из этого окна.

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Завершение кода

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Завершение кода предлагает атрибуты класса и методы класса при работе с объектами класса.

Генерация кода

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

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

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

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Проверка кода

Мы уже видели, что IntelliJ идентифицирует синтаксические ошибки, предупреждающие сообщения и маркеры TODO. В дополнение к этому, он предлагает улучшение кода, идентифицирует мертвый код, оптимизацию кода. Например, в приведенном ниже коде значение flag всегда равно true. Следовательно, другая часть никогда не будет выполнена.

IntelliJ идентифицирует это и предлагает удалить этот блок кода.

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Сравнение файлов и папок

Выполните следующие действия, чтобы сравнить файлы и папки —

Удерживайте клавишу Ctrl и выберите файлы для сравнения с точки зрения проекта.

Откроется окно сравнения, в котором выделены изменения.

Удерживайте клавишу Ctrl и выберите файлы для сравнения с точки зрения проекта.

Откроется окно сравнения, в котором выделены изменения.

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

Аналогично, для сравнения папок выберите папки с точки зрения проекта вместо файлов.

На чем написана idea. Смотреть фото На чем написана idea. Смотреть картинку На чем написана idea. Картинка про На чем написана idea. Фото На чем написана idea

Получать помощь

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

Источник

Добавить комментарий

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