- 27
- 53 615
Elena Oshkina
Russia
เข้าร่วมเมื่อ 2 พ.ย. 2014
Мир Кода с Еленой: Обучение глазами Разработчика и Преподавателя 👩💻📚
Мой канал - это не только про технические аспекты языков программирования Java, Kotlin (и др. 😜), но и про мой уникальный опыт, который я накопила в мире разработки и обучения.
Давайте вместе исследовать, создавать и вдохновляться! 😇❣️
Мой канал - это не только про технические аспекты языков программирования Java, Kotlin (и др. 😜), но и про мой уникальный опыт, который я накопила в мире разработки и обучения.
Давайте вместе исследовать, создавать и вдохновляться! 😇❣️
Шаблон проектирования Фасад: упрощаем архитектуру системы
В этом видео мы разберём паттерн проектирования Фасад. Узнаем, как этот паттерн проектирования помогает упрощать взаимодействие с сложными системами, скрывая их внутренние детали за простым интерфейсом. Рассмотрим реальные примеры использования и увидим, как его правильно внедрить в ваш код.
❤️ Поддержать развитие канала можно здесь: 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
❤️ Поддержать развитие канала можно здесь: 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 Практических примеров
Спасибо за урок, вы прекрасно преподносите материал!
больше на губки похожи, чем на бургер
ай, ай, ай.... такую интересную тему рассказываете и такие ошибки в коде допускаете )))) правильно же инициализировать эрей лист вот так: List<Pear> pears = new ArrayList<>(); ))))
И дикция приятная и подача хорошая, спасибо.
Спасибо, у вас понятнее всего объяснены ссылки на методы.
Спасибо , посмотрел кучу видео, по лямда. Но на этом мне стало понятно.
Хорошо объясняешь, молодец! Спасибо за труд!
It was super helpfull, thanks
Здравствуйте, Елена! Не могли бы вы записать ролик про необходимые знания для того или иного уровня должности (от стажера до сеньора)? Прошу вас упомянуть не только необходимый список знаний, но и меру углубленности в эти знания. Спасибо!
А если в дочернем не написать @Override, что будет, ошибка?
Видео которое заслуживает миллион просмотров)
@@JavaDeveloper-on2vm ого, спасибо ❤️🙂
хорошое, видео!
Привет! Хорошо объясняешь. Было б очень удобно еще в подписи к видео приводить код в виде чего-либо, либо ссылок на github для удобства.
Паттерны - фабрика, абстрактная фабрика, Proxy
Спасибо, что как для самых маленьких объяснили =)
спасибо за фасад ! ждем фундамент !
Использовать ключевое слово "this", в конструкторе класса, где он не принимает никаких параметров, не имеет никакого практического смысла, "this" нужен для того, чтобы указать, какое конкретно мы используем поле, если метод/конструктор имеет одноименные параметры. 7:37
Чем отличается "Интерфейс" от "Фасада"?
Лена, ты молодец! Приятно слушать ТОП преподавателя!
Single Responsibility - не, не слышала...
А что тут не так с SRP? Каждый из трех сервисов внутри имеет ответственность над своим функционалом. Фасад объединяет функционал этих сервисов по доменному принципу. Он не забирает ответственность за реализацию с других сервисов, не изменяет их функционал. Его область ответственности это предоставление интерфейсов, связанных с банкингом, наружу
Кроме фасада важны декоратор, мост, фабрика с адаптером, наблюдатель. Но чем отличается фасад от моста, если оба - про разделение абстракции выше-ниже? Оба урезают интерфейс взаимодействия, вводят ограничения в виде публичной апишки...
2:51 Не совсем понял этот момент. Если у нас есть посредник в виде фасада, то клиент стучится в него. А фасад стучится в логику. Получается, мы имеем посредника в виде фасада? Или это предполагает косвенные импорты? Когда мы импортируем на потребителе бизнес-логику не напрямую, а фасад, который выдаёт публичное апи движка. Туда же можно параметрами давать адаптеры , которые сделают соответствие типов. И часть методов, которые можно вызывать внутри (условно декораторы для конкретных методов) Про то, как расширять, как делать систему более гибкой с помощью фасада
Звучит так, что этот паттерн = декларативная функция. Плюс инкапсуляция. Плюс разделение на публичное и приватное апи (доступное для класса/пакета)
Можно ли сказать, что эндпоинт - частный случай фасада?
2:04 Получается, фасад - это просто публичное апи? Например, есть какой-нибудь движок рендера формы. Конфиги, компоненты UI, локальное хранилище - всё внутри. Потребителю выдаётся только вьюшка (ответ на вопрос, что рендерить) и набор данных + методов для реактивщины, нужных для взаимодействия с вьюшкой. То есть, вместо десятков конструкций, мы даём только вьюшку и сервис к этой вьюшке. Не нашёл про джаву, но на тайпскрипте это делается как `export { Engine } from './engine';`
view генерируется на фронте Фасад, как по мне напоминает контроллер для работы с нашими API, в которых мы передаем необходимую информацию для отображение на стороне Front
@@kxeklom не, это всё на фронте делается в моём примере. Ну конфиг приходит с бэка. Но там примитивно всё? Достать коллекцию по паре sql запросам - несложно. Фасад там не нужен)
Елена, хочу сказать спасибо за шуточки, которые вы вставляете в свои видео) С ними изучение Java уже не кажется таким сложным!
Елена, большое спасибо за видео! Материал очень легко подается :)
ух сколько завистников)))
Хе-хе)) сама не ожидала 😃
Выпей уксуса
@@cheesebombaster672 плагиат)
Еще псевдо умных книженций почитать. Не зря же бабки на бумагу переводите
@@sunder3271 гениально))
Лена, ты ТОП! Обожаю тебя и твои уроки! Спасибо!
и то и другое))
Да) хороший вариант 😁 2 ИТ-ипотеки))
Вы пересняли видео?
Какое?))
@@ElenaCodes про джаву
@@userxh-sg6cgнет, конечно)
Выпить уксуса
😂😂😂
Этого я и ждала)) наконец-то стоящие комментарии от истинных экспертов 😁
😂😂😂
Позвольте узнать - а что за картина на заднем фоне?
Великого художника конечно)) в единственном экземпляре 😁😁
Кажется я давно искал вот такое объяснение.
Елена, как всегда - очень познавательно!))
Спасибо ❤️
1. Эффективный - нет, структурированные - нет. Объектно-ориентированный ДА. (Структура и Объект - это разные понятия) 2. Есть ООП, двух видов "Класс-ориентированное и объектно-ориентированное". 3. А говорили, будет рассказ в отрыве от ЯП, Java типичный императивный ЯП, класс-ориентированный, сейчас эпоха заката Java, в 2024 году не стоит учить Java. Сейчас эпоха функционального программирования и интерпретируемых языков. На компилируемых ЯП, сейчас можно писать обладая высокой экспертизой компилятора языка программирования или на языках которые обеспечивают безопасность управления памяти, например Rust. 4. В рассказе про полиморфизм стоит упомянуть как минимум, каких видов он бывает, а в случае Java важно показать параметрический полиморфизм, а не только Ad hoc. Для первого шага в класс-ориентированное программирования, это необходимо, но не достаточно, как минимум вы упустили самую главную парадигму "Абстракция" из который фактически вытекают остальные 3-и, да действительно раньше лет 20-30 назад, считалось, что есть 3-и основные парадигмы ООП: "Инкапсуляция, Наследование и Полиморфизм".
Благодарю за ваш комментарий и интерес. Отвечу по пунктам: 1. Относительно эффективности и структурированности в ООП. Действительно, понятия "структура" и "объект" имеют разные значения. В контексте ООП структурированность часто связывается с организацией кода в модули, классы и иерархии, что способствует лучшей организации и поддержке программного кода. 2. Да, согласна, в ООП выделяют класс-ориентированное и объектно-ориентированное программирование. 3. Что касается выбора языка программирования, важно учитывать его применимость к конкретным задачам и трендам в отрасли. Java, несмотря на ваше заявления о "эпохе заката", остается одним из наиболее распространенных языков благодаря своей надежности и широкому применению в корпоративной среде. 4. Да, есть о чем еще поговорить - можно будет выделить на разбор полиморфизма отдельное видео. Согласна, абстракция фундаментальна для понимания ООП - спасибо, что обратили на это внимание
Коммент в поддержку
Картинка норм, но содержание видео оставляет желать лучшего. Можно было докопаться до "инициализации" вместо "присваивания", но это не нужно. Рассказала про методы, и когда создает объект говорит "ну мы используем new" , так может нужно про конструктор что-то сказать?). Разбор инкапсуляции это что-то, повесить модификатор доступа private на поле, и сказать ну напишете методы на получения и изменения значения) Может быть стоит создать объект и показать что мы не сможем так просто дотянуться до этого поля? Может быть стоило сказать и про другие модификаторы доступа и куда их можно повесить? Про наследование вообще 0 инфы. Смысл видео мне непонятен честно говоря (
Спасибо за ваш детальный комментарий, да, действительно, еще есть много моментов, которые не отражены в этом видео. Постараюсь учесть в следующих 🙂
@@ElenaCodes на переснимание. ютуб всё стерпит)))
@@userxh-sg6cg 😁😁
Елена очень порадовала ваша коллекция уточек, надеюсь в этом году добавятся новые 😎
Тоже на это надеюсь! 😎
Очень доступное объяснение, спасибо! Вот прям сколько надо - ни капли воды, но и всё очень доступно. Даже жаль, что сейчас в самом начале изучения и до остальных уроков пока "учиться, учиться и ещё раз учиться".
Спасибо! Очень рада, что оказалось полезным 🙂
Крутые утки🎉
Угу 🌝
Спасибо. Очень интересные и понятные уроки.
Спасибо за обратную связь 🙏🙂
Наконец-таки основы🎉🎉
❤️
Пишу этот комментарий в поддержку канала и благодарность за качественный материал.
Спасибо большое ❤️
Салют! Очень интересует вопрос поиска первой работы в сфере backend разработки (Java, Spring, SQL, ...) выпускнику вуза, можете ли дать советы в этом направлении?
Могу, но это большая тема) Если выделить главное - нужно искать стажировки/открытые школы и пытаться попасть на них. В качестве варианта могу предложить открытую школу от Т1 t1.ru/open-school/ (бесплатно)
может видео Java vs Kotlin?
Спасибо за идею)
Java то обновляется каждый год, да даже и не раз за год. А вот только обновляется ли код или продоожает писаться на дай бог 1.8?
Так так так) не надо сразу все секреты раскрывать 😁
Каждые полгода сейчас уже