ТОП лучших IDE для Java
Являетесь ли вы опытным программистом на Java или только начинаете, вы обязательно будете использовать интегрированную среду разработки (IDE).
Java IDE - это программное обеспечение, которое содержит все необходимые инструменты, библиотеки и другие ресурсы, необходимые для программирования на Java.
Предложенная сегодня статья кратко описывает и сравнивает между собой 12 десктопных IDE, а также, 5 онлайн компиляторов.
Читать статью
Являетесь ли вы опытным программистом на Java или только начинаете, вы обязательно будете использовать интегрированную среду разработки (IDE).
Java IDE - это программное обеспечение, которое содержит все необходимые инструменты, библиотеки и другие ресурсы, необходимые для программирования на Java.
Предложенная сегодня статья кратко описывает и сравнивает между собой 12 десктопных IDE, а также, 5 онлайн компиляторов.
Читать статью
Software Testing Help
Top 10+ Best Java IDE & Online Java Compilers [2023 Rankings]
A Comprehensive list & Compariosn of the Top Java IDEs & Online Java Compilers with Pricing & Features. Select the Best Java IDE & Compiler from this list.
Как я создал Spring Boot startup analyzer
Ни для кого не секрет, что приложения на Spring могут задумываться на старте. Особенно это заметно с развитием проекта: новый сервис стартует быстро и радует отзывчивостью, потом начинает обрастать функционалом, появляются всё новые и новые зависимости, а итоговый дистрибутив распухает на десятки мегабайт. И вот, для того чтобы просто запустить этот сервис локально, приходится ждать полминуты, минуту, две… В такие моменты ожидания у разработчика могут возникнуть вопросы: почему же так долго? что там такого происходит под капотом? может, не нужно было добавлять ту библиотеку?
Всем привет, меня зовут Алексей Лапин, я ведущий разработчик в Luxoft. В статье расскажу про инструмент в виде веб-приложения для анализа фазы старта сервисов на Spring Boot, использующий данные actuator startup endpoint. Это может помочь ответить на вопросы выше.
Читать статью
Ни для кого не секрет, что приложения на Spring могут задумываться на старте. Особенно это заметно с развитием проекта: новый сервис стартует быстро и радует отзывчивостью, потом начинает обрастать функционалом, появляются всё новые и новые зависимости, а итоговый дистрибутив распухает на десятки мегабайт. И вот, для того чтобы просто запустить этот сервис локально, приходится ждать полминуты, минуту, две… В такие моменты ожидания у разработчика могут возникнуть вопросы: почему же так долго? что там такого происходит под капотом? может, не нужно было добавлять ту библиотеку?
Всем привет, меня зовут Алексей Лапин, я ведущий разработчик в Luxoft. В статье расскажу про инструмент в виде веб-приложения для анализа фазы старта сервисов на Spring Boot, использующий данные actuator startup endpoint. Это может помочь ответить на вопросы выше.
Читать статью
Oracle's JDK 17 - Free Again for Commercial Use
The Oracle JDK is available free of charge for production use again - under the new "Oracle No-Fee Terms and Conditions" (NFTC) license. This move reverses a 2018 decision to charge for Oracle JDK production use and does not affect Oracle‘s OpenJDK distribution. The NFTC applies to the recently released version 17 of Oracle JDK and future versions.
Читать статью
The Oracle JDK is available free of charge for production use again - under the new "Oracle No-Fee Terms and Conditions" (NFTC) license. This move reverses a 2018 decision to charge for Oracle JDK production use and does not affect Oracle‘s OpenJDK distribution. The NFTC applies to the recently released version 17 of Oracle JDK and future versions.
Читать статью
InfoQ
Oracle's JDK 17 - Free Again for Commercial Use
The Oracle JDK is available free of charge for production use again - under the new "Oracle No-Fee Terms and Conditions" (NFTC) license. This move reverses a 2018 decision to charge for Oracle JDK production use and does not affect Oracle's OpenJDK distribution.…
Распознаем числа в тексте
Кому может быть полезна эта статья?
Извращенцам делающим NLP на Java? Или может быть для обучения?
Хотя зачем эти оправдания? Весь код был написан because we can.
Мы рассмотрим как превращать числа вида "Двенадцать тысяч шестьсот пятьдесят девять целых четыре миллионных" в форму вроде 12 659, 000 004.
Читать статью
Кому может быть полезна эта статья?
Извращенцам делающим NLP на Java? Или может быть для обучения?
Хотя зачем эти оправдания? Весь код был написан because we can.
Мы рассмотрим как превращать числа вида "Двенадцать тысяч шестьсот пятьдесят девять целых четыре миллионных" в форму вроде 12 659, 000 004.
Читать статью
Хабр
Распознаем числа в тексте
Кому может быть полезна эта статья? Извращенцам делающим NLP на Java? Или может быть для обучения? Хотя зачем эти оправдания? Весь код был написан because we can. Под катом мы рассмотрим как...
Продажная многопоточность
Данный цикл статей рассматривает сложнейший мир многопоточного программирования через достаточно щекотливую тему, читатель должен быть готов к тому, что некоторые образы и примеры могут негативно повлиять на его психологическое состояние, некоторые — вызвать отвращение. Следует учитывать, что все описанные ситуации являются вымышленными и совпадения с реальностью случайны.
Повествование будет разбито на две части, от простого к сложному.
В первой части будут рассмотрены базовые понятия, стандартные подходы и проблемы. Будут приведены примеры использования нескольких, довольно известных примитивов синхронизации.
Во второй части, мы углубимся в более сложные концепты и так же, на простых и понятных примерах, разберем нетривиальные концепции, которые существуют в современных языках программирования.
Читать статью
Данный цикл статей рассматривает сложнейший мир многопоточного программирования через достаточно щекотливую тему, читатель должен быть готов к тому, что некоторые образы и примеры могут негативно повлиять на его психологическое состояние, некоторые — вызвать отвращение. Следует учитывать, что все описанные ситуации являются вымышленными и совпадения с реальностью случайны.
Повествование будет разбито на две части, от простого к сложному.
В первой части будут рассмотрены базовые понятия, стандартные подходы и проблемы. Будут приведены примеры использования нескольких, довольно известных примитивов синхронизации.
Во второй части, мы углубимся в более сложные концепты и так же, на простых и понятных примерах, разберем нетривиальные концепции, которые существуют в современных языках программирования.
Читать статью
Хабр
Продажная многопоточность
Данный цикл статей рассматривает сложнейший мир многопоточного программирования через достаточно щекотливую тему, читатель должен быть готов к тому, что некоторые образы и примеры могут негативно...
Java News Roundup: Hibernate Reactive 1.0, Spring Updates, OpenJDK, Red Hat Introduces Cryostat 2.0
This week's Java roundup for October 25th, 2021, features news from OpenJDK, JDK 18, numerous updates on Spring projects, MicroStream 6.0, Quarkus 2.4.0, Hibernate Reactive 1.0, Open Liberty 21.0.0.11, Eclipse Vert.x 4.2.0, Red Hat introduces Cryostat 2.0, GraalVM Native Build Tools 0.9.7.1, Liberica Native Image Kit 21.3 and JDKMon 17.0.7.
Читать статью
This week's Java roundup for October 25th, 2021, features news from OpenJDK, JDK 18, numerous updates on Spring projects, MicroStream 6.0, Quarkus 2.4.0, Hibernate Reactive 1.0, Open Liberty 21.0.0.11, Eclipse Vert.x 4.2.0, Red Hat introduces Cryostat 2.0, GraalVM Native Build Tools 0.9.7.1, Liberica Native Image Kit 21.3 and JDKMon 17.0.7.
Читать статью
InfoQ
Java News Roundup: Hibernate Reactive 1.0, Spring Updates, OpenJDK, Red Hat Introduces Cryostat 2.0
This week's Java roundup for October 25th, 2021, features news from OpenJDK, JDK 18, numerous updates on Spring projects, MicroStream 6.0, Quarkus 2.4.0, Hibernate Reactive 1.0, Open Liberty 21.0.0.11, Eclipse Vert.x 4.2.0, Red Hat introduces Cryostat 2.0…
Нужна система с низкими задержками? Выбираем Java вместо C++
Все разработчики знают, что есть два способа сделать дело: первый — вручную, медленно, нервно, сложно, либо второй – автоматизировано, быстро и еще сложнее.
Например, я мог бы продолжить писать эту статью о том, почему стоит использовать Java вместо C++ при программировании систем с низкой задержкой. Либо мог бы обучить ИИ, чтобы он сделал это за меня. Второй подход, в конце концов, сэкономил бы мне массу времени – искусственный интеллект генерировал бы за меня тысячи статей в секунду – но редактор вряд ли обрадовался бы услышать, что на подготовку первой статьи мне нужно два года.
Читать статью
Все разработчики знают, что есть два способа сделать дело: первый — вручную, медленно, нервно, сложно, либо второй – автоматизировано, быстро и еще сложнее.
Например, я мог бы продолжить писать эту статью о том, почему стоит использовать Java вместо C++ при программировании систем с низкой задержкой. Либо мог бы обучить ИИ, чтобы он сделал это за меня. Второй подход, в конце концов, сэкономил бы мне массу времени – искусственный интеллект генерировал бы за меня тысячи статей в секунду – но редактор вряд ли обрадовался бы услышать, что на подготовку первой статьи мне нужно два года.
Читать статью
Хабр
Нужна система с низкими задержками? Выбираем Java вместо C++
Все разработчики знают, что есть два способа сделать дело: первый — вручную, медленно, нервно, сложно, либо второй – автоматизировано, быстро и еще сложнее. Например, я мог бы продолжить писать эту...
Top 10 Spring Framework Annotations for Java Programmers | Example Tutorial
Hello guys, if you are learning the Spring framework and want to know what are essential Spring annotations you should know then you have come to the right place. Earlier, I have shared the free Core Spring and Spring Boot courses and Spring certification resources for Java developers, and in this article, you will find some of the most common annotations in this article, which is a must for a Java developer to work with Spring. You will also learn what does annotation really does and why should you learn them. There is no doubt that the Spring framework is one of the most popular Java frameworks, and it has made the life of Java developers easy by providing some excellent features in the last 15 years.
Читать статью
Hello guys, if you are learning the Spring framework and want to know what are essential Spring annotations you should know then you have come to the right place. Earlier, I have shared the free Core Spring and Spring Boot courses and Spring certification resources for Java developers, and in this article, you will find some of the most common annotations in this article, which is a must for a Java developer to work with Spring. You will also learn what does annotation really does and why should you learn them. There is no doubt that the Spring framework is one of the most popular Java frameworks, and it has made the life of Java developers easy by providing some excellent features in the last 15 years.
Читать статью
Java67
Top 10 Spring Framework Annotations Java Developer Should Learn - Example Tutorial
Java Programming tutorials and Interview Questions, book and course recommendations from Udemy, Pluralsight, Coursera, edX etc
Сломать объект с помощью финализации
Вчера перевели в статус Candidate новый JEP 421: Deprecate Finalization for Removal. Путь к удалению механизма финализации из Java начался в Java 9, когда метод Object.finalize() был впервые объявлен deprecated. Рано или поздно механизм исчезнет из Java, поэтому если вы его используете, самое время задуматься об альтернативах. Однако статья не об этом.
Читать статью
Вчера перевели в статус Candidate новый JEP 421: Deprecate Finalization for Removal. Путь к удалению механизма финализации из Java начался в Java 9, когда метод Object.finalize() был впервые объявлен deprecated. Рано или поздно механизм исчезнет из Java, поэтому если вы его используете, самое время задуматься об альтернативах. Однако статья не об этом.
Читать статью
Хабр
Сломать объект с помощью финализации
Вчера перевели в статус Candidate новый JEP 421 : Deprecate Finalization for Removal. Путь к удалению механизма финализации из Java начался в Java 9, когда метод Object.finalize() был впервые объявлен...
Spring Boot: реализация фабричного метода
Фабричный метод — это порождающий паттерн, в котором вся логика создания объектов находится в фабричном классе. В этой статье я расскажу, как применять этот паттерн в приложении Spring Boot. Итак, начнем.
Читать статью
Фабричный метод — это порождающий паттерн, в котором вся логика создания объектов находится в фабричном классе. В этой статье я расскажу, как применять этот паттерн в приложении Spring Boot. Итак, начнем.
Читать статью
Telegraph
Spring Boot: реализация фабричного метода
Фабричный метод — это порождающий паттерн, в котором вся логика создания объектов находится в фабричном классе. В этой статье я расскажу, как применять этот паттерн в приложении Spring Boot. Итак, начнем. Допустим, у нас есть класс Viewer, который выполняет…
GraalVM 21.3 Supports Java 17
Oracle Labs released GraalVM 21.3, featuring support for Java 17 and JDK Flight Recorder (JFR) for low-overhead production profiling of native Java executables. Compared to version 21.1 from April 2021, this release creates 14% smaller native executables for Spring PetClinic JDBC with 20% less build time. The release runs applications faster and begins to support the Java Platform Module System.
Читать статью
Oracle Labs released GraalVM 21.3, featuring support for Java 17 and JDK Flight Recorder (JFR) for low-overhead production profiling of native Java executables. Compared to version 21.1 from April 2021, this release creates 14% smaller native executables for Spring PetClinic JDBC with 20% less build time. The release runs applications faster and begins to support the Java Platform Module System.
Читать статью
InfoQ
GraalVM 21.3 Supports Java 17
Oracle Labs released GraalVM 21.3, featuring support for Java 17 and JDK Flight Recorder (JFR) for low-overhead production profiling of native Java executables. Compared to version 21.1 from April 2021, this release creates 14% smaller native executables…
Использование Crosstab в бесплатной библиотеке отчетности JasperReports
В автоматизации отчетности очень часто используют открытую Java-библиотеку JasperReports, например статья Опенсорс-решение для автоматизации отчетности рассказывает об ее использовании для получения PDF форматов отчетности между делом упомянув о возможности экспорта в другие форматы.
Читать статью
В автоматизации отчетности очень часто используют открытую Java-библиотеку JasperReports, например статья Опенсорс-решение для автоматизации отчетности рассказывает об ее использовании для получения PDF форматов отчетности между делом упомянув о возможности экспорта в другие форматы.
Читать статью
Хабр
Использование Crosstab в бесплатной библиотеке отчетности JasperReports
В автоматизации отчетности очень часто используют открытую Java-библиотеку JasperReports , например статья Опенсорс-решение для автоматизации отчетности рассказывает об ее использовании для получения...
Red Hat Releases Language Support for Java Plugin 1.0 for VSCode
Red Hat has released version 1.0 of Language support for Java on Visual Studio Code with new features that include: support for Java 17; improvement in performance by deferring some computations based on new features of the LSP specification; tuning the various JVM options; optimization in the responsiveness of the language server; and the ability to display the Type hierarchy. The source lookup feature has been improved and now supports unmanaged projects, without Maven or Gradle, and is able to display sources of any library available on Maven central. This release also contains new code actions, to increase developer productivity, for example, to add a missing method. Lastly, support for Gradle files written in Kotlin (.kts) was introduced.
Читать статью
Red Hat has released version 1.0 of Language support for Java on Visual Studio Code with new features that include: support for Java 17; improvement in performance by deferring some computations based on new features of the LSP specification; tuning the various JVM options; optimization in the responsiveness of the language server; and the ability to display the Type hierarchy. The source lookup feature has been improved and now supports unmanaged projects, without Maven or Gradle, and is able to display sources of any library available on Maven central. This release also contains new code actions, to increase developer productivity, for example, to add a missing method. Lastly, support for Gradle files written in Kotlin (.kts) was introduced.
Читать статью
InfoQ
Red Hat Releases Language Support for Java Plugin 1.0 for VSCode
Red Hat has released version 1.0 of Language support for Java on VSCode that supports Java 17, displaying type hierarchies and improved performance. The source lookup feature has been improved and now supports unmanaged projects and is able to display sources…
Что полезно знать Java-разработчику про вывод типов
В Java 8 кардинально переработали процедуру вывода типов выражений. В спецификации появилась целая новая глава на эту тему. Это весьма сложная штука, изложенная скорее на языке алгебры, чем на языке нормальных людей. Не каждый программист готов в этом разобраться. Я, разработчик IDE, которому приходилось ковыряться в соответствующем коде, к своему стыду тоже довольно плохо разбираюсь в этой теме и понимаю процесс только по верхам. Причём сложно не только мне, но и авторам компилятора Java. После выхода Java 8 обнаружились десятки багов, когда поведение компилятора не соответствовало спецификации, либо текст спецификации был неоднозначен. В средах разработки для Java ситуация обстояла не лучше: там тоже были баги, причём другие, поэтому код мог отображаться ошибочным в вашей IDE, но успешно компилироваться. Или наоборот. С годами ситуация улучшилась, многие баги исправили, хотя всё ещё в спецификации остались тёмные углы.
Читать статью
В Java 8 кардинально переработали процедуру вывода типов выражений. В спецификации появилась целая новая глава на эту тему. Это весьма сложная штука, изложенная скорее на языке алгебры, чем на языке нормальных людей. Не каждый программист готов в этом разобраться. Я, разработчик IDE, которому приходилось ковыряться в соответствующем коде, к своему стыду тоже довольно плохо разбираюсь в этой теме и понимаю процесс только по верхам. Причём сложно не только мне, но и авторам компилятора Java. После выхода Java 8 обнаружились десятки багов, когда поведение компилятора не соответствовало спецификации, либо текст спецификации был неоднозначен. В средах разработки для Java ситуация обстояла не лучше: там тоже были баги, причём другие, поэтому код мог отображаться ошибочным в вашей IDE, но успешно компилироваться. Или наоборот. С годами ситуация улучшилась, многие баги исправили, хотя всё ещё в спецификации остались тёмные углы.
Читать статью
Хабр
Что полезно знать Java-разработчику про вывод типов
В Java 8 кардинально переработали процедуру вывода типов выражений. В спецификации появилась целая новая глава на эту тему. Это весьма сложная штука, изложенная скорее на языке алгебры, чем на языке...
Новости Java #31 от miniJUG
• Появилось расписание выхода JDK 18
• Новый JEP 421: Deprecate Finalization for Removal
• JEP 418: Internet-Address Resolution SPI интегрирован в JDK 18
• Два новых черновика JEP: Region Pinning in G1 и Linux/RISC-V Port
• JUG.ru выложил видео с JPoint 2021
• Java Annotated Monthly за ноябрь 2021
• Gradle 7.3
• StreamEx 0.8.0
Читать полностью
• Появилось расписание выхода JDK 18
• Новый JEP 421: Deprecate Finalization for Removal
• JEP 418: Internet-Address Resolution SPI интегрирован в JDK 18
• Два новых черновика JEP: Region Pinning in G1 и Linux/RISC-V Port
• JUG.ru выложил видео с JPoint 2021
• Java Annotated Monthly за ноябрь 2021
• Gradle 7.3
• StreamEx 0.8.0
Читать полностью
От Java 8 до Java 15 за 10 минут
В этой статье я хочу рассмотреть основные возможности, добавленные в Java начиная с 7 версии по 15. Я затрону как минимум одно крупное улучшение для каждой версии, вплоть до Java 15, которая, кстати, была выпущена осенью 2020 года.
Читать статью
В этой статье я хочу рассмотреть основные возможности, добавленные в Java начиная с 7 версии по 15. Я затрону как минимум одно крупное улучшение для каждой версии, вплоть до Java 15, которая, кстати, была выпущена осенью 2020 года.
Читать статью
Хабр
От Java 8 до Java 15 за 10 минут
Данный пост является переводом статьи с некоторыми уточнениями. В этой статье я хочу рассмотреть основные возможности, добавленные в Java начиная с 7 версии по 15. Я затрону как минимум одно крупное...
Java News Roundup: Microsoft Joins JCP, Helidon 2.4.0, OpenJDK and JDK 18 Updates
This week's Java roundup for November 1st, 2021, features news from OpenJDK JEPs, JDK 18, Helidon 2.4.0, Open Liberty 21.0.0.12-beta, point releases for Spring Cloud and its related subprojects, Quarkus 2.4.1.Final, Hibernate Reactive 1.0.1, WildFly 25.0.1 and JReleaser 0.8.0.
Читать статью
This week's Java roundup for November 1st, 2021, features news from OpenJDK JEPs, JDK 18, Helidon 2.4.0, Open Liberty 21.0.0.12-beta, point releases for Spring Cloud and its related subprojects, Quarkus 2.4.1.Final, Hibernate Reactive 1.0.1, WildFly 25.0.1 and JReleaser 0.8.0.
Читать статью
InfoQ
Java News Roundup: Microsoft Joins JCP, Helidon 2.4.0, OpenJDK and JDK 18 Updates
This week's Java roundup for November 1st, 2021, features news from OpenJDK JEPs, JDK 18, Helidon 2.4.0, Open Liberty 21.0.0.12-beta, point releases for Spring Cloud and its related subprojects, Quarkus 2.4.1.Final, Hibernate Reactive 1.0.1, WildFly 25.0.1…
Практика применения Wildcards в Java: от простых Generic типов до подстановочных символов
Подстановочные символы Wildcards сегодня используются в большей степени для разработки библиотек и иногда в создании бизнес-приложений. Действительно мощный инструмент зачастую вызывает затруднение даже у senior программистов. Эксперт в области тестирования ПО, тренер Luxoft Training Денис Цыганов рассказал, в чем суть использования Wildcards и Generic в Java.
Читать статью
Подстановочные символы Wildcards сегодня используются в большей степени для разработки библиотек и иногда в создании бизнес-приложений. Действительно мощный инструмент зачастую вызывает затруднение даже у senior программистов. Эксперт в области тестирования ПО, тренер Luxoft Training Денис Цыганов рассказал, в чем суть использования Wildcards и Generic в Java.
Читать статью
Digital Report
Практика применения Wildcards в Java: от простых Generic типов до подстановочных символов - Digital Report
Подстановочные символы Wildcards сегодня используются в большей степени для разработки библиотек и иногда в создании бизнес-приложений. Действительно мощный инструмент зачастую вызывает затруднение даже у senior программистов. Эксперт в области тестирования…
8 советов по отладке для пользователей IntelliJ IDEA, о существовании которых вы возможно не знали
Все мы, разработчики, знакомы с отладчиками и используем их ежедневно - они важная часть процесса программирования.
Но давайте будем честными. Обычно мы используем только опцию точки останова. При большом желании мы можем использовать условную точку останова.
Но знаете что, отладчик IntelliJ IDEA имеет множество мощных и передовых функций, которые полезны для более эффективной и простой отладки.
Чтобы помочь вам, мы составили список советов и приемов от наших разработчиков в Lightrun. Мы надеемся, что эти советы помогут вам быстрее находить и устранять ошибки.
Давайте начнем.
Читать статью
Все мы, разработчики, знакомы с отладчиками и используем их ежедневно - они важная часть процесса программирования.
Но давайте будем честными. Обычно мы используем только опцию точки останова. При большом желании мы можем использовать условную точку останова.
Но знаете что, отладчик IntelliJ IDEA имеет множество мощных и передовых функций, которые полезны для более эффективной и простой отладки.
Чтобы помочь вам, мы составили список советов и приемов от наших разработчиков в Lightrun. Мы надеемся, что эти советы помогут вам быстрее находить и устранять ошибки.
Давайте начнем.
Читать статью
Хабр
8 советов по отладке для пользователей IntelliJ IDEA, о существовании которых вы возможно не знали
Все мы, разработчики, знакомы с отладчиками и используем их ежедневно - они важная часть процесса программирования. Но давайте будем честными. Обычно мы используем только опцию точки...
Hibernate Releases Version 1.0 of Reactive API
The new Hibernate Reactive 1.0 is the first stable version of the reactive API for the popular Hibernate ORM, supporting non-blocking database drivers and a reactive style of interaction with the database.
Hibernate Reactive is an ORM implementation designed to take advantage of non-blocking database clients. Operations are built upon reactive streams instead of synchronous invocations and represented using a chain of Java CompletionStage interfaces.
Читать статью
The new Hibernate Reactive 1.0 is the first stable version of the reactive API for the popular Hibernate ORM, supporting non-blocking database drivers and a reactive style of interaction with the database.
Hibernate Reactive is an ORM implementation designed to take advantage of non-blocking database clients. Operations are built upon reactive streams instead of synchronous invocations and represented using a chain of Java CompletionStage interfaces.
Читать статью
InfoQ
Hibernate Releases Version 1.0 of Reactive API
Hibernate Reactive 1.0 is the first stable version of the reactive API for the popular Hibernate ORM, supporting non-blocking database drivers and a reactive style of interaction with the database.
WEKA. Руководство по использованию
Начав изучать библиотеку Weka я обнаружила, что в Интернете очень мало информации о ней на русском языке – как с ней работать и как ее использовать. Эта статья будет вводной для знакомства с библиотекой.
Читать статью
Начав изучать библиотеку Weka я обнаружила, что в Интернете очень мало информации о ней на русском языке – как с ней работать и как ее использовать. Эта статья будет вводной для знакомства с библиотекой.
Читать статью
👍1