Компания
104,81
рейтинг
10 декабря 2015 в 14:38

Разработка → Шпаргалка Java-программиста 5. Двести пятьдесят русскоязычных обучающих видео докладов и лекций о Java

Думаю, мало кто будет спорить, что просмотр видео хороших лекций и докладов с конференций это один из самый быстрых и простых способов научится чему-то новому. Проблема в том, что по Java сложно найти все хорошие видео конференций и доклады по нужной теме. Более того, по названию многих видео с конференций сложно понять, какой именно они теме повещены.



Поэтому я подготовил данный сборник видео докладов на русском языке с различных конференций (Joker, JPoint, JavaDays, JEEConf, конечно, с DEV labs, которые организовывает Luxoft), и, естественно, видео из канала Luxoft Training Center. Всё видео разделено на различные категории и при необходимости добавлено описание.

Update: Внимание, актуальная версия со всеми ссылками на видео находиться теперь в моем github'e проекте useful-java-links, по этой ссылке.



Чего НЕ БУДЕТ в данном сборнике:
1. Не будет видео про scala, так как scala это целый отдельный мир, для программистов на scala могу порекомендовать вот этот сборник,
2. Не будет видео на английском языке, я старался выбирать русскоязычное видео, так как далеко не все программисты все-таки владеют английским в совершенстве, ну и англоязычного видео слишком много, поэтому я решил остановится пока только на русскоязычных видео (и небольшом количестве видео на украинском языке), К тому же, уверен, для англоязычного видео по Java в инете и так найдется немало подобных сборников.

Не стесняйтесь писать в комментариях (или мне в личку) о других интересных видео по Java, которое нет в этом списке.

Итак, начнем:

1. Вопросы оптимизации и производительности


1.1 Производительность и оптимизация


  1. Сергей Куксенко — «Квантовые» эффекты производительности,
  2. Сергей Куксенко — Сессия вопросов-ответов о производительности Java,
  3. Алексей Шипилёв и Сергей Куксенко, Россия — Методология оптимизации производительности,
  4. Сергей Куксенко, Oracle — Железные счётчики
  5. Алексей Шипилёв, Oracle — Катехизис java.lang.String — о реализации строк в Java, способы оптимизации работы со строками и ошибки, которые часто допускают при оптимизации работы со строками,
  6. Алексей Шипилёв — Java Benchmarking: как два таймстампа прочитать!
  7. Алексей Шипилёв — Java Benchmarking: как два таймстампа записать
  8. Алексей Шипилёв и Сергей Куксенко — Оптимизация производительности Java-приложений: теория
  9. Алексей Шипилёв и Сергей Куксенко — Оптимизация производительности Java-приложений: детали
  10. Алексей Шипилёв и Сергей Куксенко — Оптимизация производительности Java-приложений: ещё детали
  11. Олег Бунин, Андрей Паньгин, Алексей Рагозин, Олег Анастасьев — Круглый стол. HighLoad
  12. Алексей Шипилёв, Oracle — Сжимай меня полностью
  13. Дмитрий Лазаренко — Оптимизация работы JVM в облаке
  14. Дмитрий Чуйко — Быстрая загрузка ваших классов
  15. Глеб Смирнов — HotSpot, что ты делаешь?! Ахаха, прекрати!
  16. Kirill Golodnov — О бесконечно долгой работе дочерних процессов Java-приложения
  17. Андрей Афанасьев — Оптимизация производительности распределенных приложений...
  18. Руслан Черёмин — Disruptor и прочие фокусы
  19. Gleb Smirnov — Side-By-Side Performance Comparisons — что значит «тормозит» и как с этим бороться
  20. Nikita Salnikov Tarnovski — First steps in GC tuning — проблемы, связанные с производительностью из-за сборщика мусора


1.2 Высоконагруженные приложения (HighLoad)


  1. Андрей Паньгин — Особенности разработки высоконагруженного сервера на Java
  2. Алексей Шевчук — Подходы к решению проблем производительности высоконагруженых сервисов
  3. Роман Елизаров — Миллионы котировок в секунду на чистой Java
  4. Олег Анастасьев — За гранью возможного (Keynote) — о проблемах при создания Однокласников и решения для высоконагруженных сервисов,
  5. Андрея Паньгина — Выжимаем из сервера максимум: приемы кеширования и передачи данных на Java — описание приемов создания высоконагруженных систем на Odnoklassniki.ru,
  6. Alexander Oleynikov — Практический опыт построения API высоконагруженных сервисов — описание создания высоконагруженных систем в Yandex'е,
  7. Valerii Moisieienko — How to Manage 10K request per second in HA manner — история разработки высоконагруженного приложения на недорогом железе,


1.3 Сборка мусора, утечки памяти и работа с памятью


  1. Алексей Рагозин — Сборка мусора, битва алгоритмов
  2. Владимир Долженко — GC: друг или враг?
  3. Роман Елизаров — Почему GC съедает все моё CPU?
  4. Никита Сальников-Тарновский, Plumbr — Где моя память, чувак?!
  5. Глеб Смирнов, Plumbr — Тайны — в наших головах, а не в JVM
  6. Никита Сальников-Тарновский — Утечки памяти
  7. Алексей Шипилёв — О чём молчат Heap Dump-ы
  8. Владимир Воскресенский — Микрохирургия HotSpot
  9. Александр Макаров — Исследование возможностей и ограничений JVM по оптимизации памяти
  10. Андрей Паньгин — Кеширование данных вне Java Heap и работа с разделяемой памятью в Java
  11. Владимир Иванов — G1 Garbage Collector
  12. Иван Крылов — StructuredArray и ObjectLayout — как JVM представляет объекты и вопросы производительности представления объектов,
  13. Никита Сальников-Тарновский — Heap, off you go
  14. Nikita Salnikov-Tarnovski — I bet you have a permgen leak in your application — утечки памяти из-за class load'ов


2. Инструменты и IDE


2.1 IDE и инструменты разработки


  1. Андрей Зайцев, Дмитрий Нестерук, JetBrains — Инструменты командной разработки
  2. Николай Чашников — Поддержка Java 8 в IntelliJ IDEA
  3. Андрей Солнцев — Eclipse vs Intellij IDEA
  4. Николай Чашников — IntelliJ IDEA изнутри
  5. Дмитрий Найданов — Play Framework 2.0 в IntelliJ IDEA
  6. Николай Чашников — Компилятор Java и IDE: взаимовыгодное сотрудничество
  7. Андрей Чепцов, Барух Садогурский, Антон Архипов — Круглый стол. Инструменты Java-разработчика
  8. Александр (Шура) Ильин — Анализ покрытия с помощью JCov
  9. Антон Архипов — JRebel — инструмент, который позволяет «на лету» перезагружать классы, измененные с момента развёртывания приложения.,
  10. Барух Садогурский — Разработка модулярного софта: добро пожаловать в АД!
  11. Alexey Alexandrov — All inclusive Jeastic PaaS — описание платформы для облачных вычислений
  12. Baruch Sadogurskii — Managing Modular Software for your NuGet, C++ and Java Development
  13. Philip Torchinsky — Интеграция баг-трекера и сервера CI с IntelliJ IDEA
  14. ladimir Kozhaev — How to write IDE for your DSL in one day
  15. Евгений Борисов — Power of Gradle
  16. Sergey Morenets — Gradle 2. Write once, build everywhere — внимание: видео на украинском языке


2.2 Отладка, профилирование, мониторинг


  1. Алексей Рагозин — Непрерывное профилирование Java-приложений в ходе эксплуатации
  2. Андрей Паньгин, Одноклассники — Лучший отладчик — сделанный своими руками
  3. Владимир Ситников — Профайлер в каждый дом
  4. Владимир Красильщик — Мониторинг Java-приложения с многопроцессной архитектурой
  5. Виталий Трифанов и Дмитрий Цителов — Динамическое обнаружение гонок в многопоточных Java-программах
  6. Андрей Паньгин — Лучший отладчик — сделанный своими руками
  7. Андрей Паньгин — Аварийный дамп — черный ящик упавшей JVM
  8. Андрей Паньгин — Анализ аварийных дампов JVM, часть 2
  9. Андрей Паньгин — Анализ аварийных дампов JVM, часть 1
  10. Александр Отенко — О чём молчит профайлер
  11. Андрей Паньгин — Аварийный дамп — «черный ящик» JVM
  12. Алексей Рагозин — Диагностические интерфейсы JVM, или Как сделать профайлер своими руками
  13. Владимир Воскресенский — Практическое применение OSS для анализа Java-приложений — Использование Oracle Solaris Studio для анализа высокопроизводительных Java-приложений
  14. Алексей Шипилёв — (The Art of) (Java) Performance Benchmarking II


3. Особенности разных языков JVM и версий Java


3.1 Groovy и Grails


  1. Барух Садогурский, Евгений Борисов — Эпичные Groovy Puzzlers — Месть Скобок
  2. Барух Садогурский и Евгений Борисов — Groovy Puzzlers
  3. Барух Садогурский и Евгений Борисов — Groovy Puzzlers — Странное, Непонятное и Мамочки-а-это-что-такое?!
  4. Евгений Борисов — Марлезонский балет по Groovy в трех частях
  5. Барух Садогурский — Метапрограммирование на уровне компилятора в Groovy
  6. Барух Садогурский — Groovy DSL для plugin-ов: расширения человеческим языком
  7. Барух Садогурский — Транcформации Абстрактного Синтаксического Дерева в Груви. ЩИТО?!
  8. Izzet Mustafaiev — Groovy MOPping — принципы построения DSL на groovy
  9. Baruch Sadogursky — Search for the Holy Grail (and test it once found) — какие решения для поиска существуют в Grail и какие решения для тестирования существуют в Grails


3.2 Clojure


  1. Николай Рыжиков — Clojure: интерактивная разработка для интерактивного веб
  2. Maurice Naftalin — Closures and Collections: the World After Eight
  3. Dmitriy Morozov — ETL all the things! — использование ETL (Extract, transform, load) в Clojure, как можно использовать Spark c Clojure,
  4. Misha Kozik — DSL in Clojure — использование Clojure для написания DSL,


3.3 Kotlin


  1. Андрей Бреслав — Type-safe Web with Kotlin
  2. Андрей Бреслав — Project Kotlin
  3. Евгений Геращенко — Kotlin, язык программирования для JVM
  4. — Язык программирования Kotlin


3.4 Java Embedded и IoT


  1. Александр Белокрылов, Александр Мироненко, Oracle — Восстание машин: в энтерпрайз с 256 КБ RAM
  2. Белокрылов, Мироненко — Силовая установка c сердцем из Raspberry Pi и мозгом на Java Embedded
  3. Александр Белокрылов и Александр Мироненко — Java Embedded у вас дома
  4. Александр Мироненко и Александр Белокрылов — Java Embedded у вас дома
  5. Лев Прийма — Java SE Embedded 8
  6. Александр Белокрылов и Александр Мироненко — Полноценный Java runtime, 256Kb RAM и 5 литров пива
  7. — Java ME Embedded: проверенные технологии на перспективных рынках
  8. Yakov Fain — RESTful services and OAUTH protocol in IoT


3.5 Java EE 7


  1. Markus Eisele — 50 Best Features of Java EE 7


3.6 Java 8, лямбды и Stream Api


  1. Сергей Куксенко — Я, лямбда
  2. Сергей Куксенко — JDK 8: Молот лямбд
  3. Сергей Куксенко и Алексей Шипилёв — Через тернии к лямбдам, часть 1
  4. Владимир Иванов — Java 8 и JVM: что нового в HotSpot
  5. Сергей Куксенко — Java 8: Advanced Stream Techniques
  6. Дмитрий Козорез — Java 8 Time API
  7. Владимир Иванов — Java 8: что нового в HotSpot JVM?
  8. Maurice Naftalin — What's New in Java 8
  9. Александр Ильин — Type annotations in Java 8. И почему это хорошо
  10. Сергей Куксенко и Алексей Шипилёв — Через тернии к лямбдам, часть 2
  11. Сергей Куксенко и Алексей Шипилёв — Через тернии к лямбдам, часть 1
  12. Сергей Куксенко — Stream API, часть 2
  13. Сергей Куксенко — Stream API, часть 1
  14. Сергей Куксенко — JDK8: Stream style
  15. Алексей Фёдоров — Компромиссы в Java 8 с примерами и картинками
  16. Александр Белокрылов — Знакомьтесь, Java 8
  17. Дмитрий Козорез — Долгий путь к Лямбдам
  18. Соколов Михаил — Java 8: лямбда выражения и Stream API
  19. Oleg Tsal-Tsalko — Java 8 Date&Time benefits
  20. Oleg Tsal-Tsalko — Java 8 Lambdas Hands-On-Labs
  21. Pavel Grushetzky — Java for hipsters and rocks stars
  22. Oleg Tsal-Tsalko — 10+ new features you ought to know using Java 8


3.7 Java 9+ и будущее Java


  1. Иван Крылов, Владимир Иванов, Volker Simonis, Никита Липский — Круглый стол. Будущее Java-платформы
  2. Владимир Иванов — Future of Java: 9 and beyond
  3. Владимир Иванов — Платформа Java: прошлое и будущее
  4. Шура Ильин — Project Jigsaw. Take 2
  5. Александр Белокрылов, Oracle — Java: эволюция неизбежна
  6. Аня Барски — Java Life Story
  7. Olena Syrota, Oleg Tsal-Tsalko — Standard Java JSON binding. When? — описание существующих библиотек работы с JSON, их особенностей и проблем, ожидание стандартного JSON'a в Java 9



4. Фреймворки Java


4.1 Spring


  1. Барух Садогурский, Евгений Борисов — Spring Puzzlers — Начало
  2. Евгений Борисов — Spring Data? Да, та!
  3. Барух Садогурский, Евгений Борисов, Николай Алименков — Зачем у Spring столько конфигураций?
  4. Евгений Борисов — Spring the Ripper
  5. Евгений Борисов — Spring-потрошитель, часть 2
  6. Евгений Борисов — Spring-потрошитель, часть 1
  7. Евгений Борисов — Spring 4.0: новое поколение
  8. Владимир Сонькин — Использование Spring 4 и AngularJS для разработки веб-приложений на базе архитектуры REST
  9. Меркурьев Евгений — Весна идет, весне — дорогу! Новое в Spring Framework
  10. Artem Bilan — Spring and Messaging: The next development generation
  11. Vladimir Tsukur — From CRUD to Hypermedia APIs with Spring
  12. Igor Khotin — App infrastructure for microservices with Spring Cloud 1.0.0 — микросервисы, cloud, Spring и DevOps,
  13. Sergey Morenets — Spring Boot. Boot up your development — описание фреймворка Spring Boot, почему данный фреймворк позволяет создавать приложения намного быстрее,


4.2 Вебфреймворки (JavaFX, Javascript, AngularJS и т.п.)


  1. Сергей Гринёв — JavaFX: FXML и SceneBuilder
  2. Артём Ананьев — Неформально о JavaFX
  3. Дмитрий Кузовец — FXML и SceneBuilder: отделяем пользовательский интерфейс от логики в JavaFX
  4. Павел Нестеренко — Java + JavaScript: переходи на мобильную сторону
  5. Евгений Родин — Асинхронная обработка данных в web-приложениях на Java
  6. Евгений Родин — Разработка веб-сайтов средствами Java (на примере простого сайта) — примеры разработки вебсайта с использованием mysql, tomcat и т.п. технологий
  7. Соколов Дмитрий — Как выбрать библиотеки для современного Web-приложение на Java
  8. Владимир Сонькин — Использование AJAX в разработке web-приложений на Java
  9. Александор Дворецкий — Как подготовиться к созданию нагруженных сайтов
  10. Владимир Сонькин — Использование Spring 4 и AngularJS для разработки веб-приложений на базе архитектуры REST
  11. Victor Polischuk — Web-application I have always dreamt of
  12. Nikita Lipsky — Delivering Native User Experience in Client-Side Java Applications — нативные клиенты для работы с вебом вместо браузерного веба (от мобильных до десктопных приложений),
  13. Olga Semeniuk — Less JS! Web components for back-end developers — введение в веб компоненты для бакенд разработчиков


4.3 Прочие фреймворки и популярные библиотеки


  1. Цытович Павел — Основы разработки приложения на платформе Android
  2. Андрей Шевченко — Генерация больших отчетов с использованием Jasper Reports
  3. Владимир Красильщик — Java-mapping для прагматичных программистов — использования библиотек и фреймворктов для mapping'а (dozer, spring type converter api, nomin, scala dsl, transmorf и т.д.)
  4. Andrii Golovei — Highly available and scalable application for dummies with Storm — Storm фреймворк для машинного обучения, высокопроизводительных вычислений


5. Базы данных, поисковые системы и BigData


5.1 NoSql и кеши


  1. Олег Анастасьев — За гранью NoSQL: NewSQL на Cassandra
  2. Алексей Зиновьев — Мама, я так хочу Hibernate для NoSQL, ну или что там у вас есть на примете
  3. Яков Жданов — In-memory accelerator for MongoDB
  4. Олег Анастасьев — Класс! ная Cassandra
  5. Роман Антипин — Франкенштейнизация Voldemort, или Key-Value данные в «Одноклассниках»
  6. Яков Жданов — От дисковой архитектуры к In-Memory
  7. Алексей Рагозин — Блеск и нищета распределенных кешей
  8. Alexey Tokar — MongoDB в продакшене — миф или реальность?
  9. Artem Orobets — How do you store your data?
  10. Roman Nikitchenko — Big Data: from mammoth to elephant – transforming legacy with Hadoop — как преобразовать легаси проекты в новые Big Data приложений с современным стеком технологий,


5.2 Sql базы данных и JPA


  1. Николай Алименков — Босиком по граблям Hibernate
  2. Яков Сироткин, Sidenis — Миграция с PL/SQL на Java


5.3 Поисковые системы


  1. Михаил Хлуднев — В поисках Tommy Hilfiger — о Apache Lucene, свободной библиотеки для высокоскоростного полнотекстового поиска, о разных системах поиска,
  2. Alexey Tokar — To find a needle in a haystack — о нечетком поиске в словарях от разработчика Яндекса


5.4 BigData, Data Scientist, Машинное обучение


  1. Алексей Зиновьев — Java в качестве основного рабочего инструмента Data Scientist
  2. Roman Nikitchenko — Apache HBase: crazy dances on the elephant back
  3. Serhiy Masyutin — Big Data Analysis — внимание на украинском языке
  4. Boris Trofimov — Scalding Big Data: Thorns and Roses,
  5. Taras Matyashovskyy — Introduction to Real-Time Big Data with Apache Spark — внимание на украинском языке
  6. Serhiy Masyutin — Big Data analysis approaches in Java world — что такое Big Data, технология Map-Reduce и примеры проектов
  7. Kyrylo Holodnov — Scaling a solution of an NP-hard problem with Apache ZooKeeper — о Apache ZooKeeper, как с работать и решать различные задачи,
  8. Andrii Golovei — Elastic stack in BigData — использование полнотексового поиска в BigData используя решения компании Elastic (Elastic Search)


6. Особенности языка Java


6.1 Cериализации


  1. Роман Елизаров — Факты и заблуждения о Java-сериализации
  2. Olena Syrota, Oleg Tsal-Tsalko — Standard Java JSON binding. When? — описание существующих библиотек работы с JSON, их особенностей и проблем, ожидание стандартного JSON'a в Java 9



6.2 Работа с байткодом, java agent'ы, class loader и компиляции на лету


  1. Антон Архипов, ZeroTurnaround — Javassist на службе у Java-разработчика
  2. Никита Липский — Ahead-of-time компиляция
  3. Антон Архипов — Java-агенты, Instrumentation API и Javassist
  4. Антон Архипов — Загрузчики классов в Java: коллекция граблей
  5. Владимир Иванов — Динамическая (JIT) компиляция в JVM
  6. Дмитрий Завалишин — Конвертер байткода JVM для виртуальной машины Фантом


6.3 Aсинхронность и многопоточность


  1. Барух Садогурский — Как написать асинхронные многопоточные HTTP приложения
  2. Алексей Шипилёв — ForkJoinPool в Java 8
  3. Николай Алименков — Прикладная многопоточность
  4. Дмитрий Чуйко, Oracle — CompletableFuture уже здесь
  5. Глеб Смирнов — Расчленяя многопоточность
  6. Алексей Шипилёв — Прагматика Java Memory Model
  7. Глеб Смирнов — Многопоточность Java под капотом
  8. Роман Елизаров — Теоретический минимум для понимания Java Memory Model
  9. Дмитрий Чуйко — Новинки в java.util.concurrent
  10. Алексей Шипилёв — Bulletproof Java Concurrency
  11. Сергей Куксенко — Модель памяти
  12. Руслан Черёмин — Модель памяти Java: близкие контакты третьей степени
  13. Alexey Fyodorov — Atomics, CAS, and Nonblocking Algorithms — вопросы многозадачности, атомики, неблокирующие алгоритмы, CAS и т.п.
  14. Mikalai Alimenkou — Java Concurrency Applied — примеры практических решений про многозадачность


6.4 Интеграция


  1. Николай Алименков — Нужен ли нам JMS в мире современных Java-технологий?
  2. Яков Файн, Farata Systems — RESTful-сервисы и протокол OAuth в IoT
  3. Александр Белоцерковский — Windows Azure + Java = Open Integration
  4. Вадим Цесько — Фреймворк Akka и его использование в Яндексе
  5. Vladimir Tsukur — Вместе веcело шагать с HATEOAS! — разработка Web Api,
  6. Максим Юнусов — «Масштабируемое приложение за 15 минут (используем AKKA под Java)
  7. Вячеслав Лапин — Слабая связанность Java-сервера и web-интерфейса посредством REST API


6.5 Безопасность, Java Security Model и т.д.


  1. Михаил Дударев — Побег из песочницы. Уязвимости нулевого дня в Java
  2. Михаил Дударев — USS «Enterprise» — сквозь черные дыры безопасности Java Web-контейнеров
  3. Михаил Дударев — Опасные типы, или Java Security Model на практике


6.6 Виртуальная машина Java и особенности реализации JVM


  1. Андрей Паньгин — Java Runtime: повседневные обязанности виртуальной машины Java
  2. Олег Плисс — Виртуальные машины. Часть 1
  3. Олег Плисс — Виртуальные машины. Часть 2
  4. Олег Плисс — Виртуальные машины. Часть 3
  5. Олег Плисс — Виртуальные машины. Часть 4
  6. Артём Ананьев — Проект OpenJDK
  7. Андрей Бреслав — Компромиссы в разработке языков программирования
  8. Андрей Бреслав — Компромиссы, или Как проектируются языки программирования
  9. Никита Липский и Павел Павлов — Excelsior JET: внутренняя архитектура — описание быстрой JVM реализации Excelsior JET с компиляцией в машинный код,
  10. Никита Липский и Павел Павлов — Excelsior JET: обзор возможностей — описание быстрой JVM реализации Excelsior JET с компиляцией в машинный код,
  11. Nikita Lipsky — AOT компиляция — статическая компиляция JVM в Excelsior JET, её преимущества и возможности по сравнению с обычной компиляцией,
  12. Nikita Lipsky — Java худеет. Уменьшение размера дистрибутива Java приложения без зависимостей — использование статического компилятора Excelsior JET для уменьшения размеров дистрибутивов Java приложений,
  13. Никита Липский и Миша Быков — Занимательные истории из жизни техподдержки JVM — о техподержке JVM Excelsior JET, о Excelsior JET и об особенностях реализации JVM, различия между JVM и проблемы при переходе между разными JVM,
  14. Алексей Шипилёв — OpenJDK Frameworks: jmh & jcstress
  15. Шура Ильин — OpenJDK Test Base
  16. Шура Ильин — JTReg: OpenJDK test harness
  17. Шура Ильин — OpenJDK TestFest Intro
  18. Alexey Fyodorov — JDK: CPU, PSU, LU, FR – WTF??? — рассказывается о четырех типах обновлений JDK в компании Oracle (Critical Patch Update (CPU), Patch Set Update (PSU), Limited Update (LU) and Feature Release (FR)). Чем отличаются типы обновления, какие изменения возможны в каждом типе обновлений.


6.7 Аспектно-ориентированное программирование


  1. Николай Гарбузов, Донривер — Аспектно-ориентированное решение классических проблем
  2. Игорь Сухоруков. AspectJ Scripting


6.8 Рефлексия и Invokedynamic


  1. Владимир Иванов — Invokedynamic: роскошь или необходимость?
  2. Владимир Иванов — Глубокое погружение в invokedynamic


6.9 Работа с нативными библиотеками и кодом (JNI/JNA)


  1. Петр Кудрявцев — Эффективная разработка Java приложений с использованием JNI/JNA технологий


6.10 Особенности языка Java


  1. Владимир Ситников, NetCracker — Выражаемся регулярно — описание регулярных выражений, их использования и проблем,
  2. Алексей Рагозин — Структуры данных в Java, изобретаем заново — описание реализации коллекций в Java и возможные методы их улучшения,
  3. Светлана Исакова — Простыми словами про вывод типов


7. Качество кода и вопросы архитектуры


7.1 Рефакторинги, качество кода, методики программирования


  1. Яков Сироткин, Никита Липский, Олег Анастасьев, Филипп Дельгядо — Рефакторинги и технический долг
  2. Антон Кекс — Как нам спасти Java? — Часть 1 — о проблемах Java, о том как можно сделать Java лучше, какие привычные подходы программирования в Java на самом деле больше вредны, чем полезны,
  3. Антон Кекс — Как нам спасти Java? — Часть 2 — о проблемах Java, о том как можно сделать Java лучше, какие привычные подходы программирования в Java на самом деле больше вредны, чем полезны,
  4. Николай Чашников — Писать код быстрее, ошибаться реже
  5. Николай Чашников — Разработка API в Java-проекте
  6. Николай Алименков — Парадигмы ООП
  7. Михаил Ершов — Разработка совместимого API
  8. Nikolay Chashnikov — Write code faster with fewer errors: is it possible? — как избегать ошибок при написании кода,


7.2 Архитектура, бизнес правила, бизнес модель и примеры приложений


  1. Антон Кекс — Архитектура интернет-банка без Enterprise
  2. Константин Кривопустов — Выбор технологий для корпоративного приложения
  3. Александр Тоболь — Платформа для видео сроком в квартал
  4. Антон Кекс — Как я создал desktop-приложение на Java, скачанное 9 миллионов раз
  5. Виктор Полищук — JBoss Drools Expert против грязи — описание системы управления бизнес правилами JBoss Drools
  6. Дмитрий Завалишин и Александр Шлянников — Java-технологии в Digital Zone — примеры реализаций приложений в Digital Zone (использование груви скриптов для гибкой настройки бизнес модели системы приложения такси)
  7. Яков Сироткин — Почему геномный ассемблер нельзя написать за выходные? — история разработки геномного ассемблера
  8. Яков Сироткин — История релизов — продолжение истории разработки геномного ассемблера
  9. Евгений Борисов — eXtreme Application Platform (XAP)
  10. Барух Садогурский — Bintray: Масштабируемый сервис в облаке с нуля
  11. Anatoliy Sokolenko — Key Problems of Microservice Architecture — что такое сервисы и микросервисы, как их реализовать на практике, чем это лучше стандартной архитектуры и какие проблемы возникают при такой архитектуре,
  12. Izzet Mustafaiev — Fault tolerance – look, it’s possible!
  13. Oleg Tsal-Tsalko — Distributed systems and scalability rules
  14. Baruch Sadogursky — Everything you wanted to know about async HTTP apps in Java — о написании асинхронного менеджера загрузок с параллельной загрузок файлов, одного файла, прерывания и паузы для программы репозиторий
  15. Maxim Ivanov — Hey, I’ve seen something like it before! — подходы к принятию архитектурных решений. Хайп (использования модных базвордов — микросервисов, nosql и т.п. ради базвордов) и его последствия для архитекторов.


7.3 Тестирование приложений


  1. Глеб Смирнов — Мутационное тестирование, или О чём молчит Code Coverage — описание почему 100% Code Coverage у Unit тестов не гарантирует правильную работу кода, что такое мутационное тестирование и как оно помогает улучшить Unit тесты, описание мутационной системы pitest (http://pitest.org/)
  2. Алексей Рагозин — Как и зачем эмулировать распределённый кластер в JVM — описание библиотеки, которая позволяет для задач Unit тестирования эмулировать распределённый кластер на одной ноде
  3. Алексей Рагозин — Сеть — это большая JVM — часть 2 лекции » Как и зачем эмулировать распределённый кластер в JVM "
  4. Mikalai Alimenkou — «TDD for database related code, how is it possible?» — описание TDD методологии
  5. Katya Kameneva — How I lost my QA job — о внедрении TDD технологий
  6. Dmytro Chyzhykov — Testing Web Apps with Spring Framework — тестирование Spring MVC приложений
  7. Андрей Солнцев — Пацан накодил — пацан протестил!


8. Прочее


  1. Алексей Вишенцев и Илья Агошков — Advanced Deployment
  2. Дмитрий Черепанов — Self-contained Application
  3. Сергей Куксенко — Quantum Performance Effects
  4. Кузьма Деретюк — UrsaJ HTTP File Storage
  5. Дмитрий Чуйко — Java Mission Control
  6. Igor Khotin — The Craft of Metaprogramming on JVM — о метапрограммировании в Java


Update: Внимание, актуальная версия со всеми ссылками на видео находиться теперь в моем github'e проекте useful-java-links, по этой ссылке.

Автор: @vedenin1980
Luxoft
рейтинг 104,81

Комментарии (26)

  • +9
    Когда учишь программирование по видеоурокам

    image
    • +8
      Это не уроки, это выступления по теме. Разница как между учебником по физике и конференцией по вопросам свойств планетных систем других звёзд.
  • –4
    большое спасибо, положил в копилку полезностей для своих джунов
    • +8
      Можно подумать для вас тут вообще ничего полезного нет.
  • –2
    Угу… Не подсчитаете общую продолжительность видео? Наверное, хватит убить время на весь год. No, thanks.

    Лучше бы буковками писали. Это, конечно, требует от авторов больших усилий, но намного полезней для обучающихся.
    • +6
      250 видео. Если смотреть по одному в день, то почти на треть меньше года. Ну и, например про юнит-тестирование буковками получилось бы гораздо хуже.
    • +3
      Не подсчитаете общую продолжительность видео

      Что-то около 200 часов, то есть на пару недель non-stop просмотра, но… никто же не предлагает смотреть все и сразу (все равно, все технологии Java в совершенстве не знает, наверное, практически никто), плюс большинство видео докладов можно не смотреть, а слушать фоном, занимаясь рутиными делами или во время поездки на работу.
  • +6
    Спасибо огромное! Ролики крайне интересные!

    На случай, если на хабре есть ещё кто-то, кто думает, что видеофайлы надо хранить на своём компьютере, а не непонятно где в интернете, я сделал файл со списком ссылок. Он человекочитаем, названия и разделы там сохранены. Этот файл можно скормить программе youtube-dl, она всё скачает. Вызывать её нужно из командной строки, примерно так.

    youtube-dl --encoding UTF-8 -a java_urls.txt
    

    encoding нужен, чтобы в названиях файлов не терялись русские буквы, может будет работать и без этого, но мало ли.
    • +3
      видеофайлы надо хранить на своём компьютере

      К сожалению, да, видео на ютубе имеют свойство иногда исчезать.
  • +4
    Не будет видео про scala, так как scala это целый отдельный мир

    В таком случае, почему Groovy, Kotlin и Clojure отказано в отдельном мире? Они, в принципе, точно так же имеют свои компиляторы, и генерируемый ими код точно так же бежит под JVM.

    Дискриминация, однако.
    • +2
      Не скажу про Kotlin и Clojure, но вот Groovy сильно совместим с джавой. Наверное как С с С++. Scala она не такая.
      • 0
        А в чем scala не такая? bytecode то один.
        • 0
          Синтаксисом. Код на джаве зачастую также является кодом на груви. Как Си код часто является одновременно кодом на С++. А scala, насколько я знаю, всё не так.
      • 0
        у Котлина очень высокая степень интероперабельности с Java, что и облегчает переход на него
    • +2
      Скажем так, видео по scala (в отличии от Groovy, Kotlin и Clojure) было слишком много чтобы я смог осилить квалификацию ещё и этого видио. Так что никакой дискриминации, простая практичность.
  • 0
    Ну что же, теперь отсмотрю их и стану супер-специалистом. Осталось найти вторую жизнь на просмотр… Спасибо!
  • –1
    Краткое содержание поста:
    1. есть три клевых Youtube-канала у JUG.ru, JEEconf и Java Day Kiev.
    2. Ах да, и у Luxoft Training Center тоже, тоже есть свой канал!!!

    Классификация, проделанная автором, просто смешна.
    Отбор видео отвретительный.

    Спасибо, конечно, что вы включили в этот пост 90% наших видео, включая откровенный шлак (да-да, шлак у нас иногда случался). Я вот только не понимаю, зачем вы включили сюда откровенно говено записанные видео типа вот этого вместо нормально записанного видео этого же доклада на JUG.ru. Ну и зачем вы включили сюда 20 откровенных дублей и повторов.

    Короче, дешевая работа.
    • +1
      Дайте пожалуйста ссылку на нормально записанное видео на JUG.ru. И скажите пожалуйста, когда вы говорите мы, какую организацию вы представляете?
      • 0
        Видео — вот, например.

        Мы = JUG.ru
    • +1
      Классификация, проделанная автором, просто смешна.

      Сделайте другую не смешную хотя бы для своего канала. Скажем в Jeeconf ко всем видео файлам в канале youtub'а есть нормальное описание (пусть и на английском), у JUG только название вроде «Сжимай меня полностью». Вот как догадаться о чем эта лекция? Пересматривать все сотни часов подряд пытаясь найти нужную? Пусть классификация смешная, но она есть и на неё можно ориентироваться, а не просто «смотрите все видео канала подряд в надежде найти полезное „

      вы включили в этот пост 90% наших видео, включая откровенный шлак (да-да, шлак у нас иногда случался).

      Простите, но этот шлак с вашего официального youtube канала. Кто же заставляет выкладывать туда шлак? Честно говоря я надеялся что организаторы конференций отвечают за качества того что выкладывают под своих логотипом, поэтому как раз с JUG'a старался не убирать видео, в отличии от остальных источников.

      зачем вы включили сюда откровенно говено записанные видео типа вот этого вместо нормально записанного видео этого же доклада на JUG.ru.

      Не вместо, а вместе. Так как если поищите “Андрей Паньгин», то найдете то видео ссылку на которое вы дали ниже. Если откроете и то и другое видео то там даже начало совершенно разное, не говоря уже про вопросы к докладчику.

      Ну и зачем вы включили сюда 20 откровенных дублей и повторов.

      Затем, что как бы вам не хотелось, JUG не единственная конференция в русскоязычном инете, если доклад называется по другому, был прочитан на другой конференции и докладчику задавали другие вопросы — это совсем другой доклад. Откровенные дубли с одинаковыми докладчиками и названиями, я старался убирать, но не похожие доклады на разных конференциях. Я так понимаю, основная претензия зачем я вообще включал в обзор какое-то видео кроме JUG'a и рассказывал что бывают и другие конференции?

      Короче, дешевая работа.

      Не буду спорить про фламастеры, сделайте статью с описанием и классификацией видео с вашего канала лучше и подробнее. Я первый вам скажу спасибо. Ну… или хотя бы добавьте нормальные описания в вашем youtube канале, по которым можно было найти нужное видео.
    • +1
      Да, кстати:

      Классификация, проделанная автором, просто смешна.

      Если у вас есть конструктивные замечания, как сделать её лучше — пишите, я исправлю.

      включая откровенный шлак

      Опять-таки, ну кто мешает написать мне в личку и попросить удалить видео c канала JUG'a, которые вы сами считаете шлаком?

      есть три клевых Youtube-канала у JUG.ru, JEEconf и Java Day

      Знаете больше хороших русскоязычных каналов — напишите, я не нашел, хотя искал.
      • 0
        Вы просто перечислили все (ну или почти все) видео с канала JUG.ru, добавив по десятку видео с других трех каналов. Если вы считаете, что это какая-то полезная работа — не вопрос, флаг вам в руки.
        • +1
          Хорошо, если настаиваете, я постараюсь максимально заменить видео с канала JUG на аналогичные доклады те же авторов с других конференций. Ваше реакция мне не очень понятна, но дело ваше.
          А степень полезности работы я предпочитаю оценивать по количеству пользователей добавивших статью в избранное.
          • +1
            поймите правильно, мне только на пользу, что 180 из 250 опубликованных вами видео — с нашего канала. Если хотите их заменить на аналогичные — удачи. Останется не 180, а 150, причем в большинстве случаев хуже по качеству. Несколько десятков похожих вы наверняка найдете на канале JEEconf. Так что наших все равно будет больше половины :)

            Странное чувство вызвало то, что вы, выложив своими ссылками весь или почти весь наш ютьюб-канал, не потрудились даже посоветоваться как-то с нами.
            • +2
              Ок, я вас понял, подумаю как исправить эту статью. Давайте свяжемся уже в личке и обсудим ваши предложения и замечания. Я всегда готов к любой конструктивной критики и предложениям?
  • 0
    Вот ещё по Котлину, там большей частью про сам язык, несмотря на название доклада.

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.

Самое читаемое Разработка