Урок 1. Что такое лямбда-выражения в Java?
Вставка
- Опубліковано 30 лип 2019
- Продолжение доступно на Patreon: / b0noi
Дополнительный материал ниже ⇓
____
Это начало серии видео, как дополнения к курсу java101 на Hexlet: ru.hexlet.io/courses/java_101
Дополнительный материал по теме урока: docs.google.com/document/d/1o...
Тестик по теме урока: drive.google.com/open?id=1Xv5...
Наши ссылки:
• Discord-чат академии: bit.ly/2K6XQQ2
• VK - kovacademy
• FB - / kovalevskyi
• Twitter - / kovacademy
• UA-cam - / kovalevskyiacademy
• LinkedIn - / 5119016
• Patreon - / b0noi
• Web site - kovalevskyi.academy/
3:51 1)Думаю тут стоит уточнить. Не просто всего 1 метод, а именно всего 1 абстрактный метод. Для дефолтных и статических методов ограничений нет. То есть, в функциональном интерфейсе должен быть всего 1 абстрактный метод(!), и возможно также присутствие любого количества статических и дефолтных методов
11:35 2) Уточню, не тип а и тип b, а переменные а и b типа int. К тому же в записи лямбда выражения ISum summer2 = (a,b)->a+b; в качестве аргументов не обязательно использовать a, b. Можно использовать любое слово и от этого значение выражения не изменится. Например ISum summer2 = (value1,value2)->value1+value2; Java сама понимает что у value1 и value2 будет тип данных int
спс братик
Рассказал как царь, за 10 минут - все понятно. Спасибо!
Супер! Наконец-то, давно ждал!
I too
Спасиб за эти видео, понял про функциональный интерфейс и как работает Лямбда, респект!
Ну наконец-то понятное объяснение нашла) спасибо!
Вячеслав, не забрасывайте это всё, пожалуйста. Ваша манера изложения материала - лучшее, что я встречал. Всем рекомендую Ваши курсы. Но Вы всё дальше и дальше забрасываете это дело, всё реже радуете((
Наконец-то дождались
:)
Ждем Stream API. С меня лайк!
На Патреоне уже вышли посты со ссылками на новые видео и текстовые материалы, тесты.
Божественный урок. Чувствуется, что автор шарит.
Автор очень крут, огромное спасибо
Шикарные уроки!!!!!!!!!
thank you!
Когда увидел превью, то подумал что речь о Half life😁.
Вячеслав, спасибо! Отличная тема и отличный урок! К сожалению, эту тему обычно обходят стороной на курсах и в книгах, а зря ))
thank you:)!
@@KovalevskyiAcademy а какое практическое применение может иметь лямбда выражение?
@@kostyagusto5109 упрощение работы с коллекциями, массивами, сортировками и преобразованиями элементов и объектов, их сравнение, особенно объектов с компаратором, когда ты его в 1 строчку делаешь а не отдельно создаешь
Автор красавчик! Очень круто обьясняешь !
Патреон забабахали , красавцы.
Отличное изложение, каеф
thank you:)!
Half Life напомнило
Так и есть)).
Согл
A fellow scientist
Perfecto!!!
Здравствуйте. В этом видео сказано: под капотом в последних версиях Java создается анонимный класс. А в видео 3 показано, что запускается lambdafactory без создания байткода анонимного класса.
Здравствуйте, подскажите пожалуйста что у вас за шрифт в идее
Как же так. Функциональный интерфейс - это не тот, в котором один метод, в тот в котором один АБСТРАКТНЫЙ метод. А это уже совсем другое. Ведь есть еще дефолтные и static методы
Какой шрифт использовался в данном видео?
Courier New
Глебушка вводит в заблуждение) Шрифт - FiraCode github.com/tonsky/FiraCode
Па-па-па-пам, пейте кофе, учите джава =)
Пейте джава, учите кофе
Больше функциональщины - хорошей и разной!
+1
@@KovalevskyiAcademy С какой периодичностью будут выходить новые уроки?
@@BCR1984 Do not know yet, but ~1 lesson per 1-2 weeks for the next 3 lessons
Продолжение на Патреоне.
У меня всегда возникает вопрос - зачем это нужно в Java? Все создавалось под определенные нужды. У каждого ЯП своя история создания и развития. Как следствие появились и парадигмы, как идеологии решения тех или иных задач. В последнее время у меня складывается впечатление, что еще и мода появилась. Ладно языки вроде JS, которые изначально не планировались как универсальные, но фанаты туда тянули все, что можно, чтобы не изучать другие языки. Но Java имеет иную историю.
Это нужно в Java чтобы не создавать кучу однотипных методов , очень полезная штука, только тут этого не объяснили, могу порекомендовать один урок на эту тему
Я надеюсь ты уже разобрался и кайфуешь от того, как лямбды жизнь упрощают и насколько меньше кода надо писать
@@user-iz7jr4yt1o Я в этом разобрался ещё до того как оно в Java появилось. Работал с этим подходом в других языках. Место часто экономит, хотя, как по мне, не всегда удобочитаемо. Просто не хочется, чтобы Java стала заложником моды и тянула что-то только потому, что сейчас много кто так делает. Но благо пока с этим все более-менее нормально. Имплементации удобные.
6:30 А как в Intellij настроить такую конверсию значка лямбда-оператора (->) в "настоящую" стрелку?
ps: очень радует возобновлание этой серии, и вообще работы канала, изучал (и продолжаю) по Вашим урокам Java, нет ничего лучше на ру.ютубе
В Intellij: Settings > Editor > Font > Вставите галочку в Enable font ligatures > В списке Font выбираете Fira Code > Дерзайте ;-)
@@umaralikhon Да, спасибо. С тех пор как задал вопрос, давно уже разобрался. Только я использую лигатуры с jet brains mono.
Где видосы? Давайте что-нибудь об ML
Лямбда - это Гордон держит монтировку
Согласен)
Ага)).
Сначала надо объяснять нахера это надо, а уже потом - как оно работает.
что такое функциональный истанс?
10:20 но ведь тип будет не ISun, а тип класса в котором вызвана
I like programming
Лямбда означает half life
Всм?
Это рисунок на спартанском щите
За Фрименом
Руки в ноги, монтировку в зад :>
Это крч просто синтаксический сахар как я понял
HALF-LIFE: JAVA
Халф лайф на джаве... А если без рофлов, то это реально интересная задумка
@@user-jw2ie7ud8m Интересно... Если оригинальный движок первой халфы ( GoldSource ) написать на джаве то во сколько раз он будет весить больше оригинала (: И на сколько больше он будет тормрзить (:
@@farkhodpulatov6366 хех, если хорошенько оптимизировать, то будет лагать даже чутка меньше чем в майне (наверное)
@@user-jw2ie7ud8m Вроде адаптация GoldSource под телефоны Xash3D (Она очень популярна) написана на Яве... Наверное...
@@farkhodpulatov6366 хз
урок 1 - лямбды? странно
а что не так =)?
Ждём есчо
404 like
Интуитивно же понятно как лямбда работает.
В js функция это тип данных, и в функцию в качестве аргумента можно подать функцию. А в java такой фокус не прокатывает. Поэтому можно юзать лямбду. Хотя в js тоже есть аналог лямбд - стрелочные функции, но они решают другие проблемы.
П.С. я не программист, не ругайтесь если что.
халф лайф привет
Half life
Зачем дважды писать а+б? В анонимном классе ведь это уже прописано. И так и не понял на кой хрен все это нужно
Есть еще люди которые вообще пишут на java? O_o
a lot; popularity of technology in a particular year != of how many engineers still using it
@@KovalevskyiAcademy 😁