Выпуск # 12>Творчество>Русский код, бессмысленный и беспощадный
Редактор не несет ответственность за достоверность информации в размещенном ниже тексе.

Написанное является никакой не провокацией, а наблюдениями натуралиста. Не бросайтесь скороспелыми выводами.

Встречаются профессиональные термины (программистские, психиатрические и матерные).

Я, между прочим, опять работу поменял, позвонили старые знакомые и спросили, не ищу ли я, где глубже. Я подумал, и сказал, что, вообще-то, не ищу, но ради вас - пожалуйста. Там более, что индусский код на последнем месте уже давно привел меня в состояние, в котором ни боли, ни эмоций не чувствуешь.

Оказалось, я ошибался, может быть куда хуже, я всегда в таких случаях ошибаюсь.

Вот скажем, индус. Ему дали задание - напиши код, который проведет, допустим, прямую от А до Б. И что вы думаете - прямая будет проведена. С использованием всех известных индусу технологий, которых больше, чем позиций в Камасутре. Например, на последней работе данные читались и писались в базу с использованием JDBC, JDO, EJB и Hibernate, иногда одновременно. Что поразительно, все это работало - из точки А в точку Б. Иное дело, если бы вдруг потребовалось провести еще одну прямую, допустим, еще и в точку Ц, тут весь продукт пришлось бы переписывать. Как мосты и тоннели никто не проектирует на многофункциональность, так же и индусский код, сплошная железная дорога без стрелок. Нужно - прокладывай новую, семью всем кормить надо, проектов мало, индусов много.

Хуже индусского кода может быть только код европейский, особенно голландцев или датчан. Это тоже объяснимо, у них источники вдохновения легализованы. Из точки А в точку Б никто никуда не едет, зато есть framework. В котором можно задать plug-in, который конфигурирует другой plug-in, который читает третий plug-in и посылает event четвертому, а тот уже знает, что делать. Через Inversion of Control, так интереснее. Я как-то цитировал одно европейское творчество, и, по-моему, это достойно повторения:
Before describing the configuration aspects of components (...), component types and implementations are described, since it is aspects of the component type that are configured by components – and the configurable aspects are defined by the component type.
И это только документация, а исполнение, поверьте моему горькому опыту, еще затейливее.
>>>
К списку статей

в игру
[0.0127]