Elena Oshkina
Elena Oshkina
  • 27
  • 53 615
Шаблон проектирования Фасад: упрощаем архитектуру системы
В этом видео мы разберём паттерн проектирования Фасад. Узнаем, как этот паттерн проектирования помогает упрощать взаимодействие с сложными системами, скрывая их внутренние детали за простым интерфейсом. Рассмотрим реальные примеры использования и увидим, как его правильно внедрить в ваш код.
❤️ Поддержать развитие канала можно здесь: boosty.to/elenacodes
🔍 Что вас ждет:
00:00 Паттерн "Фасад"
00:24 Что такое паттерн "Фасад"?
01:26 Что делает "Фасад" уникальным?
02:38 Looose coupling - слабое связывание
03:44 Инкапсуляция
04:04 Многослойная архитектура
04:56 Кодируем с Еленой
12:10 JDBC (Java Database Connectivity)
📢 Не забудьте поставить лайк 👍, подписаться на канал 🔔 и оставить комментарий 📝, особенно если у вас есть вопросы или предложения для следующих видео!
💡 Подписывайтесь на мой Telegram-канал, чтобы не пропустить новые выпуски: t.me/elenacodes
มุมมอง: 799

วีดีโอ

Первый шаг в ООП: Все, что вам нужно знать
มุมมอง 1.5K7 หลายเดือนก่อน
Это видео будет полезно как начинающим, так и опытным программистам, которые хотят освежить свои знания в ООП. Погрузитесь в мир объектно-ориентированного программирования и улучшите свои навыки вместе со мной! ❤️ Поддержать развитие канала можно здесь: boosty.to/elenacodes 🔍 Что вас ждет: 00:00 Начинаем 00:20 ООП (Объектно-ориентированное программирование) 00:23 Класс 00:28 Объект 04:39 Методы...
Узнай правду о программировании на Java! Не дай себя обмануть 👩‍💻
มุมมอง 8397 หลายเดือนก่อน
Сегодня я расскажу вам о трёх самых распространённых мифах о Java, которые могут ввести в заблуждение как новичков, так и опытных программистов. ❤️ Поддержать развитие канала можно здесь: boosty.to/elenacodes В этом видео вы узнаете: 00:00 Начало 00:24 Java устарела? 02:00 Java медленная? 04:25 Java сложная? 🔍 Подробно разберём каждый из этих мифов и приведём факты, которые помогут вам лучше по...
Immutable Class: Подготовка к Java-интервью
มุมมอง 1.3K7 หลายเดือนก่อน
В этом видео мы разберем Immutable Class в Java, что станет отличной подготовкой к собеседованию. Вы узнаете: ❤️ Поддержать развитие канала можно здесь: boosty.to/elenacodes 00:00 Начало 00:32 Что такое Immutable Class? 01:10 Преимущества Immutable Class 02:39 Когда не стоит использовать Immutable Class? 03:40 Как создать Immutable Class? 05:05 Пример 1 12:04 Пример 2 17:38 Пример 3 21:44 Defen...
Как я стала JAVA разработчиком | Мой Путь в IT: Преподаватель, Программист, YouTuber
มุมมอง 2.5Kปีที่แล้ว
В этом ролике я делюсь своей историей: от школы и университета до первой работы в IT. Узнайте больше о том, как я изначально собиралась в МГИМО и МЧС, но выбрала IT. Поделюсь своими первыми шагами в карьере программиста и объясню, почему решила запустить TH-cam-канал. Тайм-коды: 00:24 Школьные годы 01:22 Елена-спасатель 02:05 Мечта о МГИМО 02:26 Техническая сфера 02:45 Выбор университета 04:48 ...
🛠️ Java Method Reference: Мастер-Класс по Ссылкам на Методы
มุมมอง 2.6Kปีที่แล้ว
👋 Привет всем любителям Java и тем, кто сегодня делает свои первые шаги в изучении этого удивительного языка! 📚 В этом уроке мы погрузимся в мир Java Method References. Вы узнаете о различных типах ссылок на методы, увидите наглядные примеры их использования, и разберём, как они могут сделать ваш код более лаконичным и эффективным. От ссылок на методы объектов до ссылок на конструкторы и статич...
Лямбда-выражения в Java: от простого к сложному + 4 Правила Использования! 📚
มุมมอง 3.6Kปีที่แล้ว
Привет, друзья и коллеги разработчики! В этом уроке мы с вами рассмотрим лямбда-выражения в Java и обсудим их базовый синтаксис и применение! 🎯 Что вас ждет в этом видео: - Основы синтаксиса и использование лямбда-выражений; - Взаимосвязь лямбда и функциональных интерфейсов; - Реальный пример работы с лямбда в GUI; - БОНУС: 4 ключевых правила использования сокращенных форм лямбда-выражений! 💼 Э...
Лямбда-выражения vs Анонимные классы в Java: Практические примеры с Comparator, Runnable & GUI! 🔥🚀
มุมมอง 1.1Kปีที่แล้ว
Лямбда-выражения vs Анонимные классы в Java Часть II 🌟 Продолжаем наше погружение в мир лямбда-выражений и интерфейсов Java! 🌟 Рада представить вам вторую часть урока. В нем будут раскрыты следующие темы: 🎭 Анонимные классы: когда и почему их стоит использовать, и как они соотносятся с лямбда-выражениями. 🔮 Основы лямбда-выражений: преобразование вашего кода с помощью лямбд для большей лаконичн...
Java: Лямбда-выражения и Интерфейсы | Гибкость и динамическое поведение кода 🚀
มุมมอง 1.7Kปีที่แล้ว
Вы хотите улучшить свои знания в Java? Этот урок идеально подходит для тех, кто стремится понять мощь лямбда-выражений и интерфейсов. Урок разделен на две части для более глубокого и понятного погружения в каждую из тем. Ждите вторую часть очень скоро! 🔹 Гибкость как ответ на изменение требований: Узнайте, как делать ваш Java-код адаптивным и устойчивым к постоянно меняющимся требованиям. 🔹 Изм...
🎬 Зачем нужна многозадачность? Concurrency vs Parallelism в действии 🎬
มุมมอง 688ปีที่แล้ว
🎬 Зачем нужна многозадачность? Concurrency vs Parallelism в действии 🎬
Многопоточность в JAVA: Секреты Эффективного Управления Потоками
มุมมอง 1.5Kปีที่แล้ว
Многопоточность в JAVA: Секреты Эффективного Управления Потоками
Основы Многопоточного Программирования на Java
มุมมอง 3.5Kปีที่แล้ว
Основы Многопоточного Программирования на Java
Погружение в мир хеш-таблиц на Java: от теории к практике 🗂️🔍
มุมมอง 3Kปีที่แล้ว
Погружение в мир хеш-таблиц на Java: от теории к практике 🗂️🔍
Паттерн "Итератор". Реализация на Java. Часть 1
มุมมอง 1.1Kปีที่แล้ว
Паттерн "Итератор". Реализация на Java. Часть 1
JAVA. Основы Stream API. 7 Практических примеров
มุมมอง 1.8Kปีที่แล้ว
JAVA. Основы Stream API. 7 Практических примеров
JAVA. Основы Stream API. Часть 1
มุมมอง 17K3 ปีที่แล้ว
JAVA. Основы Stream API. Часть 1

ความคิดเห็น

  • @evkn503
    @evkn503 13 วันที่ผ่านมา

    Спасибо за урок, вы прекрасно преподносите материал!

  • @FERRUM-ix5yk
    @FERRUM-ix5yk 27 วันที่ผ่านมา

    больше на губки похожи, чем на бургер

  • @MakarTihonov
    @MakarTihonov หลายเดือนก่อน

    ай, ай, ай.... такую интересную тему рассказываете и такие ошибки в коде допускаете )))) правильно же инициализировать эрей лист вот так: List<Pear> pears = new ArrayList<>(); ))))

  • @DedVpihto
    @DedVpihto หลายเดือนก่อน

    И дикция приятная и подача хорошая, спасибо.

  • @DedVpihto
    @DedVpihto หลายเดือนก่อน

    Спасибо, у вас понятнее всего объяснены ссылки на методы.

  • @MarAle68
    @MarAle68 หลายเดือนก่อน

    Спасибо , посмотрел кучу видео, по лямда. Но на этом мне стало понятно.

  • @Bagiration
    @Bagiration 2 หลายเดือนก่อน

    Хорошо объясняешь, молодец! Спасибо за труд!

  • @ilyasamilyak6517
    @ilyasamilyak6517 3 หลายเดือนก่อน

    It was super helpfull, thanks

  • @АлексКим-э7ъ
    @АлексКим-э7ъ 5 หลายเดือนก่อน

    Здравствуйте, Елена! Не могли бы вы записать ролик про необходимые знания для того или иного уровня должности (от стажера до сеньора)? Прошу вас упомянуть не только необходимый список знаний, но и меру углубленности в эти знания. Спасибо!

  • @nikd2154
    @nikd2154 6 หลายเดือนก่อน

    А если в дочернем не написать @Override, что будет, ошибка?

  • @JavaDeveloper-on2vm
    @JavaDeveloper-on2vm 6 หลายเดือนก่อน

    Видео которое заслуживает миллион просмотров)

    • @ElenaCodes
      @ElenaCodes 6 หลายเดือนก่อน

      @@JavaDeveloper-on2vm ого, спасибо ❤️🙂

  • @tapamaniy
    @tapamaniy 6 หลายเดือนก่อน

    хорошое, видео!

  • @sergeykishchenko8914
    @sergeykishchenko8914 6 หลายเดือนก่อน

    Привет! Хорошо объясняешь. Было б очень удобно еще в подписи к видео приводить код в виде чего-либо, либо ссылок на github для удобства.

  • @МатвейПинчуков-щ8ъ
    @МатвейПинчуков-щ8ъ 6 หลายเดือนก่อน

    Паттерны - фабрика, абстрактная фабрика, Proxy

  • @МихаилБорщик-ъ5ь
    @МихаилБорщик-ъ5ь 6 หลายเดือนก่อน

    Спасибо, что как для самых маленьких объяснили =)

  • @askwis1
    @askwis1 6 หลายเดือนก่อน

    спасибо за фасад ! ждем фундамент !

  • @oqbuxe196
    @oqbuxe196 6 หลายเดือนก่อน

    Использовать ключевое слово "this", в конструкторе класса, где он не принимает никаких параметров, не имеет никакого практического смысла, "this" нужен для того, чтобы указать, какое конкретно мы используем поле, если метод/конструктор имеет одноименные параметры. 7:37

  • @MrAirrussia
    @MrAirrussia 6 หลายเดือนก่อน

    Чем отличается "Интерфейс" от "Фасада"?

  • @LAZIO14
    @LAZIO14 6 หลายเดือนก่อน

    Лена, ты молодец! Приятно слушать ТОП преподавателя!

  • @AlexSmile-y2x
    @AlexSmile-y2x 7 หลายเดือนก่อน

    Single Responsibility - не, не слышала...

    • @p1nkflow
      @p1nkflow 6 หลายเดือนก่อน

      А что тут не так с SRP? Каждый из трех сервисов внутри имеет ответственность над своим функционалом. Фасад объединяет функционал этих сервисов по доменному принципу. Он не забирает ответственность за реализацию с других сервисов, не изменяет их функционал. Его область ответственности это предоставление интерфейсов, связанных с банкингом, наружу

  • @dima__rx5fw3rm1n
    @dima__rx5fw3rm1n 7 หลายเดือนก่อน

    Кроме фасада важны декоратор, мост, фабрика с адаптером, наблюдатель. Но чем отличается фасад от моста, если оба - про разделение абстракции выше-ниже? Оба урезают интерфейс взаимодействия, вводят ограничения в виде публичной апишки...

  • @dima__rx5fw3rm1n
    @dima__rx5fw3rm1n 7 หลายเดือนก่อน

    2:51 Не совсем понял этот момент. Если у нас есть посредник в виде фасада, то клиент стучится в него. А фасад стучится в логику. Получается, мы имеем посредника в виде фасада? Или это предполагает косвенные импорты? Когда мы импортируем на потребителе бизнес-логику не напрямую, а фасад, который выдаёт публичное апи движка. Туда же можно параметрами давать адаптеры , которые сделают соответствие типов. И часть методов, которые можно вызывать внутри (условно декораторы для конкретных методов) Про то, как расширять, как делать систему более гибкой с помощью фасада

  • @dima__rx5fw3rm1n
    @dima__rx5fw3rm1n 7 หลายเดือนก่อน

    Звучит так, что этот паттерн = декларативная функция. Плюс инкапсуляция. Плюс разделение на публичное и приватное апи (доступное для класса/пакета)

  • @dima__rx5fw3rm1n
    @dima__rx5fw3rm1n 7 หลายเดือนก่อน

    Можно ли сказать, что эндпоинт - частный случай фасада?

  • @dima__rx5fw3rm1n
    @dima__rx5fw3rm1n 7 หลายเดือนก่อน

    2:04 Получается, фасад - это просто публичное апи? Например, есть какой-нибудь движок рендера формы. Конфиги, компоненты UI, локальное хранилище - всё внутри. Потребителю выдаётся только вьюшка (ответ на вопрос, что рендерить) и набор данных + методов для реактивщины, нужных для взаимодействия с вьюшкой. То есть, вместо десятков конструкций, мы даём только вьюшку и сервис к этой вьюшке. Не нашёл про джаву, но на тайпскрипте это делается как `export { Engine } from './engine';`

    • @kxeklom
      @kxeklom 6 หลายเดือนก่อน

      view генерируется на фронте Фасад, как по мне напоминает контроллер для работы с нашими API, в которых мы передаем необходимую информацию для отображение на стороне Front

    • @dima__rx5fw3rm1n
      @dima__rx5fw3rm1n 6 หลายเดือนก่อน

      @@kxeklom не, это всё на фронте делается в моём примере. Ну конфиг приходит с бэка. Но там примитивно всё? Достать коллекцию по паре sql запросам - несложно. Фасад там не нужен)

  • @АндрейТяпкин-о8б
    @АндрейТяпкин-о8б 7 หลายเดือนก่อน

    Елена, хочу сказать спасибо за шуточки, которые вы вставляете в свои видео) С ними изучение Java уже не кажется таким сложным!

  • @rrvnzerrvnze7080
    @rrvnzerrvnze7080 7 หลายเดือนก่อน

    Елена, большое спасибо за видео! Материал очень легко подается :)

  • @whiletruegoto
    @whiletruegoto 7 หลายเดือนก่อน

    ух сколько завистников)))

    • @ElenaCodes
      @ElenaCodes 7 หลายเดือนก่อน

      Хе-хе)) сама не ожидала 😃

  • @cheesebombaster672
    @cheesebombaster672 7 หลายเดือนก่อน

    Выпей уксуса

    • @ElenaCodes
      @ElenaCodes 7 หลายเดือนก่อน

      @@cheesebombaster672 плагиат)

  • @sunder3271
    @sunder3271 7 หลายเดือนก่อน

    Еще псевдо умных книженций почитать. Не зря же бабки на бумагу переводите

    • @ElenaCodes
      @ElenaCodes 7 หลายเดือนก่อน

      @@sunder3271 гениально))

  • @LAZIO14
    @LAZIO14 7 หลายเดือนก่อน

    Лена, ты ТОП! Обожаю тебя и твои уроки! Спасибо!

  • @sigma3131
    @sigma3131 7 หลายเดือนก่อน

    и то и другое))

    • @ElenaCodes
      @ElenaCodes 7 หลายเดือนก่อน

      Да) хороший вариант 😁 2 ИТ-ипотеки))

  • @userxh-sg6cg
    @userxh-sg6cg 7 หลายเดือนก่อน

    Вы пересняли видео?

    • @ElenaCodes
      @ElenaCodes 7 หลายเดือนก่อน

      Какое?))

    • @userxh-sg6cg
      @userxh-sg6cg 7 หลายเดือนก่อน

      @@ElenaCodes про джаву

    • @ElenaCodes
      @ElenaCodes 7 หลายเดือนก่อน

      @@userxh-sg6cgнет, конечно)

  • @bad_animator44
    @bad_animator44 7 หลายเดือนก่อน

    Выпить уксуса

    • @MusicTStudio
      @MusicTStudio 7 หลายเดือนก่อน

      😂😂😂

    • @ElenaCodes
      @ElenaCodes 7 หลายเดือนก่อน

      Этого я и ждала)) наконец-то стоящие комментарии от истинных экспертов 😁

  • @АндрейОшкин-е9ч
    @АндрейОшкин-е9ч 7 หลายเดือนก่อน

    😂😂😂

  • @Nno_O
    @Nno_O 7 หลายเดือนก่อน

    Позвольте узнать - а что за картина на заднем фоне?

    • @ElenaCodes
      @ElenaCodes 7 หลายเดือนก่อน

      Великого художника конечно)) в единственном экземпляре 😁😁

  • @userxh-sg6cg
    @userxh-sg6cg 7 หลายเดือนก่อน

    Кажется я давно искал вот такое объяснение.

  • @tasokolova
    @tasokolova 7 หลายเดือนก่อน

    Елена, как всегда - очень познавательно!))

    • @ElenaCodes
      @ElenaCodes 7 หลายเดือนก่อน

      Спасибо ❤️

  • @MrAirrussia
    @MrAirrussia 7 หลายเดือนก่อน

    1. Эффективный - нет, структурированные - нет. Объектно-ориентированный ДА. (Структура и Объект - это разные понятия) 2. Есть ООП, двух видов "Класс-ориентированное и объектно-ориентированное". 3. А говорили, будет рассказ в отрыве от ЯП, Java типичный императивный ЯП, класс-ориентированный, сейчас эпоха заката Java, в 2024 году не стоит учить Java. Сейчас эпоха функционального программирования и интерпретируемых языков. На компилируемых ЯП, сейчас можно писать обладая высокой экспертизой компилятора языка программирования или на языках которые обеспечивают безопасность управления памяти, например Rust. 4. В рассказе про полиморфизм стоит упомянуть как минимум, каких видов он бывает, а в случае Java важно показать параметрический полиморфизм, а не только Ad hoc. Для первого шага в класс-ориентированное программирования, это необходимо, но не достаточно, как минимум вы упустили самую главную парадигму "Абстракция" из который фактически вытекают остальные 3-и, да действительно раньше лет 20-30 назад, считалось, что есть 3-и основные парадигмы ООП: "Инкапсуляция, Наследование и Полиморфизм".

    • @ElenaCodes
      @ElenaCodes 7 หลายเดือนก่อน

      Благодарю за ваш комментарий и интерес. Отвечу по пунктам: 1. Относительно эффективности и структурированности в ООП. Действительно, понятия "структура" и "объект" имеют разные значения. В контексте ООП структурированность часто связывается с организацией кода в модули, классы и иерархии, что способствует лучшей организации и поддержке программного кода. 2. Да, согласна, в ООП выделяют класс-ориентированное и объектно-ориентированное программирование. 3. Что касается выбора языка программирования, важно учитывать его применимость к конкретным задачам и трендам в отрасли. Java, несмотря на ваше заявления о "эпохе заката", остается одним из наиболее распространенных языков благодаря своей надежности и широкому применению в корпоративной среде. 4. Да, есть о чем еще поговорить - можно будет выделить на разбор полиморфизма отдельное видео. Согласна, абстракция фундаментальна для понимания ООП - спасибо, что обратили на это внимание

  • @xmxustin
    @xmxustin 7 หลายเดือนก่อน

    Коммент в поддержку

  • @iswmq420
    @iswmq420 7 หลายเดือนก่อน

    Картинка норм, но содержание видео оставляет желать лучшего. Можно было докопаться до "инициализации" вместо "присваивания", но это не нужно. Рассказала про методы, и когда создает объект говорит "ну мы используем new" , так может нужно про конструктор что-то сказать?). Разбор инкапсуляции это что-то, повесить модификатор доступа private на поле, и сказать ну напишете методы на получения и изменения значения) Может быть стоит создать объект и показать что мы не сможем так просто дотянуться до этого поля? Может быть стоило сказать и про другие модификаторы доступа и куда их можно повесить? Про наследование вообще 0 инфы. Смысл видео мне непонятен честно говоря (

    • @ElenaCodes
      @ElenaCodes 7 หลายเดือนก่อน

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

    • @userxh-sg6cg
      @userxh-sg6cg 7 หลายเดือนก่อน

      @@ElenaCodes на переснимание. ютуб всё стерпит)))

    • @ElenaCodes
      @ElenaCodes 7 หลายเดือนก่อน

      @@userxh-sg6cg 😁😁

  • @АндрейТяпкин-о8б
    @АндрейТяпкин-о8б 7 หลายเดือนก่อน

    Елена очень порадовала ваша коллекция уточек, надеюсь в этом году добавятся новые 😎

    • @ElenaCodes
      @ElenaCodes 7 หลายเดือนก่อน

      Тоже на это надеюсь! 😎

  • @НиколайМалютин-н8л
    @НиколайМалютин-н8л 7 หลายเดือนก่อน

    Очень доступное объяснение, спасибо! Вот прям сколько надо - ни капли воды, но и всё очень доступно. Даже жаль, что сейчас в самом начале изучения и до остальных уроков пока "учиться, учиться и ещё раз учиться".

    • @ElenaCodes
      @ElenaCodes 7 หลายเดือนก่อน

      Спасибо! Очень рада, что оказалось полезным 🙂

  • @ВладиславМерцалов-к3я
    @ВладиславМерцалов-к3я 7 หลายเดือนก่อน

    Крутые утки🎉

    • @ElenaCodes
      @ElenaCodes 7 หลายเดือนก่อน

      Угу 🌝

  • @costya.volf9
    @costya.volf9 7 หลายเดือนก่อน

    Спасибо. Очень интересные и понятные уроки.

    • @ElenaCodes
      @ElenaCodes 7 หลายเดือนก่อน

      Спасибо за обратную связь 🙏🙂

  • @АндрейОшкин-е9ч
    @АндрейОшкин-е9ч 7 หลายเดือนก่อน

    Наконец-таки основы🎉🎉

    • @ElenaCodes
      @ElenaCodes 7 หลายเดือนก่อน

      ❤️

  • @Sst886
    @Sst886 7 หลายเดือนก่อน

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

    • @ElenaCodes
      @ElenaCodes 7 หลายเดือนก่อน

      Спасибо большое ❤️

  • @undeadpoet5861
    @undeadpoet5861 7 หลายเดือนก่อน

    Салют! Очень интересует вопрос поиска первой работы в сфере backend разработки (Java, Spring, SQL, ...) выпускнику вуза, можете ли дать советы в этом направлении?

    • @ElenaCodes
      @ElenaCodes 7 หลายเดือนก่อน

      Могу, но это большая тема) Если выделить главное - нужно искать стажировки/открытые школы и пытаться попасть на них. В качестве варианта могу предложить открытую школу от Т1 t1.ru/open-school/ (бесплатно)

  • @ivanstrelka3448
    @ivanstrelka3448 7 หลายเดือนก่อน

    может видео Java vs Kotlin?

    • @ElenaCodes
      @ElenaCodes 7 หลายเดือนก่อน

      Спасибо за идею)

  • @ElChampi0
    @ElChampi0 7 หลายเดือนก่อน

    Java то обновляется каждый год, да даже и не раз за год. А вот только обновляется ли код или продоожает писаться на дай бог 1.8?

    • @ElenaCodes
      @ElenaCodes 7 หลายเดือนก่อน

      Так так так) не надо сразу все секреты раскрывать 😁

    • @user-vadim-vadim
      @user-vadim-vadim 6 หลายเดือนก่อน

      Каждые полгода сейчас уже