Мессенджеры на работе — это не прокрастинация, или как мы сделали сервис для автотестирования
Однажды у нас появилась идея отправлять отчеты о выполнении автотестов в мессенджер Telegram. Постепенно эта идея переросла в сервис, который который позволяет запускать тесты, оповещать об ошибках и получать отчеты в любом мессенджере, где есть возможность интегрировать бота. Помимо доступа к результатам автотестов, бот получил интеграцию с Jira и другими инструментами, которые мы используем в РТЛабс.
В данной серии статей мы хотим рассказать нашу историю о том, с чего все начиналось, какие у нас были идеи, какие ошибки мы совершали и как мы их решили в итоговой реализации.
Читать статью
Однажды у нас появилась идея отправлять отчеты о выполнении автотестов в мессенджер Telegram. Постепенно эта идея переросла в сервис, который который позволяет запускать тесты, оповещать об ошибках и получать отчеты в любом мессенджере, где есть возможность интегрировать бота. Помимо доступа к результатам автотестов, бот получил интеграцию с Jira и другими инструментами, которые мы используем в РТЛабс.
В данной серии статей мы хотим рассказать нашу историю о том, с чего все начиналось, какие у нас были идеи, какие ошибки мы совершали и как мы их решили в итоговой реализации.
Читать статью
Telegraph
Мессенджеры на работе — это не прокрастинация, или как мы сделали сервис для автотестирования
Однажды у нас появилась идея отправлять отчеты о выполнении автотестов в мессенджер Telegram. Постепенно эта идея переросла в сервис, который который позволяет запускать тесты, оповещать об ошибках и получать отчеты в любом мессенджере, где есть возможность…
👍3🔥1
Как написать на Java функцию, подобную sizeof в C
Если вы только начинаете изучать Java и уже имеете опыт программирования на С, то можете заметить разницу между этими двумя языками. К примеру, String — это объект в Java, а не массив символов с конечным NULL. Аналогично, в Java нет оператора sizeof(). Все примитивы имеют заранее определенный размер, например int — 4 байта, char — 2 байта, short — 2 байта, long и float — 8 байт и так далее.
Читать статью
Если вы только начинаете изучать Java и уже имеете опыт программирования на С, то можете заметить разницу между этими двумя языками. К примеру, String — это объект в Java, а не массив символов с конечным NULL. Аналогично, в Java нет оператора sizeof(). Все примитивы имеют заранее определенный размер, например int — 4 байта, char — 2 байта, short — 2 байта, long и float — 8 байт и так далее.
Читать статью
Telegraph
Как написать на Java функцию, подобную sizeof в C
Если вы только начинаете изучать Java и уже имеете опыт программирования на С, то можете заметить разницу между этими двумя языками. К примеру, String — это объект в Java, а не массив символов с конечным NULL. Аналогично, в Java нет оператора sizeof(). Все…
👍2❤1
Hibernate: заполняем пробелы
Я не гуру разработки и не читал книжку по Hibernate на 800 страниц. Я просто любознательный малый, который решил немного хлебнуть из бездонной бочки знаний по разработке на Java. Эта статья рассчитана на Junior разработчиков, которые хотят заполнить пробелы по Hibernate. Если это будут читать более опытные разработчики: напишите замечания по техническому наполнению статьи. Буду вам очень признателен. Со вступлением все. Поехали)
Читать статью
Я не гуру разработки и не читал книжку по Hibernate на 800 страниц. Я просто любознательный малый, который решил немного хлебнуть из бездонной бочки знаний по разработке на Java. Эта статья рассчитана на Junior разработчиков, которые хотят заполнить пробелы по Hibernate. Если это будут читать более опытные разработчики: напишите замечания по техническому наполнению статьи. Буду вам очень признателен. Со вступлением все. Поехали)
Читать статью
Telegraph
Hibernate: заполняем пробелы
Я не гуру разработки и не читал книжку по Hibernate на 800 страниц. Я просто любознательный малый, который решил немного хлебнуть из бездонной бочки знаний по разработке на Java. Эта статья рассчитана на Junior разработчиков, которые хотят заполнить пробелы…
👍5
Telegram-бот счётчик сообщений на Java и Spring Boot
В этой статье я покажу, как написать Telegram-бот на Java с использованием Spring Boot, PostgreSQL и JPA. Также создадим исполняемый jar-файл. Сам же бот будет подсчитывать сообщения от пользователей и записывать эти данные в БД.
Читать статью
В этой статье я покажу, как написать Telegram-бот на Java с использованием Spring Boot, PostgreSQL и JPA. Также создадим исполняемый jar-файл. Сам же бот будет подсчитывать сообщения от пользователей и записывать эти данные в БД.
Читать статью
Telegraph
Telegram-бот счётчик сообщений на Java и Spring Boot
В этой статье я покажу, как написать Telegram-бот на Java с использованием Spring Boot, PostgreSQL и JPA. Также создадим исполняемый jar-файл. Сам же бот будет подсчитывать сообщения от пользователей и записывать эти данные в БД. Создаём Spring проект на…
👍6
🧠 Учитесь программировать на курсе Java-разработчик с трудоустройством. Вы пройдёте путь от новичка до junior-специалиста и сможете зарабатывать до 100 000 рублей уже в начале карьеры.
Вы с нуля освоите Java, SQL, Spring и Git. Создадите поисковый движок для портфолио и разработаете backend-составляющую для книжного интернет-магазина — аналога ЛитРес.
Бонусы для участников курса:
✅ первые 6 месяцев — бесплатно;
✅ новая работа уже через 8 месяцев
✅ удобная рассрочка и скидка;
✅ гарантия трудоустройства от Центра карьеры Skillbox. Если вы не выйдете на работу, мы вернём вам деньги за курс;
✅ год бесплатного английского.
Узнать подробнее о курсе и получить специальную скидку можно здесь: https://epic.st/cKniM
☃️🎁Начните год с новых знаний! Новогодняя скидка до 60% и второй курс в подарок!
Реклама. ЧОУ ДПО «Образовательные технологии «Скилбокс (Коробка навыков)», ИНН: 9704088880
Вы с нуля освоите Java, SQL, Spring и Git. Создадите поисковый движок для портфолио и разработаете backend-составляющую для книжного интернет-магазина — аналога ЛитРес.
Бонусы для участников курса:
✅ первые 6 месяцев — бесплатно;
✅ новая работа уже через 8 месяцев
✅ удобная рассрочка и скидка;
✅ гарантия трудоустройства от Центра карьеры Skillbox. Если вы не выйдете на работу, мы вернём вам деньги за курс;
✅ год бесплатного английского.
Узнать подробнее о курсе и получить специальную скидку можно здесь: https://epic.st/cKniM
☃️🎁Начните год с новых знаний! Новогодняя скидка до 60% и второй курс в подарок!
Реклама. ЧОУ ДПО «Образовательные технологии «Скилбокс (Коробка навыков)», ИНН: 9704088880
👍2
Создаем базовый репозиторий на основе Spring Data JPA
Сегодня мы разберемся в том, как создать свой собственный базовый репозиторий, который вы cможете настроить под каждый объект вашей сущности. 😳
Поможет в этом деле Thorben Janssen, известный эксперт в Spring Data JPA.
Приятного чтения!
Читать статью
Сегодня мы разберемся в том, как создать свой собственный базовый репозиторий, который вы cможете настроить под каждый объект вашей сущности. 😳
Поможет в этом деле Thorben Janssen, известный эксперт в Spring Data JPA.
Приятного чтения!
Читать статью
👍3
Пишем Java REST API на основе Spring Boot
Предложенное сегодня руководство научит вас создавать безопасные REST API с защитой на основе OAuth 2.0 и JWT аутентификацией, а также упаковывать результат в нативные образы Spring Boot. 😳
Хорошей практики!
Читать статью
Предложенное сегодня руководство научит вас создавать безопасные REST API с защитой на основе OAuth 2.0 и JWT аутентификацией, а также упаковывать результат в нативные образы Spring Boot. 😳
Хорошей практики!
Читать статью
👍3
Присоединяйтесь к нашему бесплатному курсу и начните увлекательное путешествие в мир Java!
Изучайте основы, создавайте программы, разбирайтесь с методами и анализируйте ошибки в коде. Практика, упражнения и проверочные тесты помогут вам освоить навыки программирования.
🎓 Чему вы научитесь:
— Создавать программы с использованием основных конструкций языка.
— Разделять код на методы для повторного использования.
— Анализировать ошибки в коде с использованием отладочной печати.
💼 Включено в курс:
29 уроков (видео и/или текст), 35 упражнений в тренажере, 95 проверочных тестов + дополнительные материалы.
Вы с нами?😉
Реклама. АНПОО "ХЕКСЛЕТ КОЛЛЕДЖ". ИНН 7839056670.
Изучайте основы, создавайте программы, разбирайтесь с методами и анализируйте ошибки в коде. Практика, упражнения и проверочные тесты помогут вам освоить навыки программирования.
🎓 Чему вы научитесь:
— Создавать программы с использованием основных конструкций языка.
— Разделять код на методы для повторного использования.
— Анализировать ошибки в коде с использованием отладочной печати.
💼 Включено в курс:
29 уроков (видео и/или текст), 35 упражнений в тренажере, 95 проверочных тестов + дополнительные материалы.
Вы с нами?😉
Реклама. АНПОО "ХЕКСЛЕТ КОЛЛЕДЖ". ИНН 7839056670.
👍3
Обнаружение и предотвращение утечек памяти в Java
Несмотря на наличие в Java надежной автоматической сборки мусора, утечки памяти в этом языке остаются сложной проблемой для разработчиков. Такие утечки происходят, когда объекты больше не нужны приложению, но на них по-прежнему ссылаются другие объекты, что не позволяет сборщику мусора освободить занимаемую ими память. Со временем это может привести к значительному снижению производительности приложения и даже к его аварийному завершению из-за исключения OutOfMemoryError. Цель данной статьи — разобраться в тонкостях утечек памяти в Java, изучить методы их обнаружения и стратегии предотвращения.
Читать статью
Несмотря на наличие в Java надежной автоматической сборки мусора, утечки памяти в этом языке остаются сложной проблемой для разработчиков. Такие утечки происходят, когда объекты больше не нужны приложению, но на них по-прежнему ссылаются другие объекты, что не позволяет сборщику мусора освободить занимаемую ими память. Со временем это может привести к значительному снижению производительности приложения и даже к его аварийному завершению из-за исключения OutOfMemoryError. Цель данной статьи — разобраться в тонкостях утечек памяти в Java, изучить методы их обнаружения и стратегии предотвращения.
Читать статью
Teletype
Обнаружение и предотвращение утечек памяти в Java
Несмотря на наличие в Java надежной автоматической сборки мусора, утечки памяти в этом языке остаются сложной проблемой для...
👍6🔥2
Java-разработчики, вас зовут в Тинькофф
Участвуйте в Java Weekend Offer, если ваш опыт больше 3 лет. Пройдите все этапы собеседования за выходные и, если все понравится, получите оффер.
Сможете решать сложные задачи, расти в сильной команде, работать на топовом стеке и пользоваться бенефитами.
Выбирайте удобную дату и пробуйте свои силы. Оставьте заявку до 14 февраля
АО «Тинькофф Банк», ИНН 7710140679
Участвуйте в Java Weekend Offer, если ваш опыт больше 3 лет. Пройдите все этапы собеседования за выходные и, если все понравится, получите оффер.
Сможете решать сложные задачи, расти в сильной команде, работать на топовом стеке и пользоваться бенефитами.
Выбирайте удобную дату и пробуйте свои силы. Оставьте заявку до 14 февраля
АО «Тинькофф Банк», ИНН 7710140679
👍4😢1
Особое мнение: смотрим на нагрузочные тесты как на функциональные
Что делать, если у команды появилась потребность регулярно оценивать производительность приложения и в динамике сравнивать быстродействие с прошлыми прогонами, а внедрять для этого решение enterprise-уровня - это как из пушки по воробьям? Мы решили пойти немного неочевидным, но продуктивным путём, воспользовавшись опытом реализации функциональных тестов и их интеграции в систему CI/CD, ведь, в сущности, почему нужно обязательно смотреть на тестирование производительности, как на что-то особенное? Что из этого получилось, и с какими проблемами при этом пока ещё приходится мириться - читайте в статье.
Читать статью
Что делать, если у команды появилась потребность регулярно оценивать производительность приложения и в динамике сравнивать быстродействие с прошлыми прогонами, а внедрять для этого решение enterprise-уровня - это как из пушки по воробьям? Мы решили пойти немного неочевидным, но продуктивным путём, воспользовавшись опытом реализации функциональных тестов и их интеграции в систему CI/CD, ведь, в сущности, почему нужно обязательно смотреть на тестирование производительности, как на что-то особенное? Что из этого получилось, и с какими проблемами при этом пока ещё приходится мириться - читайте в статье.
Читать статью
Telegraph
Особое мнение: смотрим на нагрузочные тесты как на функциональные
Всем привет! В команде Мир Plat.Form я занимаюсь системами сертификации эмиссии – наш отдел разрабатывает программные продукты для внутренних и внешних пользователей, автоматизирующие сертификацию всего, что в конечном итоге превращается в «кредитку» в вашем…
👍5
Как пройти собеседование в компанию мечты? ☄️
26 января проведем техническое собеседование на позицию Senior Java Developer в «Цифровые Привычки», 350.000₽+
В прямом эфире:
А после эфира поделимся чек-листом, который поможет учесть все требования 2024 года при подготовке к собеседованию.
Интервьюер – Роберт Мазипов. Java Architect с опытом программирования на Java 4 года. Преподаватель на курсе Senior Java Developer.
Больше — в прямом эфире!
Регистрация по ссылке: https://clck.ru/38B5X8
Реклама. ООО "Платформа непрерывного обучения" ИНН 7839405924
erid: 2VtzqwGuWD4
26 января проведем техническое собеседование на позицию Senior Java Developer в «Цифровые Привычки», 350.000₽+
В прямом эфире:
• Разберем реальное CV; • Обсудим, на что обращают внимание рекрутеры, а на что — интервьюеры; • Расскажем о частых ошибках на собеседовании и как не допустить их.А после эфира поделимся чек-листом, который поможет учесть все требования 2024 года при подготовке к собеседованию.
Интервьюер – Роберт Мазипов. Java Architect с опытом программирования на Java 4 года. Преподаватель на курсе Senior Java Developer.
Больше — в прямом эфире!
Регистрация по ссылке: https://clck.ru/38B5X8
Реклама. ООО "Платформа непрерывного обучения" ИНН 7839405924
erid: 2VtzqwGuWD4
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍1😁1😢1
Конфигурирование пула соедининений JDBC в Hibernate
Возможно, вы не знаете, но Hibernate поддерживает пул соединений JDBC. 😳
Предложенная сегодня статья расскажет о том, как сконфигурировать пул соединений JDBC в Hibernate-приложении, а также в нативном Hibernate-приложении.
Приятного чтения!
Читать статью
Возможно, вы не знаете, но Hibernate поддерживает пул соединений JDBC. 😳
Предложенная сегодня статья расскажет о том, как сконфигурировать пул соединений JDBC в Hibernate-приложении, а также в нативном Hibernate-приложении.
Приятного чтения!
Читать статью
👍6
SDKMan! - менеджер управления версиями Java
Каждый Java-разработчик рано или поздно сталкивается с проблемой управления на своем компьютере несколькими версиями Java, когда для одного проекта требуется Java 8, для другого — Java 11, для третьего — Java 17.
Для упрощения процесса переключения между версиями существует менеджер версий SDKMan!
Подробности в статье.
Читать статью
Каждый Java-разработчик рано или поздно сталкивается с проблемой управления на своем компьютере несколькими версиями Java, когда для одного проекта требуется Java 8, для другого — Java 11, для третьего — Java 17.
Для упрощения процесса переключения между версиями существует менеджер версий SDKMan!
Подробности в статье.
Читать статью
👍4
Кэширование контекста Spring между запусками тестов: как ускорить процесс локального тестирования
Тестирование является важным элементом процесса разработки программного обеспечения. При этом работа с тестами может занимать достаточно большое количество времени в сравнении с самой разработкой, в связи с этим возникает необходимость оптимизировать этот процесс. В этой статье рассказывается про плагин Sprinter для IntelliJ IDEA, который может помочь значительно сократить время на локальный запуск тестов.
Читать статью
Тестирование является важным элементом процесса разработки программного обеспечения. При этом работа с тестами может занимать достаточно большое количество времени в сравнении с самой разработкой, в связи с этим возникает необходимость оптимизировать этот процесс. В этой статье рассказывается про плагин Sprinter для IntelliJ IDEA, который может помочь значительно сократить время на локальный запуск тестов.
Читать статью
Teletype
Кэширование контекста Spring между запусками тестов: как ускорить процесс локального тестирования
Тестирование является важным элементом процесса разработки программного обеспечения. При этом работа с тестами может занимать достаточно...
👍4🔥4
Как узнать, допускает ли изменения коллекция в Java?
Пишу эту статью, чтобы помочь Java-разработчикам понять, почему необходимо различать интерфейсы изменяемых (mutable) и неизменяемых (immutable) коллекций. Java — на редкость эффективный язык программирования с почти 30-летней историей. Java Collections Framework (JCF) — одна из наиболее активно используемых частей стандартной библиотеки Java — сыграл важную роль в успешном развитии языка. Сегодня Java продолжает совершенствоваться в соответствии с новыми требованиями, оставаясь в ряду лучших языков программирования. Однако, как и во многих других начинаниях, прошлые успехи не являются гарантией будущих достижений.
Читать статью
Пишу эту статью, чтобы помочь Java-разработчикам понять, почему необходимо различать интерфейсы изменяемых (mutable) и неизменяемых (immutable) коллекций. Java — на редкость эффективный язык программирования с почти 30-летней историей. Java Collections Framework (JCF) — одна из наиболее активно используемых частей стандартной библиотеки Java — сыграл важную роль в успешном развитии языка. Сегодня Java продолжает совершенствоваться в соответствии с новыми требованиями, оставаясь в ряду лучших языков программирования. Однако, как и во многих других начинаниях, прошлые успехи не являются гарантией будущих достижений.
Читать статью
Teletype
Как узнать, допускает ли изменения коллекция в Java?
Пишу эту статью, чтобы помочь Java-разработчикам понять, почему необходимо различать интерфейсы изменяемых (mutable) и неизменяемых...
👍5
Microservices | Вопросы с Собеседований
- Подборка вопросов по микросервисной архитектуре с реальных собеседований
- Авторские статьи по архитектуре, проектированию, базам данных
- Автор - Lead Developer с 8 лет опыта на Java/Kotlin
- Подборка вопросов по микросервисной архитектуре с реальных собеседований
- Авторские статьи по архитектуре, проектированию, базам данных
- Автор - Lead Developer с 8 лет опыта на Java/Kotlin
👍4
Не используйте в своем коде паттерн Singleton
Паттерн Singleton популярен среди новичков из-за простоты реализации и возможности глобальной обработки состояний. Но стоит ли его использовать? Из статьи вы узнаете про недостатки Singleton, а также про альтернативу, способную его заменить.
Читать статью
Паттерн Singleton популярен среди новичков из-за простоты реализации и возможности глобальной обработки состояний. Но стоит ли его использовать? Из статьи вы узнаете про недостатки Singleton, а также про альтернативу, способную его заменить.
Читать статью
👍6
Аннотации и рефлексия в Java
Аннотации и рефлексия являются ключевыми концепциями в Java, предоставляя разработчикам мощные инструменты для создания более гибких, адаптивных и понятных приложений. Аннотации предоставляют способ добавить метаданные к классам, методам и полям, что позволяет компилятору и другим инструментам анализировать код более глубоко. Рефлексия, с другой стороны, позволяет программам анализировать и модифицировать свой собственный состав и поведение во время выполнения.
Читать статью
Аннотации и рефлексия являются ключевыми концепциями в Java, предоставляя разработчикам мощные инструменты для создания более гибких, адаптивных и понятных приложений. Аннотации предоставляют способ добавить метаданные к классам, методам и полям, что позволяет компилятору и другим инструментам анализировать код более глубоко. Рефлексия, с другой стороны, позволяет программам анализировать и модифицировать свой собственный состав и поведение во время выполнения.
Читать статью
Teletype
Аннотации и рефлексия в Java
Аннотации и рефлексия являются ключевыми концепциями в Java, предоставляя разработчикам мощные инструменты для создания более гибких...
👍5
Записывайтесь на бесплатный мини-курс по Java-разработке: научим писать Telegram-ботов, программу для обработки данных и чат на фреймворке Spring.
Получите доступ к занятиям за пару кликов: 👉 https://epic.st/ueo5_
— Формат мини-курса отлично подойдёт для обучения из любой точки мира. Смотрите видео в удобное время, а после выполняйте практические задания. В конце вас ждёт прямой эфир с экспертом, где он поделится профессиональными секретами, разберёт работы участников и ответит на вопросы.
🔔 Спикер — Даниил Пилипенко, основатель и директор центра подбора IT-специалистов SymbioWay. 19 лет работает в сфере Java и веб-разработки. Он ответит на вопросы о профессии, пройденном материале и практических работах.
🎁 За время обучения вы получите 5 полезных материалов в подарок, сертификат на скидку 10 000 рублей на любой курс, персональную карьерную консультацию и доступ к изучению английского языка в Skillbox на год.
До встречи на мини-курсе. Старт после регистрации!
Реклама. ЧОУ ДПО «Образовательные технологии «Скилбокс (Коробка навыков)», ИНН: 9704088880
Получите доступ к занятиям за пару кликов: 👉 https://epic.st/ueo5_
— Формат мини-курса отлично подойдёт для обучения из любой точки мира. Смотрите видео в удобное время, а после выполняйте практические задания. В конце вас ждёт прямой эфир с экспертом, где он поделится профессиональными секретами, разберёт работы участников и ответит на вопросы.
🔔 Спикер — Даниил Пилипенко, основатель и директор центра подбора IT-специалистов SymbioWay. 19 лет работает в сфере Java и веб-разработки. Он ответит на вопросы о профессии, пройденном материале и практических работах.
🎁 За время обучения вы получите 5 полезных материалов в подарок, сертификат на скидку 10 000 рублей на любой курс, персональную карьерную консультацию и доступ к изучению английского языка в Skillbox на год.
До встречи на мини-курсе. Старт после регистрации!
Реклама. ЧОУ ДПО «Образовательные технологии «Скилбокс (Коробка навыков)», ИНН: 9704088880
👍5
Пишем минимальный ActivityPub-сервер с нуля
В последнее время, на фоне покупки Twitter Илоном Маском, люди начали искать ему альтернативы — и многие нашли такую альтернативу в Mastodon.
Mastodon — это децентрализованная социальная сеть, работающая по модели федерации, как email. Протокол федерации называется ActivityPub и является стандартом W3C, а Mastodon — далеко не единственная его реализация, но самая популярная. Различные реализации протокола, как правило, совместимы друг с другом, настолько, насколько им позволяют их совпадения в функциональности. У меня есть и мой собственный проект ActivityPub-сервера — Smithereen, такой зелёный децентрализованный ВК, где я когда-нибудь таки верну стену.
В этой статье мы рассмотрим основы протокола ActivityPub и напишем минимально возможную реализацию сервера, позволяющую отправлять посты в сеть («fediverse»), подписываться на других пользователей и получать от них обновления.
Читать статью
В последнее время, на фоне покупки Twitter Илоном Маском, люди начали искать ему альтернативы — и многие нашли такую альтернативу в Mastodon.
Mastodon — это децентрализованная социальная сеть, работающая по модели федерации, как email. Протокол федерации называется ActivityPub и является стандартом W3C, а Mastodon — далеко не единственная его реализация, но самая популярная. Различные реализации протокола, как правило, совместимы друг с другом, настолько, насколько им позволяют их совпадения в функциональности. У меня есть и мой собственный проект ActivityPub-сервера — Smithereen, такой зелёный децентрализованный ВК, где я когда-нибудь таки верну стену.
В этой статье мы рассмотрим основы протокола ActivityPub и напишем минимально возможную реализацию сервера, позволяющую отправлять посты в сеть («fediverse»), подписываться на других пользователей и получать от них обновления.
Читать статью
Teletype
Пишем минимальный ActivityPub-сервер с нуля
В последнее время, на фоне покупки Twitter Илоном Маском, люди начали искать ему альтернативы — и многие нашли такую альтернативу...
👍5🔥2