Friday, October 28, 2016

Курс Spring Framework - The Basics

Когда-то давно я создал и вёл курс по основам Spring Framework. Это было где-то одновренно с курсами по Advanced Java. Однако запись курса была в плохом качестве, и поэтому я его не выложил. Чуть позже с помощью компании, где я работаю, мы создали MOOC курс, записав его в студии. Также, я его нормально структурировал, добавил домашнее задания, проверочные тесты и т.п. В общем, всё, чтобы плодотворно учиться. К сожалению, по определенным причинам я не смог его тогда дооформить для youtube и выложить. И вот наконец, этот день настал :)

Read More...

Wednesday, February 5, 2014

Thursday, September 19, 2013

Многопоточные коллекции в Java

Начиная с версии Java 5 в пакете java.util.concurrent появились реализации коллекций для эффективной работы в многопоточных приложения. Эти коллекции используют различные неблокирующие алгоритмы для достижения высокой скорости чтения/записи значений. Синхронизированный доступ происходит крайне редко и в целом не влияет на производительность. Почти. В зависимости от реализации. :) Рассмотрению таких коллекций посвящен данный урок.

Read More...

Saturday, July 20, 2013

Интересные реализации интерфейса Map в Java

У интерфейса Map из Java Collections Framework есть несколько реализаций, и у некоторых из них есть очень интересные свойства, знание которых поможет Вам эффективно решать определенные задачи. Отличия между двумя распространенными реализациями - HashMap и TreeMap - такие же, как между HashSet и TreeSet (тем более, что последние реализованы на основе первых), и про них я уже рассказывал. В этом видео, я остановился на не-concurrent классах, таких как LinkedHashMap, EnumMap, WeakHashMap.

Read More...

Tuesday, July 16, 2013

Использование HashSet и TreeSet

HashSet и TreeSet - две наиболее распространенные реализации интерфейса Set в Java Collections Framework. Первая основана на использовании функции hashCode и структуры данных “хеш-таблица”, вторая - на основе сравнения элементов и структуры данных “бинарное дерево” (точнее красно-черное дерево). Знание и понимание отличий этих структур данных необходимо для любого программиста. К сожалению, многие лишь поверхностно рассматривают их, что приводит к созданию неэффективного кода, а  иногда и к багам. Познакомиться с этими и другими классами коллекций Java можно, посмотрев урок 10 из курса Java для тестировщиков. Для детального изучения необходимо читать дополнительную литературу. В данном видео Вы познакомитесь с некоторыми особенностями этих классов, незнание которых может привести к возникновению ошибок или изобретению новых “велосипедов”.

Read More...

Monday, June 10, 2013

Курсы Advanced Java

Опыт общения с различного уровня программистами на языке Java - как на собеседованиях, так и просто в дружественной обстановке - показал наличие некоторых пробелов в знаниях особенностей языка, а также его инструментов. В целом, причины этого вполне объяснимы – ведь, если все время программируешь, например, web-интерфейсы, то не будешь особо задумываться над различными способами взаимодействия с базами данных или обеспечения эффективного чтения/записи файлов. Однако, никогда не знаешь, к чему может привести очередной виток в карьере. Поэтому хорошее владение выбранным языком программирования и знание его особенностей просто необходимо, чтобы не изобретать повторно велосипеды и не ощущать удары грабель по уже набитым шишкам. Выделив отдельные темы из области Java Core, в которых было замечено большего всего пробелов, а также которые, возможно, сложны для понимания из-за отсутствия практики, я создал курс Advanced Java, который и представляю Вашему вниманию.

Read More...

Monday, November 5, 2012

Java Практика - Занятие 9

На девятом занятии мы практиковались собирать проект с помощью Apache Ant. Про Ant и про Maven я рассказывал на последнем 19 уроке из курса Java для Тестировщиков. В этот раз мы более подробно остановились на создании скрипта сборки, написали скрипт "с нуля" для очень простого Java проекта и рассмотрели основные цели Ant. Чтобы не объяснять все это "на пальцах" и не писать много текста на доске, я воспользовался Eclipse, где сразу в IDE и показывал, как что делать.

Read More...