JavaRangers
JavaRangers
  • 81
  • 27 065
Принципы Dry Kiss Yagni с примерами Java. Прощаемся с плохими привычками кодирования
Как улучшить качество кода, следуя принципам DRY, KISS и YAGNI? В этом видео мы разберем три ключевых принципа разработки, которые помогут вам писать более чистый, простой и поддерживаемый код на Java. Примеры покажут, как избавиться от дублирования, упростить логику и избегать лишней функциональности, оставаясь сосредоточенным на текущих задачах.
📱 Следите за нами в соцсетях:
TikTok: www.tiktok.com/@javarangersteam
Instagram: javarangers
🔔 Не забудьте подписаться на канал, чтобы не пропустить новые видео!
👍 Если видео было полезным, поставьте лайк и оставьте комментарий. Мы будем рады вашему мнению!
Таймкоды:
0:00 Вступление
0:36 DRY
1:10 Важная часть принципа DRY - SSOT
1:51 Пример принципа DRY
3:11 Нарушение принципа DRY - WET
3:30 KISS
4:55 Пример принципа KISS
06:11 YAGNI
7:03 Пример принципа YAGNI
7:42 Итоги по каждому принципу
08:31 Заключение
Переглядів: 72

Відео

Kibana: Анализ и Визуализация Данных
Переглядів 877 годин тому
👋 Добро пожаловать в урок JavaRangers по Kibana: Анализ и Визуализация Данных! 📊 В этом видео мы исследуем возможности Kibana, популярного инструмента визуализации данных 📈. Как разработчик, вы узнаете, как анализировать и визуализировать свои данные с помощью Kibana, что облегчит получение полезной информации и принятие обоснованных решений 🔍. Наш урок предназначен для начинающих 👨‍💻👩‍💻, поэто...
ElasticSearch и Logstash: Установка, Настройка и Основные Понятия
Переглядів 10319 годин тому
В этом видео я покажу вам, как установить и настроить ElasticSearch и Logstash, а также разберем основные понятия в работе с этими инструментами. 📌 Полезные ссылки и ресурсы: 🔹Загрузка elasticsearch: www.elastic.co/downloads/elasticsearch 🔹Загрузка logstash: www.elastic.co/downloads/logstash 🔹Search API manual: www.elastic.co/guide/en/elasticsearch/reference/current/search-search.html 📱 Следите...
Сказки про программирование | Fairy Tale #1: "OOP Principles in Development"
Переглядів 7321 годину тому
OOP Principles in Development или Как Базовый Класс решил научить своих наследников - Простой Класс, Специфический Класс и Универсальный Класс - четырем основным принципам ООП: инкапсуляции, наследованию, полиморфизму и абстракции. В этом юмористическом аудио мы окунемся в мир виртуальных лесов и потоков данных, где наследники учатся прятать свои свойства, защищаться от исключений и, конечно, в...
Как настроить логирование в Spring Boot. AOP
Переглядів 193День тому
В этом видео я расскажу, как настроить логирование в своем Spring Boot приложении с помощью AOP 📈. Научитесь создавать и анализировать логи 📝 для улучшения производительности вашего приложения 🚀! 📱 Следите за нами в соцсетях: TikTok: www.tiktok.com/@javarangersteam Instagram: javarangers 🔔 Не забудьте подписаться на канал, чтобы не пропустить новые видео! 👍 Если видео было полезны...
Java Reflection - Ваш ключ к пониманию Java-разработки.
Переглядів 35514 днів тому
В этом видео я расскажу про рефлексию в Java - мощный инструмент для работы с кодом во время выполнения программы. Мы рассмотрим, как с помощью рефлексии можно управлять полями, методами и конструкторами классов, не зная их заранее. Я покажу примеры того, как получить доступ к приватным полям и методам, а также как использовать рефлексию для вызова методов и изменения значений полей на лету. Ес...
Всё о Spring Boot: История, Модули, и Отличия от Java EE
Переглядів 23014 днів тому
В этом видео мы рассмотрим историю Spring Boot, его модули и различия с Java EE. Вы узнаете о плюсах и минусах использования Spring Boot в ваших проектах на Java. 📌 Полезные ссылки и ресурсы: 🔹Книга Рода Джонсона: www.amazon.com/Expert-One-One-Design-Development/dp/0764543857 🔹Конструктор Spring: start.spring.io/ 🔹Официальный сайт Spring Boot: spring.io/ 📱 Следите за нами в соцсетях: TikTok: ww...
Быстрый и легкий деплой на AWS
Переглядів 11421 день тому
В этом видео я покажу, как быстро и легко развернуть Java Spring Boot приложение на AWS с использованием Docker. Вы узнаете, как создать Docker-образ, настроить Docker Compose и автоматически развернуть ваше приложение в облаке. Этот процесс позволит вам сэкономить время и упростить деплой ваших приложений на AWS. LinkedIn: www.linkedin.com/in/maegorov/ LinkedIn: www.linkedin.com/in/viktor-bula...
Spring Монолит в Микросервис + MySql + Docker + RabbitMQ [Monolit to microservices]
Переглядів 20021 день тому
Привет, друзья!!! В этом видео мы возьмем монолит из прошлого видео [ua-cam.com/video/SuJxAnM4wBA/v-deo.html] и «распилим» его на микросервисы. Все материалы ниже. LinkedIn: www.linkedin.com/in/maegorov/ LinkedIn: www.linkedin.com/in/viktor-bulatov-46a54b30b/ LinkedIn: www.linkedin.com/in/oleksii-chilibiiskyi/ Материалы: lucid.app/lucidchart/a308a939-4b49-49a0-a1b9-ff2a749c2397/edit?viewport_lo...
JUnit тесты в Java: Пример с Spring Security
Переглядів 18421 день тому
👋 Добро пожаловать в мир Java! В этом видео мы разберём, как написать и как работают JUnit тесты в Java на примере Spring Security. Вы узнаете о плюсах JUnit тестов, а также чем отличаются JUnit тесты от интеграционных тестов. 📌 Полезные ссылки и ресурсы: 🔹Ссылка на репозиторий(ветка "junit_tests"): github.com/Lightoton/demoUA-cam 📱 Следите за нами в соцсетях: TikTok: www.tiktok.com/@javaranger...
Запуск Java SpringBoot + MySQL в Docker | Dockerfile + Docker compose
Переглядів 318Місяць тому
В этом видео я покажу, как запустить Spring Boot приложение с базой данных MySQL в Docker. Мы будем использовать Dockerfile для сборки приложения и Docker Compose для управления контейнерами. Это пошаговое руководство поможет вам быстро настроить среду разработки и развернуть приложение локально. 📱 Следите за нами в соцсетях: TikTok: www.tiktok.com/@javarangersteam Instagram: java...
SOLID с примерами Java за 15 минут | Clean code
Переглядів 400Місяць тому
SOLID с примерами Java за 15 минут | Clean code
IT и не только подкаст #4 - Технологии и жизнь
Переглядів 110Місяць тому
IT и не только подкаст #4 - Технологии и жизнь
Архитектура BackEnd: Java MONOLIT + MVC + EDA
Переглядів 317Місяць тому
Архитектура BackEnd: Java MONOLIT MVC EDA
Интеграционные тесты java(на примере Spring security)
Переглядів 303Місяць тому
Интеграционные тесты java(на примере Spring security)
Архитектура BackEnd: Программа курса [INTRO]
Переглядів 222Місяць тому
Архитектура BackEnd: Программа курса [INTRO]
Generics в Java. Что это и как работает?
Переглядів 162Місяць тому
Generics в Java. Что это и как работает?
IT и не только подкаст #3 - Технологии и жизнь
Переглядів 1242 місяці тому
IT и не только подкаст #3 - Технологии и жизнь
Отправка электронной почты из Java SpringBoot
Переглядів 1982 місяці тому
Отправка электронной почты из Java SpringBoot
HashMap in Java with Examples [ENG SUB]
Переглядів 1732 місяці тому
HashMap in Java with Examples [ENG SUB]
OAuth 2.0 authorization in the Java Spring Boot application: A step-by-step guide
Переглядів 6032 місяці тому
OAuth 2.0 authorization in the Java Spring Boot application: A step-by-step guide
Podcast "IT and beyond" #2
Переглядів 1052 місяці тому
Podcast "IT and beyond" #2
Database migrations using the Liquibase example📊 [ENG SUB]
Переглядів 2252 місяці тому
Database migrations using the Liquibase example📊 [ENG SUB]
Podcast "IT and beyond" #1
Переглядів 1262 місяці тому
Podcast "IT and beyond" #1
Mongock as a MongoDB migration tool
Переглядів 1493 місяці тому
Mongock as a MongoDB migration tool
Code analysis: Dive into the details of Spring Security + JWT! 💻
Переглядів 1363 місяці тому
Code analysis: Dive into the details of Spring Security JWT! 💻
Useful shortcuts for working in IntelliJ IDEA
Переглядів 1613 місяці тому
Useful shortcuts for working in IntelliJ IDEA
Configuring Spring Security with JWT Tokens: A Step-by-step guide
Переглядів 8693 місяці тому
Configuring Spring Security with JWT Tokens: A Step-by-step guide
Creating Complex Flows for a Telegram Bot in Java.
Переглядів 1013 місяці тому
Creating Complex Flows for a Telegram Bot in Java.
Working with Apache Kafka in Java: A Complete Beginner's Guide
Переглядів 1,5 тис.3 місяці тому
Working with Apache Kafka in Java: A Complete Beginner's Guide

КОМЕНТАРІ

  • @СтасМурашка
    @СтасМурашка 5 годин тому

    У меня вот такая проблема docker context create ecs context "docker context create" requires exactly 1 argument. See 'docker context create --help'. Usage: docker context create [OPTIONS] CONTEXT Create a context

    • @СтасМурашка
      @СтасМурашка 4 години тому

      Если что aws cli я скачал и ввел данные но не могу понять почему ничего не работает. Может переустановить докер и обновить ide ? Просто до этого пробывал по другим гайдам и чето менял в файлах докера. Еще проблема что это говно ошибка толком не гуглится, на форуме ответы 20-22 года и то что пишут люди не помогает🥲

  • @АлександрЗайцев-х3х

    Весьма полезное и доходчивое видео. К сожалению таковых на данный момент немого.

  • @ровойт
    @ровойт День тому

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

  • @Sst886
    @Sst886 День тому

    Поддерживаю предыдущий комментарий! Отлично

  • @Sst886
    @Sst886 2 дні тому

    Один уточняющий вопрос, плз. Почему для метода logKafkaSend() использовалась аннотация @Around, в том время как @Before могла бы выполнить в те же манипуляции и тоже до фактической отправки сообщения, если я правильно понял?

    • @JavaRangers
      @JavaRangers День тому

      В данном конкретном случае, когда логируется только message и topic можно легко заменить на аннотацию @Before. Если бы мы логировали и результат отправки сообщения (возможно это нужно было продемонстрировать), то выбор @Around был бы более очевиден.

    • @Sst886
      @Sst886 12 годин тому

      @JavaRangers понял, спасибо!

  • @alexandr6055
    @alexandr6055 2 дні тому

    Привет. Контент огонь, из пожеланий сделайте гайд по интеграционному тестированию кафки, но с помощью тест-контейнеров. Было бы 🔥. Спасибо за вашу работу!

  • @alexandr6055
    @alexandr6055 2 дні тому

    Я в таком предвкушении. Видео называется ВСЁ о спринг Бут и идёт 8 минут😂 это будет легендарно)

  • @Sst886
    @Sst886 2 дні тому

    Класс! Похоже на логику с эксепшн хендлерами. Очень удобно, ранее не натыкался на эту тему. Спасибо!

  • @nailtagiyev6340
    @nailtagiyev6340 3 дні тому

    request-body тоже полезно сохранять по моему мнению)

  • @alexandr6055
    @alexandr6055 3 дні тому

    Вы супер. Кратко, ёмко, с конкретными примерами. То что надо для быстрого старта!🎉

  • @NoNamesNoWars
    @NoNamesNoWars 3 дні тому

    Контент - топ! Все очень доходчиво и просто объясняется, без воды. А звуки клавиш - это вообще медитация) Огромное спасибо автору за работу!

  • @zigyias347
    @zigyias347 10 днів тому

    Как по вайфаю заходите в ютуб? Только по телефону смотрю

    • @JavaRangers
      @JavaRangers 9 днів тому

      Так вроде давно уже много "рецептов" в интернете

  • @AnnaLeonova-d4e
    @AnnaLeonova-d4e 16 днів тому

    Очень полезно и актуально, спасибо!

  • @ЕвгенийВовк-ы7ь
    @ЕвгенийВовк-ы7ь 17 днів тому

    Ну конечно да Практический урок очень нужен

  • @ДмитрийЕремичев-ъ1ж

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

  • @ДмитрийЕремичев-ъ1ж

    Я думаю что это прекрасная идея, посмотрим что будет через 5 лет

  • @АлександрМышляев-щ5и

    А есть ли чат в телеграмм например, задать вопросы и получить обратную связь?

    • @JavaRangers
      @JavaRangers 22 дні тому

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

  • @bebrochka88
    @bebrochka88 22 дні тому

    А где ссылка на гитхаб?)

    • @JavaRangers
      @JavaRangers 22 дні тому

      Добрый, если бы вы писали вместе со мной на видео то у вас бы был весь код)). + Есть ссылка на код в монолите (там 90% всей инфы ) с предыдущего видео. Код с микросервисов выложу как будет 400 подписчиков))

  • @ровойт
    @ровойт 23 дні тому

    подскажите что учиь дальше -после спринга, спрингбута для начинающего бекендера

    • @JavaRangers
      @JavaRangers 23 дні тому

      Если вы освоили Boot то начинающим вас никак нельзя назвать)))

  • @viktorii00
    @viktorii00 26 днів тому

    Краш

  • @alexgaew4213
    @alexgaew4213 28 днів тому

    Спасибо большое!!!! Больше подобных видео про Кафку!!!!

  • @humanature914
    @humanature914 Місяць тому

    Михаил мой учитель, привет из Таджикистан

  • @ДмитрийВсемогущий-я2и

    Дурачёк.....

  • @dxhd78
    @dxhd78 Місяць тому

    Почему?

    • @JavaRangers
      @JavaRangers Місяць тому

      добрый, почему что?)

    • @dxhd78
      @dxhd78 29 днів тому

      @@JavaRangersпочему локальная переменная обязательно должна быть проинициализирована?)

  • @АлександрМышляев-щ5и

    вот это отличное видео.

  • @AnnaLeonova-d4e
    @AnnaLeonova-d4e Місяць тому

    👍

  • @musturbino3281
    @musturbino3281 Місяць тому

    Огонь. Помню я тебя просил об этом:) Ты сдержал слово

  • @vladimirs6654
    @vladimirs6654 Місяць тому

    в чем ведется разработка?

  • @gorez2259
    @gorez2259 Місяць тому

    Михаил как всегда на высоте. Музыка на фоне кажется лишней, либо надо сделать по тише. Часто приходится вслушиваться что говорит Михаил...

    • @AnnaLeonova-d4e
      @AnnaLeonova-d4e Місяць тому

      Да, по поводу музыки тоже поддерживаю, немного тише нужно сделать, оставить для фона

    • @JavaRangers
      @JavaRangers Місяць тому

      исправим спасибо)

  • @AnnaLeonova-d4e
    @AnnaLeonova-d4e Місяць тому

    С Днем рождения, Вас! Желаю проффессионального, творческого вдохновения !

  • @AnnaLeonova-d4e
    @AnnaLeonova-d4e Місяць тому

    как можно было бы еще назвать класс service для Stat, я могу предложить BookAnalyticsService

    • @JavaRangers
      @JavaRangers Місяць тому

      Спасибо!

    • @JavaRangers
      @JavaRangers Місяць тому

      Если это аналитика книги то да, если это статистика всей библиотеки в целом - то нет)

  • @AnnaLeonova-d4e
    @AnnaLeonova-d4e Місяць тому

    Ну очень класс! Михаил, все доступно, еще и с live coding с объяснением! Все понятно, пока вопросов нет.

  • @JavaRangers
    @JavaRangers Місяць тому

    Завтра будет видос

  • @ВасилийГоловко-д9и

    Видео полезное и классное, но сложно смотреть то картинка дергается то лицо сильно динамически перемещается. Из-за этого неудобно код с экрана читать

  • @ВасилийГоловко-д9и

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

  • @KoryRuno
    @KoryRuno Місяць тому

    Спасибо огромное за изложение и демонстрацию материала! Все разложил по полочкам. Огонь! 💥

  • @JavaRangers
    @JavaRangers Місяць тому

    Сделал кодовую базу, готовлю теорию.

  • @AnnaLeonova-d4e
    @AnnaLeonova-d4e Місяць тому

    Отличное пособие по интеграционным тестам! Очень полезно "подкапотный" разбор, чего не хватает в понимании часто. Виктор, спасибо!

  • @AMovieA
    @AMovieA Місяць тому

    начал готовить материал)))

  • @mierce
    @mierce Місяць тому

    Захотел переписать свой дипломный проект с Express.js на спринг и увидел твоё видео по jwt. Очень круто сделал

  • @pan-gloowl
    @pan-gloowl Місяць тому

    Фуф, жду с нетерпением

  • @alexei3366
    @alexei3366 Місяць тому

    При добалении ключа в Map, он (ключ) должен выполнять два условия: 1. Immutable 2. Соблюдать контракт hashCode/equals

  • @AnnaLeonova-d4e
    @AnnaLeonova-d4e Місяць тому

    И я жду очень! 👍

  • @sergeyponomarenko8533
    @sergeyponomarenko8533 Місяць тому

    Рад вновь видеть 👍

  • @6ezdar28
    @6ezdar28 Місяць тому

    Ждём всей толпой)

  • @AnnaLeonova-d4e
    @AnnaLeonova-d4e Місяць тому

    Очень подробно и понятно 👍👏🏻

  • @AnnaLeonova-d4e
    @AnnaLeonova-d4e 2 місяці тому

    Вспомнила, интересный случай на собеседовании: я еду в общественном транспорте на работу, мне хамит пассажирка, а позже, когда она зашла ко мне в кабинет со словами: «Здравствуйте, я пришла на собеседование» она была оооочень удивлена, когда поняла, что собеседовать ее буду я, это было оооочень конфузно 😂. Так что нужно вести себя прилично в общественном транспорте всегда, особенно в пути на собеседование 🤷‍♀️

  • @AnnaLeonova-d4e
    @AnnaLeonova-d4e 2 місяці тому

    К вопросу Михаила на утверждение Алексея, что к любому замку можно подобрать ключ: думаю к биометрические показателям, если они являются ключом (отпечаток пальца, сетчатка глаза и т.д.) нельзя подобрать замену

  • @AnnaLeonova-d4e
    @AnnaLeonova-d4e 2 місяці тому

    😂😂😂Собеседование на природе (встретимся в горах) особенно рассмешило

  • @alexr0v
    @alexr0v 2 місяці тому

    Было бы круто кастомизировать ошибки, в том числе и от безопасности, чтобы не просто отправлять статус а текст с ошибкой. Обычные ошибки мне удалось кастомизировать а те что от безопасности нет, не пойму в чем дело. Так же было бы круто если истек срок у токена то отправлять 403, а если истек рефреш токен то 401, на фронте удобно такие ошибки обрабатывать и либо делать запрос на обновление токена либо выбрасывать юзера на страницу логина.