-Подписка по e-mail

 

 -Поиск по дневнику

Поиск сообщений в rss_habr

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 15.08.2006
Записей:
Комментариев:
Написано: 55


Builder на Kotlin c контролем наборов значений при компиляции

Пятница, 24 Июня 2022 г. 11:36 + в цитатник

Допустим, у нас есть MediaRecorder. Он должен уметь записывать видео, аудио, или и то и другое. При этом, параметры для видео- и для аудиозаписи, конечно же, отличаются.

Конечно, для решения этой проблемы, можно просто использовать обычный Builder (см. MediaRecorder в Android, там так и сделано), но тогда возникает две проблемы:

Для записи видео требуется указать набор параметров, который становится необязательным, если мы записываем только аудио (и наоборот), и это надо как-то контролировать.

Один параметр может "тянуть" за собой другие. К примеру, если мы укажем noiseReduction = true, то нам следует указать и noiseReductionLevel, либо ни то, ни другое. При реализации "стандартного" Builder такие проверки можно написать, но выполнятся они уже будут при сборке объекта, то есть при выполнении, а хотелось бы, чтобы все параметры проверялись при компиляции.
В этой заметке описан такой сборщик.

Читать про сборщика

https://habr.com/ru/post/673066/?utm_source=habrahabr&utm_medium=rss&utm_campaign=673066

Метки:  

 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку