Недавно при работе над одним проектом у нас родился интересный код. Мы сразу же принялись тестировать наших коллег на смекалку, с просьбой объяснить что это, как работает и что делает. Даже опытных разработчиков этот код вгоняет в ступор (после пары минут истерического смеха). Итак, встречаем:
Прежде чем заглянуть под хабракат, попробуйте ответить на несколько вопросов (сделаем вид, что заголовок поста Вы не видели):
Ответили? Тогда ныряем под кат за предысторией и разъяснениями.
Action<Action> action = (Action action) => { action(); };
Прежде чем заглянуть под хабракат, попробуйте ответить на несколько вопросов (сделаем вид, что заголовок поста Вы не видели):
- На каком языке написан этот кусок кода?
- Верен ли он синтаксически? Скомпилируется ли он?
- Имеет ли данный код смысл? Что он делает?
- Зачем такой код мог быть написан?
- Как можно улучшить этот код? (Как бы его написали Вы?)
- Приведите реальные варианты использования этого кода.
- Какие потенциальные проблемы могут возникнуть при его применении?
Ответили? Тогда ныряем под кат за предысторией и разъяснениями.