Автор статей Sergey Lagutin

Как работают имплиситы в Scala?

Как работают имплиситы в Scala

Программисты стремятся писать простой и понятный код. Чем меньше кода написано, тем меньше шансов, что в нём есть ошибка. Scala предлагает возможность писать ещё меньше кода и положиться на помощь компилятора. Это достигается за счёт неявных преобразований и неявных параметров. Но всё, что неявно, обычно вносит лишь непонимание. Давайте разбёремся, что скрывается за магией имплиситов в Scala.

Clickomania внутренняя ИТ-дуэль 2017: решение

Clickomania: Game board

Выдержка из правил:

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

Программная модель игрового поля была представлена в виде компонентов, состоящих из смежных ячеек одного цвета.

Хвостовая рекурсия в Scala

В этом посте я расскажу об интересной фиче функционального программирования - о хвостовой рекурсии. Но для начала вспомним, что такое вообще рекурсия. Итак, рекурсия - это описание некоего объекта, который является составной частью самого себя. Например, математическое выражение может содержать числовые операнды, арифметические операции и другие математические выражения.

В работе мы сталкиваемся с рекурсивными функциями. Для нахождения значения такой функции для определенного набора входных параметров требуется найти значение этой функции для другого набора входных параметров. Другими словами, это функция, которая вызывает сама себя. Самыми известными примерами рекурсий являются факториал (именно так утверждают большинство учебников по программированию) и числа Фибоначчи. Забудем о факториале и посмотрим, как выглядит реализации чисел Фибоначчи на Java:

Связаться