?

Log in

No account? Create an account
записи друзья календарь о пользователе Homepage назад назад вперёд вперёд
--!!-- - Hook-nosed
sema
--!!--
На любые вопросы даем любые ответы... Ага-ага.
А потом на интервью человек говорит: Дело в том, что специфика моей текущей работы такова, что я почти никогда не делаю ни new ни delete, поэтому я не очень разбирался в том как работают конструкторы и деструкторы... (реальная фраза реального человека)

тэги :
Comments
piggymouse From: piggymouse Date: April 3rd, 2003 12:26 am (UTC) (ссылка)

Про сцепифику текущей работы — фраза века, однозначно!

А вот ещё популярный синдром.

sema From: sema Date: April 3rd, 2003 12:31 am (UTC) (ссылка)
Еще один реальный рассказ - человек пошел на интервью, на котором работодатель на вопрос о предполагаемом языке разработки выдал в ответ фразу: вообще-то мы пишем на C++, но с классами еще не разобрались
oxfv From: oxfv Date: April 3rd, 2003 12:46 am (UTC) (ссылка)
Мой бывший (ныне сокращенный) начальник, по совместительству - преподаватель С++ в каком-то колледже, когда я его интервьюировал, на мой вопрос "Как вы думаете, не следует ли софтверной группе искусственно ограничить подмножество используемого языка с целью не вводить в заблуждение более слабых участников?" ответил: "Да, конечно, я считаю, что использовать виртуальную функцию можно только при наличии весьма веских причин". Хороший был начальник, причин для виртуальных функций не находил, зато программировать не пытался, не мешался под ногами. А теперь я сам этот начальник...
dmierkin From: dmierkin Date: April 3rd, 2003 08:05 am (UTC) (ссылка)
этому конца нет. несколько лет назад мне запретили пользоваться темплейтами, потому что начальник не понимал как они работают. а вот недавно мне предложили найти книгу с подтверждением что алгоритм trie существует.
From: ex_ilyavinar899 Date: April 3rd, 2003 01:02 pm (UTC) (ссылка)
Sedgewick. Algorithms in C.
passing From: passing Date: April 3rd, 2003 03:30 pm (UTC) (ссылка)
В чем-то они правы.
Я вот сейчас нахожусь в Страшном Месте где "программисты" с очень маленькой буквы "п" ваяют нечто, о чем мы не будем говорить.
Поскольку народ полуграмотный и разношерстный, каждый невежественен по своему. За отсутствием управления разработкой все тянут свое и потом, когда наступает пора все ето складывать вместе - диву даются. Т.е. например - часть проекта обрабатывает множество текстовой информации (или скорее просто строк). В зависимости от модуля строки будут C-strings, C++ String-s, или же местного пошива баферы (длина + данные). При стыковке все это должно перетекать из пустого в порожнее регулярно. Жуть..

В таком вот месте ограничение абстракций/структур/методов которые можно использовать пошло бу очень даже на пользу. В целом, если коллектив не "на уровне" и следовательно не способен приходить к (одним и тем же, стандартным) разумным решениям для стандартных же проблем - надо их загонять на узкую дорожку, дабы не разбрелись вовсе.
dmierkin From: dmierkin Date: April 4th, 2003 07:31 am (UTC) (ссылка)
отсутствие архитектуры, coding standards и т.д. не заменить "наименьшим общим кратным". писать как наихудший не есть правильный метод.
passing From: passing Date: April 4th, 2003 08:41 am (UTC) (ссылка)

Re:

Не заменить - но по крайней мере немного уменьшить проблемы. Поскольку идеальное решение - истребление плохих/глупых программистов (или, как в случае этих - просто людей которым наплевать) видимо невозможно.

Как законы - если люди сами себя не ограничивают, нужны ограниченя извне...дабы не..:))
muchandr From: muchandr Date: January 6th, 2004 10:05 am (UTC) (ссылка)
В школе у нас пользовались субсетом C++, и правильно делали. C++ сосет как OOP язык и в нем много лишнего, а нужно было нечто простое и слегка обьектно-ориентированное, чтобы не заслонять языковыми наворотами важных концепций для начинающих программистов. Теперь на Javu перешли правда, по-моему зря.
avva From: avva Date: April 3rd, 2003 12:32 am (UTC) (ссылка)
Гениальная фраза!
Можно процитировать её вне замочка (с ссылкой или без ссылки на тебя, как тебе угодно)?
sema From: sema Date: April 3rd, 2003 12:33 am (UTC) (ссылка)
Конечно :)
пожалуй я и запись открою, мне не жалко..
hardsign From: hardsign Date: April 8th, 2003 12:10 am (UTC) (ссылка)

Специфика работы, при которой не употребляются new и delete - да, бывает, у меня самого такое было. Только самое смешное, что при этом конструкторы/деструкторы ведут себя несколько более непредсказуемо, чем без такой специфики. Пришлось разобраться, несмотря на то, что очень не хотелось...
sema From: sema Date: April 8th, 2003 12:27 am (UTC) (ссылка)
А могу я поинтересоваться, что же именно специфичного в поведении конструкторов/деструкторов в такой ситуации?
hardsign From: hardsign Date: April 8th, 2003 01:02 am (UTC) (ссылка)

Отчего же нет?

Специфичного в них то, что порядок выполнения конструкторов статических объектов непредсказуем, причём в языке не существует средств, чтобы этот порядок указать. О деструкторах речь не идёт, потому что они для этих объектов вообще не вызвывались. А проблема порядка вызова решается путём заведения функции, внутри которой объявлены статические объекты и вызова этой функции. Конструкторы локальных статических объектов в GNU C срабатывают только в момент вызова этих функций, а деструкторы вообще не срабатывают (возможно, этот баг уже поправлен). Как в других компиляторах - не знаю, там достаточно было new и delete ;) Кстати, есть ещё одна фишка - в ELF может быть секция, выполняющаяся до запуска основного кода. Она, в частности, может конструировать статические объекты. По умолчанию GNU C её не использует, а дёргает функцию инициализации из startup-библиотеки, которая прилинковывается к каждому модулю и весит больше 20К (в том проекте это было существенно). Тоже пришлось разбираться :))
_jps_ From: _jps_ Date: July 4th, 2003 12:05 am (UTC) (ссылка)
а зачем вообще _использовать_ delete? :)
читать[15] | ответить