Forwarded from Библиотека devops’а
☸️ Покоряем Kubernetes: от базовых концепций к эффективному управлению контейнерами
Умение работать с Kubernetes — ценный навык для продвинутого разработчика, и совершенно необходимый — для каждого DevOps-инженера. Расскажем просто и понятно, как разобраться в основных концепциях Kubernetes.
Читать статью
#гайд
Умение работать с Kubernetes — ценный навык для продвинутого разработчика, и совершенно необходимый — для каждого DevOps-инженера. Расскажем просто и понятно, как разобраться в основных концепциях Kubernetes.
Читать статью
#гайд
🗺️ Где составить дорожную карту: ТОП-10 сервисов
Сервисы, которые подойдут для составления карьерной карты и не только.
Подборка материалов по теме:
🧪 Дорожная карта тестировщика в 2023 году
🛣️ Дорожная карта: что это, как ее составить и почему она обязательно нужна разработчику
☕ Дорожная карта Java-разработчика в 2023 году
Читать статью
#гайд
Сервисы, которые подойдут для составления карьерной карты и не только.
Подборка материалов по теме:
🧪 Дорожная карта тестировщика в 2023 году
🛣️ Дорожная карта: что это, как ее составить и почему она обязательно нужна разработчику
☕ Дорожная карта Java-разработчика в 2023 году
Читать статью
#гайд
☕ Плавный переход с Java 11 на Java 21: пошаговое руководство для разработчиков
Наше пошаговое руководство поможет вам осуществить плавную миграцию вашего проекта с Java 11 на Java 21, избегая подводных камней и извлекая максимум пользы из новых возможностей.
Читать статью
#гайд
Наше пошаговое руководство поможет вам осуществить плавную миграцию вашего проекта с Java 11 на Java 21, избегая подводных камней и извлекая максимум пользы из новых возможностей.
Читать статью
#гайд
🤔🤔 Как создать свой сборщик проектов
Автор делится опытом написания проекта, описывает с какими проблемами пришлось столкнуться, рассказывает о причинах принятия технических решений, примеры использования шаблонов проектирования. При этом фокус делает на том, каким проект получился в итоге.
Статья направлена на пока еще не очень опытных инженеров, которые хотят познакомиться с проектом сложнее Hello world на Spring Boot и узнать что-то новое в процессе.
Читать статью
#гайд
Автор делится опытом написания проекта, описывает с какими проблемами пришлось столкнуться, рассказывает о причинах принятия технических решений, примеры использования шаблонов проектирования. При этом фокус делает на том, каким проект получился в итоге.
Статья направлена на пока еще не очень опытных инженеров, которые хотят познакомиться с проектом сложнее Hello world на Spring Boot и узнать что-то новое в процессе.
Читать статью
#гайд
💁💁 Как начать писать на Java в VSCode
Подавляющее большинство пишет Java код, используя JetBrains IntelliJ IDEA Ultimate. Да, это отличная IDE. Для нее есть большое количество расширений, среда очень тесно интегрируется с Spring Framework и знает его особенности.
В какой‑то мере все Java‑разработчики стали заложниками IDEA. Она так привычна, что нет желания пробовать другое. Ведь всё такое удобное и знакомое за столько лет использования.
Но если у вас есть трудности с доступом к Ultimate версии, а Community вариант не достаточно функционален — самое время попробовать современную альтернативу — Visual Studio Code.
В статье автор делится опытом подготовки среды разработки и изучения вопроса: «А можно ли перейти на VSCode?».
Продолжение здесь
#гайд
Подавляющее большинство пишет Java код, используя JetBrains IntelliJ IDEA Ultimate. Да, это отличная IDE. Для нее есть большое количество расширений, среда очень тесно интегрируется с Spring Framework и знает его особенности.
В какой‑то мере все Java‑разработчики стали заложниками IDEA. Она так привычна, что нет желания пробовать другое. Ведь всё такое удобное и знакомое за столько лет использования.
Но если у вас есть трудности с доступом к Ultimate версии, а Community вариант не достаточно функционален — самое время попробовать современную альтернативу — Visual Studio Code.
В статье автор делится опытом подготовки среды разработки и изучения вопроса: «А можно ли перейти на VSCode?».
Продолжение здесь
#гайд
🧑🎓🧑🎓 Hazelcast: эксперименты с настройкой и долговременным хранением больших объектов in-memory
Статья будет полезна для тех, кто поддерживает приложения на Java, так как большая ее часть посвящена анализу работы G1 GC, знакомству с соответствующими инструментами и особенностями тюнинга GC, в частности для очень больших heap`ов. А также тем, кто пытается разобраться, на что способен Hazelcast, и для чего его можно применить.
Читать статью
#гайд
Статья будет полезна для тех, кто поддерживает приложения на Java, так как большая ее часть посвящена анализу работы G1 GC, знакомству с соответствующими инструментами и особенностями тюнинга GC, в частности для очень больших heap`ов. А также тем, кто пытается разобраться, на что способен Hazelcast, и для чего его можно применить.
Читать статью
#гайд
😎😎 Как распознать текст, написанный искусственным интеллектом: основные признаки
В последние годы искусственный интеллект (ИИ) сделал значительные шаги вперед, особенно в области создания текстов. Сегодня ИИ способен писать статьи, сообщения и даже художественные произведения, которые на первый взгляд трудно отличить от работ человека. Однако существуют определенные признаки, методы и инструменты, которые могут помочь распознать текст, написанный ИИ. В этой статье рассматриваются основные признаки ИИ-текста, методы его распознавания и доступные инструменты для этой цели.
Читать статью
#гайд
В последние годы искусственный интеллект (ИИ) сделал значительные шаги вперед, особенно в области создания текстов. Сегодня ИИ способен писать статьи, сообщения и даже художественные произведения, которые на первый взгляд трудно отличить от работ человека. Однако существуют определенные признаки, методы и инструменты, которые могут помочь распознать текст, написанный ИИ. В этой статье рассматриваются основные признаки ИИ-текста, методы его распознавания и доступные инструменты для этой цели.
Читать статью
#гайд
🧑🎓🧑🎓 Amplicode: учим IDE говорить на языке фреймворка
Amplicode — это коллекция инструментов, работающих на основе IntelliJ IDEA Community, Ultimate и VS Code. Amplicode учит вашу IDE говорить и думать на языке библиотек и фреймворков — Spring Boot, JPA, Docker, Kafka, Liquibase, MapStruct, StoryBook, ReactAdmin. Все эти инструменты объединены общими принципами, что гарантирует быстрое погружение и удобную работу, несмотря на обилие функций. В результате вы пишете «обслуживающий» код быстрее, эффективнее и качественнее. Как это работает, рассказывают в статье
#гайд
Amplicode — это коллекция инструментов, работающих на основе IntelliJ IDEA Community, Ultimate и VS Code. Amplicode учит вашу IDE говорить и думать на языке библиотек и фреймворков — Spring Boot, JPA, Docker, Kafka, Liquibase, MapStruct, StoryBook, ReactAdmin. Все эти инструменты объединены общими принципами, что гарантирует быстрое погружение и удобную работу, несмотря на обилие функций. В результате вы пишете «обслуживающий» код быстрее, эффективнее и качественнее. Как это работает, рассказывают в статье
#гайд
💁💁 Создание дистрибутивов для разных операционных систем в Java 21 и 22
Статья рассказывает о построении дистрибутивов приложений для операционных систем Windows, macOS и Linux в случае использования Java 21 и 22.
Инструменты, позволяющие выполнять компиляцию, сборку, создание цифровой подписи и дистрибутивов Java-приложений, впервые появились в JDK 7 Update 6. Первоначально они предназначались в первую очередь для JavaFX-приложений и были доступны в виде утилиты командной строки javafxpackager и в виде задач (tasks) для Ant. В официальной документации задачи для Ant имеют наименование JavaFX Ant Tasks
Продолжение тут
#гайд
Статья рассказывает о построении дистрибутивов приложений для операционных систем Windows, macOS и Linux в случае использования Java 21 и 22.
Инструменты, позволяющие выполнять компиляцию, сборку, создание цифровой подписи и дистрибутивов Java-приложений, впервые появились в JDK 7 Update 6. Первоначально они предназначались в первую очередь для JavaFX-приложений и были доступны в виде утилиты командной строки javafxpackager и в виде задач (tasks) для Ant. В официальной документации задачи для Ant имеют наименование JavaFX Ant Tasks
Продолжение тут
#гайд
💥💥 Блеск и нищета нового Scrolling API в Spring Data
В Spring Data 3.1 появилось новое API для итерирования по большому объему данных: Scrolling API. В статье посмотрите на практические применения с примерами кода и преимущества по сравнению со всем известным Pageable. А также будет разбор, чего Scrolling API пока не хватает, и можно ли его вообще брать в свои проекты. Если хотите выяснить, как с новым API в теории ускорить пагинацию больших данных — читайте далее
#гайд
В Spring Data 3.1 появилось новое API для итерирования по большому объему данных: Scrolling API. В статье посмотрите на практические применения с примерами кода и преимущества по сравнению со всем известным Pageable. А также будет разбор, чего Scrolling API пока не хватает, и можно ли его вообще брать в свои проекты. Если хотите выяснить, как с новым API в теории ускорить пагинацию больших данных — читайте далее
#гайд
🚶🚶 Lazy Loading в Java
Вы когда-нибудь замечали, как котики, лениво потягиваясь и сворачиваясь клубком, экономят энергию и действуют только тогда, когда это действительно необходимо?
Как и наши хвостатые друзья, существует такой паттерн как Lazy Loading, который позволяет экономить ресурсы, инициализируя объекты только тогда, когда они действительно нужны.
Читать далее
#гайд
Вы когда-нибудь замечали, как котики, лениво потягиваясь и сворачиваясь клубком, экономят энергию и действуют только тогда, когда это действительно необходимо?
Как и наши хвостатые друзья, существует такой паттерн как Lazy Loading, который позволяет экономить ресурсы, инициализируя объекты только тогда, когда они действительно нужны.
Читать далее
#гайд
🤔🤔 Как сделать пароль менеджер
Для хранения паролей будет использоваться файл формата xml, который будет шифроваться методом AES-256 и храниться в облаке. В качестве облака был выбран сервис «Яндекс диск».
Основной процесс — это загрузка файла с паролями из облака, затем загрузка файла в оперативную память, его расшифровка и вывод паролей в интерфейс пользователю. По завершению работы с паролями, в оперативной памяти формируется XML-структура с паролями, которая шифруется и сохраняется в файл. Затем этот файл загружается в облако.
Продолжение тут
#гайд
Для хранения паролей будет использоваться файл формата xml, который будет шифроваться методом AES-256 и храниться в облаке. В качестве облака был выбран сервис «Яндекс диск».
Основной процесс — это загрузка файла с паролями из облака, затем загрузка файла в оперативную память, его расшифровка и вывод паролей в интерфейс пользователю. По завершению работы с паролями, в оперативной памяти формируется XML-структура с паролями, которая шифруется и сохраняется в файл. Затем этот файл загружается в облако.
Продолжение тут
#гайд
💥💥 Как шаблонный метод может сломать ваш Java код
ООП — это замечательно. За несоблюдение этой парадигмы принято ругать, а знание паттернов зачастую является обязательным. Но даже правильный подход не страхует полностью от ошибок. О том, как сломать программу при помощи обычного шаблонного метода, узнаете в статье.
Читать
#гайд
ООП — это замечательно. За несоблюдение этой парадигмы принято ругать, а знание паттернов зачастую является обязательным. Но даже правильный подход не страхует полностью от ошибок. О том, как сломать программу при помощи обычного шаблонного метода, узнаете в статье.
Читать
#гайд
🚧🚧 Тестирование асинхронного контракта Spring Boot приложения (Kafka Consumer+Producer)
Как написать интеграционный\сервисный\авто тест для Spring Boot приложения, которое взаимодействует с внешним миром исключительно с помощью Kafka. Сначала автор разбирает проблему, а затем поэтапно развивает тесты, чтобы привести их к состоянию defenition-of-done.
Читать статью
#гайд
Как написать интеграционный\сервисный\авто тест для Spring Boot приложения, которое взаимодействует с внешним миром исключительно с помощью Kafka. Сначала автор разбирает проблему, а затем поэтапно развивает тесты, чтобы привести их к состоянию defenition-of-done.
Читать статью
#гайд
🤷🤷 Умножение Монтгомери
Деление целых чисел — это долго и сложно. Вычислять остаток от деления — нисколько не проще. При этом в спортивном программировании, да и в прикладной математике типа криптографии, задача умножения чисел по модулю встречается повсеместно.
Один из вариантов эффективного решения — умножать по модулю, вообще при этом не используя операции деления, с помощью алгоритма Монтгомери.
Продолжение тут
#гайд
Деление целых чисел — это долго и сложно. Вычислять остаток от деления — нисколько не проще. При этом в спортивном программировании, да и в прикладной математике типа криптографии, задача умножения чисел по модулю встречается повсеместно.
Один из вариантов эффективного решения — умножать по модулю, вообще при этом не используя операции деления, с помощью алгоритма Монтгомери.
Продолжение тут
#гайд