10986
📚 Лайфхаки, приёмы и лучшие практики для Java-разработчиков. Всё, что ускорит код и прокачает навыки. Java, Spring, Maven, Hibernate. По всем вопросам @evgenycarter РКН clck.ru/3KoGeP
Шаблоны проектирования на языке Java
Введение в курс
Введение в ООП
Введение в шаблоны проектирования
Шаблоны Java. FactoryMethod (Фабричный метод)
Шаблоны Java. AbstractFactory (Абcтрактная фабрика)
Шаблоны Java. Singleton (Одиночка)
Шаблоны Java. Builder (Строитель)
Шаблоны Java. Prototype (Прототип)
Шаблоны Java. Creational patterns (Порождающие шаблоны. Заключение).
Шаблоны Java. Adapter (Адаптер)
Шаблоны Java. Bridge (Мост)
Шаблоны Java. Composite (Компоновщик)
Шаблоны Java. Decorator (Декоратор)
Шаблоны Java. Facade (Фасад)
Шаблоны Java. Flyweight (Приспособленец).
Шаблоны Java. Proxy (Прокси)
Шаблоны Java. Structural patterns (Структурные шаблоны. Заключение).
Шаблоны Java. Chain of Responsibility (Цепочка ответственности).
Шаблоны Java. Command (Команда).
Шаблоны Java. Interpreter (Интерпретатор).
Шаблоны Java. Iterator (Итератор).
Шаблоны Java. Mediator (Посредник)
Шаблоны Java. Memento (Хранитель)
Шаблоны Java. Observer (Наблюдатель)
Шаблоны Java. State (Состояние)
Шаблоны Java. Strategy (Стратегия)
Шаблоны Java. Template method (Шаблонный метод)
Шаблоны Java. Visitor (Посетитель)
Шаблоны Java. Conclusion (Заключение)
Полный курс на youtube
👉@BookJava
Настройка и мониторинг Java приложений
За годы работы у нас сформировался определенный опыт диагностики и решения проблем, связанные с производительностью наших Java-приложений. В этой статье я опишу причины торможения, с которыми приходилось столкнуться, и возможные пути их исправления. Также опишу основные настройки, которые мы делаем, и ресурсы сервера, которые использует приложение.
Речь пойдет о бизнес-приложениях с одним сервером Java-приложения и одним сервером базы данных PostgreSQL, в каждом из которых одновременно работают от 500 до 2000 сотрудников компании. Приложения разработаны на базе открытой и бесплатной платформы lsFusion (пример приложения), но большинство описанных проблем и настроек не являются специфическими именно для нее.
https://habr.com/ru/companies/lsfusion/articles/741978/
👉@BookJava
Что означает CAP-теорема?
CAP-теорема, также известная как теорема Брюэра, является концептуальной основой для понимания распределенных систем.
Она была предложена в 2000 году Эриком Брюэром и формулирует три фундаментальных свойства, которые невозможно обеспечить одновременно в распределенной системе данных:
— Согласованность (Consistency);
— Доступность (Availability);
— Устойчивость к разделению (Partition tolerance).
Согласно CAP-теореме, в распределенной системе данных можно гарантировать только два из трех свойств:
— Согласованность и доступность (CA);
— Согласованность и устойчивость к разделению (CP);
— Доступность и устойчивость к разделению (AP).
Выбор между этими свойствами зависит от требований и характеристик конкретной системы и ее целей.
👉@BookJava
☕ Дорожная карта web-разработчика Java
https://roadmap.sh/java
👉@BookJava
🚀 Уже через две недели состоится старт нового потока онлайн-курса "Java Developer. Professional".
🎉 Самый первый курс в OTUS, 30-й юбилейный запуск!!!🎉
В новом потоке вас ждет много нового, помимо изучения углубленных инструментов работы с Java, мы расскажем вам:
➡️ об особенностях создания безопасного веб-приложения на Java;
➡️ о настройке https в веб приложениях;
➡️ поговорим о написании чистого кода и рефакторинга;
➡️ разберем troubleshooting и debugging в Java приложениях.
❌📊Какие еще преимущества у нашей программы?
🔵мы учим писать clean code;
🔵 разбираем сложные кейсы, с которыми вы можете столкнуться в работе;
🔵 проводим сode-review также, как это делается в крупных промышленных проектах;
🔵преподаватели с опытом работы в крупных российских и международных компаниях.
🔥 Программа курса всегда актуальна.
➡️ Пройдите вступительный тест и присоединяйтесь к группе: https://otus.pw/VlGLx/ Нативная интеграция. Информация о продукте www.otus.ru
Неполное руководство по современным идиомам I/O (ввода-вывода) в Java
https://horstmann.com/unblog/2023-04-09/index.html
👉@BookJava
Курс «Английский для разработчиков» Яндекс Практикума
Для тех, кто хочет изменить свою профессиональную жизнь и работать в международной команде.
Обучение построено не вокруг абстрактной теории, а вокруг рабочих ситуаций и полезных для карьеры навыков:
✋Стендапы. Подготовитесь обсуждать задачи, задавать вопросы и просить о помощи.
👨💻 Работа с заказчиками. Научитесь презентовать решения, говорить про баги и фичи.
📣 Митапы. Сможете понимать на слух доклады и выступать сами.
😎 Собеседования. Научитесь рассказывать про свой опыт, понимать вопросы и тактично переспрашивать.
👯 Неформальное общение с коллегами. Сможете рассказать о своих интересах, опыте, планах на будущее.
💻 Код-ревью. Сможете описать сделанное, дать обратную связь, тактично отстоять своё мнение.
Запишитесь на бесплатную консультацию. Кураторы определят ваш уровень языка и расскажут подробнее про обучение.
Лучшие практики Spring Boot для разработчиков
Spring Boot - это широко используемый и очень популярный высокопроизводительный фреймворк корпоративного уровня. Здесь приведены некоторые лучшие практики и несколько советов, которые можно использовать для улучшения приложения Spring Boot и повышения его эффективности. Эта статья будет немного длиннее, и для ее полного прочтения потребуется некоторое время.
raviyasas/spring-boot-best-practices-for-developers-3f3bdffa0090" rel="nofollow">https://medium.com/@raviyasas/spring-boot-best-practices-for-developers-3f3bdffa0090
👉@BookJava
Настраиваем память JVM-приложения в Kubernetes
Друзья, всем привет! Как известно, в Kubernetes у каждого pod’а есть ограничение на использование памяти (limits.memory), и, как показывает опыт, далеко не всегда очевидно, как JVM-приложение интерпретирует эту настройку, что порой может приводить к OOMKill.
Я хотел бы поделиться одним из способов настройки памяти для Java-приложений в Kubernetes. Сразу скажу, что итоговые настройки, к которым мы придём, будут приведены лишь в качестве примера и должны настраиваться индивидуально под каждое приложение. Рассматривать будем настройки и метрики обычного микросервиса на Spring boot, интегрированного со Spring Boot Admin (далее просто SBA).
https://habr.com/ru/companies/domclick/articles/691240/
👉@BookJava
Java Hashtable, HashMap, ConcurrentHashMap - влияние на производительность
Существует большое количество статей, в которых сформулированы функциональные различия между HashMap, HashTable и ConcurrentHashMap. В этой заметке на практических примерах сравнивается производительность этих структур данных. Если у вас не хватит терпения прочитать всю статью, то вот краткое содержание: Если вы стоите перед выбором, что использовать: HashMap, HashTable или ConcurrentHashMap, то лучше остановиться на ConcurrentHashMap, поскольку ее реализация потокобезопасна, без ущерба для производительности.
https://blog.gceasy.io/2022/04/22/java-hashtable-hashmap-concurrenthashmap-performance-impact/
👉@BookJava
Spring Boot Tutorial | Полный курс [2023]
В этом учебном пособии по Spring Boot рассказывается о том, как начать работу с Spring Boot и Java.
00:00 Intro
01:00 Quick Word
02:12 Spring Boot Overview
03:44 Project Overview
04:28 Spring Initializr
08:05 IntelliJ
10:29 Starting The Server
14:03 Simple API with Spring Boot
18:06 Student Class
23:19 API Layer
26:38 Business Layer
29:08 Dependency Injection
32:47 Properties file
36:15 Creating and Connecting to Database
39:48 JPA and @ Entity
42:35 JPA in Action
45:52 Amigoscode Database Courses
47:35 JPA Repository
52:20 Saving Students
58:49 @ Transient
01:03:01 Post Mapping
01:08:00 Writing Business Logic
01:12:43 Testing Post Request
01:15:35 Deleting Students
01:21:33 Exercise
01:22:53 Solution
01:26:54 Testing
01:29:41 Packaging and Running Application
01:34:52 Next steps
источник
👉@BookJava
Docker Compose и Spring Boot 3.1
Наверняка вам приходилось запускать разрабатываемое приложение для какого-то ручного тестирования разрабатываемых функций. А для этого, как правило, нужно некоторое окружение: базы данных, серверы кэша, брокеры очередей сообщений и т.д.
И чтобы не разворачивать это всё вручную, можно использовать контейнеры, а разработчики Spring Boot предлагают интеграцию Spring Boot и Docker Compose, благодаря которой использование контейнеров требует минимум кода.
источник
👉@BookJava
Oracle DevLive Level Up - Java Developer Day
Java 20: Reviewing the Enhancements in the Latest JDK Release
Java Language Futures, Spring 2023 Edition
Troubleshooting Native Memory Issues in Java Applications
Continuous Monitoring with JDK Flight Recorder
Java First. Java Always. | DevLive Level Up Keynote
источник
👉@BookJava
Oracle DevLive Level Up - Java Developer Day
Java Management Service - Managing Your Java Estate Just Got Easier
OpenJDK - Change the Future of Java
Java Virtual Threads
Building High Performance Microservices for Java with Micronaut & GraalVM
Moving the Java Community Forward
GraalVM Native Image — Faster, Smarter, Leaner
Z Garbage Collector: The Next Generation
JavaFX 20 and Beyond
Helidon - Microservices on Modern Java
Evolving the Security of the Java Platform
источник
👉@BookJava
⚡ Отус, приглашает 14 августа в 19:00 по мск, на бесплатный вебинар “Применимость Kotlin в различных направлениях разработки: Multimedia, ML, 3D/VR, Frontend, IoT/Robotics, Blockchain”, онлайн-курса «Kotlin Backend Developer. Professional».
✅ На вебинаре мы рассмотрим, как экосистема Kotlin может быть использована для создания программных продуктов в разных направлениях IT. Среди них: разработка фронтенда, работа с мультимедиа, машинное обучение, программирование роботов и создание 3D приложений.
➡️ Записаться на вебинар: https://otus.pw/gfnz/
Вебинар будет интересен всем, кто заинтересован в изучении Kotlin или хочет узнать больше об этой экосистеме. Если вы уже являетесь разработчиком на Kotlin, то сможете узнать новые инструменты и технологии для решения задач в других областях.
Нативная интеграция. Информация о продукте www.otus.ru
🦾 Освойте востребованный фреймворк всего за 5 месяцев и создавайте приложения на Java
🔥🔝 Знание Spring Framework – один из самых востребованных скиллов для разработчика, многие крупные проекты ищут именно таких специалистов на самые желанные офферы.
5️⃣ Вместе с OTUS вы можете освоить Spring всего за 5 месяцев в рамках курса «Разработчик на Spring Framework»!
❌❌Что даст вам этот курс:
- Умение эффективно работать в проектах, где есть Spring
- Знание современных возможностей Spring
- Понимание, как создавать Web-приложения на микросервисной архитектуре и решать высокоуровневые задачи по разработке
- Умение быстро проходить путь от идеи до production-grade
- Владение фреймворками Spring и технологиями вспомогательных проектов (Spring MVC, Spring Security, Spring Boot, Spring Reactive Stack, Spring 5)
🟠Курс доступен для приобретения в рассрочку!
➡️ Пройдите бесплатное вступительное тестирование прямо сейчас и узнайте, готовы ли вы стать студентом: https://otus.pw/oj5A/ Нативная интеграция. Информация о продукте www.otus.ru
Java-разработчикам с опытом от трёх лет.
Тинькофф запускает Scala & Java Weekend Offer. Это когда вы проходите собеседование за выходные и можете сразу получить оффер.
Сравните скиллы с требованиями и оставьте заявку до 23 августа: https://u.tinkoff.ru/one-day-offer.java_scala
🤖 Вредный совет по созданию кода в стиле Григория Остера! «Упускайте все современные стандарты программирования! Используйте длинные и запутанные переменные, игнорируйте комментарии и пишите нечитаемый код. Не тратьте время на документацию и упрощение своего кода – чем сложнее, тем лучше! Помните, код создан только для вас, а не для других разработчиков, поэтому не беспокойтесь о читаемости и поддерживаемости. Это ваш уникальный стиль, и никто не должен понимать ваш код, кроме вас!»Как вам совет?
📢📢 Еще больше вредных советов ждет вас 23 августа в 20:00 на вебинаре, который пройдет в рамках онлайн-курса «Углубленное изучение языка Java» OTUS.
🟠После занятия вы точно будете знать, как НЕ надо писать код, чтобы успешно проходить собеседования и работать в команде на проектах.
👉 Для участия зарегистрируйтесь на урок: https://otus.pw/pah1/ Нативная интеграция. Информация о продукте www.otus.ru
Перечислите примитивные типы данных в Java
• byte — целые числа в пределах -128 до 127, весит 1 байт;
• short — целые числа в пределах -32768 до 32767, весит 2 байта;
• int — целые числа -2147483648 до 2147483647, весит 4 байта;
• long — целые числа в пределах 9223372036854775808 до 9223372036854775807, весит 8 байтов;
• float — числа с плавающей запятой в пределах -3.4E+38 до 3.4E+38, весит 4 байта;
• double — числа с плавающей запятой в пределах -1.7E+308 до 1.7E+308, весит 8 байтов;
• char — одиночные символы в UTF-16, весит 2 байта;
• boolean значения true/false, весит 1 байт.
👉@BookJava
AggreGate Java функции
— Линейная регрессия на JAVA
— Простая функция на JAVA
— Подключение сторонних библиотек, скрипты на JAVA
— Транспонирование таблицы AggreGate JAVA функцией
— Создание динамической HTML таблицы ч.1
источник
👉@BookJava
Яндекс Практикум запустил бесплатный курс “Основы работы с Git”. Вы сможете полностью освоить популярную систему контроля версий кода за 20 часов.
Курс будет полезен тем, кто только погружается в разработку, и тем, кто не первый год пишет код:
— новички освоят инструменты, которые точно пригодятся в профессии;
— знатоки структурируют знания и повысят свою продуктивность.
На курсе вы научитесь:
— Писать код вместе с другими разработчиками и разработчицами;
— Отменять и откладывать изменения в своих ветках;
— Использовать локальный и удалённый репозиторий;
— Соединять ветки и разрешать конфликты;
— Управлять репозиторием через IDE и консоль;
— Понимать принципы и культуру командной разработки.
И освоите необходимые инструменты и технологии:
— GitHub;
— Terminal;
— GitHub Desktop;
— Bitbucket;
— GitBash;
— GitLab.
Переходите по ссылке и начинайте заниматься уже сейчас.
Реклама АНО ДПО "Образовательные технологии Яндекса", ИНН:7704282033, erid:LjN8KE8Ur
Горизонтальное масштабирование
Кейсы использования RabbitMQ+Redis (Spring+Java+RabbitMQ+Redis)
Пишем простой, масштабируемый чат на Spring+Java+RabbitMQ+Stomp
https://www.youtube.com/playlist?list=PLb9LG4UcPZxARYz6T_P8uIPuENRdCVxx7
👉@BookJava
🔥 Международный уровень Java. Курс для работы в мировых IT-проектах и сертификация OCAJP
🚀 Стартует набор на онлайн курс «Углублённое изучение Java» от OTUS. Продолжительность обучения 5 месяцев.
Особенности курса:
- Интерактивный и практический подход
- Подготовка к собеседованиям
- Полное погружение в Java
- Подготовка к сертификации Oracle Java Programmer (OCAJP)
➡️ Оставляйте заявку и присоединяйтесь к группе: https://otus.pw/Wttv/ Нативная интеграция. Информация о продукте www.otus.ru
Яндекс Практикум запустил бесплатный курс “Основы работы с Git”. Вы сможете полностью освоить популярную систему контроля версий кода за 20 часов.
Курс будет полезен тем, кто только погружается в разработку, и тем, кто не первый год пишет код:
— новички освоят инструменты, которые точно пригодятся в профессии;
— знатоки структурируют знания и повысят свою продуктивность.
На курсе вы научитесь:
— Писать код вместе с другими разработчиками и разработчицами;
— Отменять и откладывать изменения в своих ветках;
— Использовать локальный и удалённый репозиторий;
— Соединять ветки и разрешать конфликты;
— Управлять репозиторием через IDE и консоль;
— Понимать принципы и культуру командной разработки.
И освоите необходимые инструменты и технологии:
— GitHub;
— Terminal;
— GitHub Desktop;
— Bitbucket;
— GitBash;
— GitLab.
Переходите по ссылке и начинайте заниматься уже сейчас.
Реклама АНО ДПО "Образовательные технологии Яндекса", ИНН:7704282033, erid:LjN8KE8Ur
Java-команда Тинькофф проведет митап в Екатеринбурге 🏔
Встреча с комьюнити — 15 августа в лофте «Главный проспект». В программе — три доклада:
— что у Spring Security под капотом и что поменялось с приходом Spring Boot 3;
— как эволюционировала схема синхронизации данных при переходе с вендорской системы на самописную;
— какие проблемы можно решить с помощью Project Loom, а какие нет.
После — нетворкинг и душевные разговоры о технологиях.
📆 Tinkoff Java Meetup, 15 августа, лофт «Главный проспект». Не забудьте зарегистрироваться и позвать коллег: https://fb.tinkoff.ru/tinkoff_java_meetup_ekb
🤖 Принципы работы со Stream API
📢📢 Приходите 15 августа в 20:00 мск на открытый урок «Принципы работы со Stream API».
Вебинар приурочен к старту онлайн-курса «Java Developer. Professional» в OTUS.
🟠На вебинаре вспомним как работать со Stream API и что более важно - постараемся немного заглянуть внутрь, чтобы лучше понимать как они устроены.
Stream API позволяет очень сильно упростить написание кода и решение многих стандартных задач.
🔵Это отличная возможность перенять опыт преподавателя и посмотреть на процесс обучения изнутри.
Оплата курса возможна любым удобным для вас способом.
➡️ Регистрация на вебинар: https://otus.pw/r0Nw/ Нативная интеграция. Информация о продукте www.otus.ru
Разрабатывать высоконагруженные сервисы, работать только на современном стеке и за один день стать частью классной команды из амбициозных специалистов! Звучит как мечта, но это реальность One Day Offer для Java-разработчиков от Сбера 💻
Уже 12 августа Сбер приглашает Java-разработчиков уровня Middle/Senior/Lead познакомиться, пройти все этапы отбора, получите оффер и присоединиться к Java-сообществу крупнейшего банка страны.
Чем именно предстоит заниматься на должности Java-разработчика 👇
✔️ Участвовать в выводе продуктов с нуля в промышленную эксплуатацию.
✔️ Создавать высоконагруженные сервисы в направлениях digital и phygital.
✔️ Внедрять и автоматизировать новые процессы.
✔️ Создавать и развивать IT-продукты для сотрудников банка и миллионов клиентов.
Готовы к таким интересным задачам? Переходите по ссылке, регистрируйтесь на One Day Offer и участвуйте в интервью!
⚡️Программист, расширь свои возможности на бесплатном вебинаре онлайн-курса «Архитектура и шаблоны проектирования» в Отус — «Понятие «Декоратор» в программировании»: регистрация
На бесплатном занятии мы:
— рассмотрим устройство, примеры применения, а также основной принцип паттерна «декоратор» — добавление функциональности к существующему объекту.
— рассмотрим устройство и примеры применения паттерна «посетитель», а также подход с методами расширения.
— поговорим о понятиях «декоратор», «адаптер» и «прокси», сходства и различия.
🔥Продолжить обучение после вебинара по спеццене можно на полном курсе, доступном также в рассрочку.
Нативная интеграция. Информация о продукте www.otus.ru
Ищем людей, которые хотят зарабатывать на играх
Хочешь узнать больше об их разработке?
Каждый вторник в 19:00 будет проходить закрытый разбор игр на ютуб-канале владельца студии Garden of Dreams.
Уже открыта регистрация на первое мероприятие 8 августа в 19:00, и это бесплатно!
🔥Регистрируйся прямо сейчас и открой для себя все подводные геймдева. За регистрацию ты получишь игру в подарок.
Тестовое задание на позицию JAVA BACKEND DEV. REST API. RESTFULL. HIBERNATE. MYSQL.
источник
👉@BookJava