beldmit: (Программизм)
[personal profile] beldmit
Вдогонку к этой
и немного этой записям. И еще немного к боковому хвосту у Витуса.

Один из типичных приемов собеседования с программистами - показ зубодробительной конструкции на языке, на котором собирается программировать соискатель, и вопрос, что она делает. Наиболее часто мне попадался C-шный пример, когда вместо переменной объявлялась функция.

Так вот, господа. Когда вам показывают такой пример (если он выходит за пределы разумного понимания языка и знания ключевых слов или общепринятых идиом), то скорее всего - одно из двух.

1. Собеседующий пытается срезать соискателя. То есть самоутвердиться. Вам нужен такой начальник?
2. Код реально используется в проекте? Вы действительно хотите это поддерживать?

Да, и главное, без чего пп.1-2 не действуют. Понимать, что предъявленный пример собой представляет - все-таки надо. Чтобы было ясно, что объявлена таки переменная, а не функция.

Date: 2009-03-06 07:10 pm (UTC)
From: [identity profile] beldmit.livejournal.com
Так вот, мне в среднем удобнее конструкция if-else, особенно если стиль кодирования не требует по строчке на скобку. И даже в этом случае удобнее.

Приведенный тобой вариант удобнее, если эта конструкция с гарантией не подлежит смене. Да, бывает.

Date: 2009-03-06 07:18 pm (UTC)
arilou: (at Zilant'07)
From: [personal profile] arilou
Ну вот мы, в итоге, сошлись на противопоставлении наших "мне удобнее". Я своё удобство, кстати, чуть подробнее объяснил (т.е. это не из разряда чисто эмоционального восприятия "на вкус и цвет"). Верю, что и у тебя есть свои объяснения.

Но это всё выводит данный пример из разряда "зубодробительного кода", пригодного лишь для конкурса obfuscater'ов.

Это я просто к тому, что не стоит смешивать понятия "мне это невкусно" и "это несъедобно и вредно". ;)

Date: 2009-03-06 08:20 pm (UTC)
From: [identity profile] beldmit.livejournal.com
Да, хотя в исходном посте имел в виду именно объективно плохо поддерживаемые конструкции.

Пример такой конструкции в Perl - цепочка из 3+ map/grep.

Profile

beldmit: (Default)
Dmitry Belyavskiy

December 2025

S M T W T F S
 123456
78910111213
14151617181920
2122 2324252627
28 29 3031   

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Feb. 10th, 2026 02:52 pm
Powered by Dreamwidth Studios