Re[15]: А разве в OpenSource бывают собеседования? :)
От: Erop Россия  
Дата: 21.06.08 16:35
Оценка:
Здравствуйте, LordMAD, Вы писали:


LMA>Если так рассуждать, то стоит вместо

LMA>
LMA>a += b;
LMA>

LMA>писать
LMA>
LMA>a = a + b;
LMA>

LMA>(конечно при условии одинакового результата, что верно в большинстве, наверное, случаев) потому, что для тех, кто "пришел" с других языков программирования так понятнее?

Я думаю, что так писать можно, но в целом не нужно. Конструкция "+=" очень простая и широко известная, в отличии от точек следования...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[15]: Месье ещё и с формальной логикой не дружит?
От: Erop Россия  
Дата: 21.06.08 16:41
Оценка:
Здравствуйте, LordMAD, Вы писали:

E>>Выпиши её, пожалуйста, для двух операций: "?:" и ","...

E>>>>Если у "?:" приоритет выше, чем у "," то поясни пожалуйста, почему вторая запятая обрабатывается так, словно она имеет более высокий приоритет, чем "?:"

LMA>Я не пойму к чему это ты. Пусть у тебя приоритет "?:" получится 101, а у "," — 103 (меньшее значение соответствует более высокому приоритету), что дальше? Что ты хочешь сказать?


Я так тебя понял, что для этих двух операций таблица приоритетов выглядит так, как я выделил у тебя?
Тогда, согласно этой таблице, в выражении
p, q ? p, q : p, q
скобки должны быть расставлены так
p, (q?p), (q:p), q
но это таки не верно. Это одна из причин, почему подход с приоритетами в С++ выражениях не работает. Работает подходь с грамматиками.
Увы.

E>>То есть ты ссылаешься на то, что корректность С++ выражений и порядок применения операций определяется не приоритетами, а некими грамматиками? Несводимыми, при этом, к понятию "приоритет операции"? Если так, то это обозначает, что приоритетов операций в С++ нет...


E>>Пока что ты не прошёл лично мой ценз на соответствие уровня знаний С++ и уровня понтов по этому поводу

LMA>Взаимно.
Ну процитируй стандарт С++, где там вводятся приоритеты операций, пжлст...
Или ты намекаешь на то, что я слишком мало понтуюсь?
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[20]: Программирование деятельность целенаправленная....
От: LordMAD Россия  
Дата: 21.06.08 17:14
Оценка:
Здравствуйте, Erop, Вы писали:

E>Не знаешь, а говоришь... Думаешь так ведут себя мудрые люди?

Ты оставляешь такое право только за собой?

LMA>>У меня нет боязни критики, не суди по себе о других. Просто объяснять прописные истины желания нет. А тебе видать нравится из букваря цитаты в исходники вставлять, что у вас за килобайты кода примии дают?

E>А что тогда обозначают всякие рассуждения про _ЭТО_, которое будет ТЕБЯ критиковать...
Критика бывает конструктивной, а бывает неконструктивной. Первую я приветствую; вторая меня раздражает, потому что приходится тратить время на ответ.

E>Я тоже выделил слово НЕЛЬЗЯ...

Тогда обоснуй — почему категорично НЕЛЬЗЯ?

LMA>>Ага, в духе: почему у вас тут x*(x-1) — мы хотим цикл.

E>IMHO, это значит, что надо написать комментарий... Но вообще-то вопрос довольно глупый. Показывает что задающий вопрос не разобрался. А ещё показывает, что ты написал код эффективный, но непонятный -- есть куда расти...
Если какому-то НЕУЧУ этот код непонятный, то почему я должен тратить свое время (а следовательно — деньги заказчика), на то, чтобы объяснять ему это (в виде комментария), а не ему купить "букварь", научится программировать, и только после этого подходить к моему коду "ближе, чем на 10 метров"?

LMA>>Может мне просто с новичками не везет, а у других таких проблем не бывает?

E>IMHO, ты просто не умеешь работать с людьми. Например, не умеешь заваёвывать у них авторитет. Иначе тебе бы не задавали дуратских вопросов, не попробовав предварительно разобраться самостоятельно.
У меня такая специфика работы, что (для части проектов) я человека который будет смотреть мой код не видел, не вижу и никогда не увижу (и, кстати, даже не знаю какой язык для него родной). То, о чем ты пишешь, хорошо для локальных проектов, а с ними как раз проблем нет (отчасти как раз авторитет помогает, хотя иногда как раз прошу более критически смотреть по этой причине).

E>С другой стороны объяснить тот или иной приём в целом не долго...

Каждый может и не долго... а на все уходит приличное количество времени, в чем и проблема.

E>IMHO, это говорит о том, что в вашей конторе очень плохо поставлена организация труда. Ко мне люди с улицы с вопросами "а почему вот у вас там написанно" не подходят...

Речь идет о запросах от заказчика. И что нужно поменять в нашей конторе, чтобы такого не было?
Re[21]: Программирование деятельность целенаправленная....
От: Erop Россия  
Дата: 21.06.08 17:21
Оценка: +1
Здравствуйте, LordMAD, Вы писали:

E>>Я тоже выделил слово НЕЛЬЗЯ...

LMA>Тогда обоснуй — почему категорично НЕЛЬЗЯ?
Ну смотри выше по ветке

Стетная о доставших нашего д'Артаньяна НЕУЧАХ я опустил...

E>>IMHO, это говорит о том, что в вашей конторе очень плохо поставлена организация труда. Ко мне люди с улицы с вопросами "а почему вот у вас там написанно" не подходят...

LMA>Речь идет о запросах от заказчика. И что нужно поменять в нашей конторе, чтобы такого не было?
Писать более понятный и более полно документированный код...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[20]: Компромисс между чем и чем?
От: LordMAD Россия  
Дата: 21.06.08 17:31
Оценка:
Здравствуйте, Erop, Вы писали:

E>Я с этим не спорю. Я спорю с тем, что при написании кода нужно использовать направленные на его преднамеренное запутывание трюки, вроде "delete x, y, z"

Я не говорю, что НУЖНО, а говорю, что хочу такое себе позволить (не от хорошей жизни).

E>Ты таки занимаешься аутсорсингом или OpSo?

Те, проекты, о которых идет речь (есть обозначенная проблема) — аутсорсинг. Хотя это не основная моя работа.

LMA>>Административные пути — самые неэффективные. Точнее это просто не работает в больших распределенных командах.

E>Это неправда. Правда то, что аутсорсерам обычно очень сильно не хватет нормальной организации разработки. Во всяком случае так каждый раз было, когда я заказывал какую-нибудь часть проекта аутсорсерам. Обычно российские аутсорсеры имеют неплохих разработчиков и совсем ни на что не годный менджмент, особенно менеджмент среднего звена. В конце концов мне больше всего понравилось заказывать аутсорсерам разработку, при условии, что менеджеры будут мои, а не их.
Тогда просвяти — что правильные менеджеры должны в такой ситуации делать? Лично у меня устойчивое мнение, что вероятность того, что бывают правильные менеджеры меньше чем вероятность того, что Дед Мороз существует.
Re[16]: А разве в OpenSource бывают собеседования? :)
От: LordMAD Россия  
Дата: 21.06.08 18:09
Оценка: :))
Здравствуйте, Erop, Вы писали:

E>Наоборот. Список контекстов, где запятая уместна.

Это непринципиально.

E>Обычно этот список состоит из лдного пункта -- третьей части оператора for...

-1
Как минимум, в голову сразу еще приходят "первая часть for" и переопределенный "operator,"
В общем случае запрещать использовать запятую почти всегда — это означает попросту не доверять программистам "решать на месте", что возможно в работе только с новичками, IMHO.

E>Какой код? "delete x, y, z"?

Нет, это же я только собираюсь...

LMA>>То, что одна мысль не размазана на две строки — это усложнение?

E>Если тебе так критично написать это на одной строке, напиши через ";". Так всё равно будет понятнее, чем с запятой.
Это практически тоже, что писать в две строки.
Re[16]: А разве в OpenSource бывают собеседования? :)
От: LordMAD Россия  
Дата: 21.06.08 18:19
Оценка:
Здравствуйте, Erop, Вы писали:

E>Я думаю, что так писать можно, но в целом не нужно.

Что-то грань уж слишком размытая.
E>Конструкция "+=" очень простая и широко известная, в отличии от точек следования...
Ну хорошо, а то я уж боялся, что и
a += b += c;

тебе не понравится.
Re[16]: Месье ещё и с формальной логикой не дружит?
От: LordMAD Россия  
Дата: 21.06.08 18:41
Оценка:
Здравствуйте, Erop, Вы писали:

E>>>Выпиши её, пожалуйста, для двух операций: "?:" и ","...

E>>>>>Если у "?:" приоритет выше, чем у "," то поясни пожалуйста, почему вторая запятая обрабатывается так, словно она имеет более высокий приоритет, чем "?:"

LMA>>Я не пойму к чему это ты. Пусть у тебя приоритет "?:" получится 101, а у "," — 103 (меньшее значение соответствует более высокому приоритету), что дальше? Что ты хочешь сказать?


E>Я так тебя понял, что для этих двух операций таблица приоритетов выглядит так, как я выделил у тебя?

E>Тогда, согласно этой таблице, в выражении
p, q ? p, q : p, q
скобки должны быть расставлены так
p, (q?p), (q:p), q
но это таки не верно. Это одна из причин, почему подход с приоритетами в С++ выражениях не работает. Работает подходь с грамматиками.

E>Увы.
Нет. Скобки должны быть расставлены так:
p, (q ? p, q : q, q)

Просто вторым и третьим аргументом оператора "?:" являются выражения, а не значения — что я уже писал выше.

E>>>То есть ты ссылаешься на то, что корректность С++ выражений и порядок применения операций определяется не приоритетами, а некими грамматиками? Несводимыми, при этом, к понятию "приоритет операции"? Если так, то это обозначает, что приоритетов операций в С++ нет...

Собственно это "старо как мир": когда Страуструп написал в своей "The C++ Programming Language" про то, что это не может быть сведено к одним лишь приоритетам — его об этом самого расспрашивали в одном из интервью — можешь найти его ответ. Все это не означает, что приоритетов не существует, это означает, что кроме приоритетов есть кое-что еще.

E>Ну процитируй стандарт С++, где там вводятся приоритеты операций, пжлст...

Я уже написал, что приоритетов там нет. Если что-то явно не вводится в стандарте, то это значит, что этого в том, о чем стандарт, нет?
Там и "оператора for" нет, о котором ты писал:
E>>Обычно этот список состоит из лдного пункта -- третьей части оператора for...
Re[21]: Компромисс между чем и чем?
От: Erop Россия  
Дата: 21.06.08 18:43
Оценка:
Здравствуйте, LordMAD, Вы писали:

LMA>Тогда просвяти — что правильные менеджеры должны в такой ситуации делать? Лично у меня устойчивое мнение, что вероятность того, что бывают правильные менеджеры меньше чем вероятность того, что Дед Мороз существует.

Грамотно выполнять свою работу
Прагматически организовыватьпроцесс разработки ПО, так чтобы он обеспечивал качество и скорость разработки. В частности неплохо бы добиться такого положения вещей, чтобы разработчики понимали и разделяли ценности и цели осуществляемой разработки
Это правда сложная довольно и высококвалифицированная работа. В общих словах такое знание передаётся IMHO плохо. Это как высшей математике в чате учить
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[17]: А разве в OpenSource бывают собеседования? :)
От: Аноним  
Дата: 21.06.08 18:44
Оценка: +3 :)
Здравствуйте, LordMAD, Вы писали:

LMA>Здравствуйте, Erop, Вы писали:


E>>Я думаю, что так писать можно, но в целом не нужно.

LMA>Что-то грань уж слишком размытая.
E>>Конструкция "+=" очень простая и широко известная, в отличии от точек следования...
LMA>Ну хорошо, а то я уж боялся, что и
LMA>
LMA>a += b += c;
LMA>

LMA>тебе не понравится.

Определенно, LordMAD впечатления опытного профессионала не производит, скорее всего просто подросток с комплексами.
Крайне мала вероятность, что он действительно участвует в коммерческих проектах, в виду отсутствия минимальных коммуникативных навыков и мании величия.
Re[17]: А разве в OpenSource бывают собеседования? :)
От: Erop Россия  
Дата: 21.06.08 18:56
Оценка:
Здравствуйте, LordMAD, Вы писали:

E>>Обычно этот список состоит из лдного пункта -- третьей части оператора for...

LMA>-1
LMA>Как минимум, в голову сразу еще приходят "первая часть for"
Приведи, пожалуйста, пример, когда оператор "запятая" в этом месте уместна...
При этом именно оператор "запятая", а не декларация нескольких переменных через запятую...

LMA>и переопределенный "operator,"

Обычно свои писать нельзя. А библиотечные можно, если можно использовать соответсвующие библиотечные средства.

LMA>В общем случае запрещать использовать запятую почти всегда — это означает попросту не доверять программистам "решать на месте", что возможно в работе только с новичками, IMHO.

В чём продлема? Убеди своего начальника в целесообразности использования запятой и используй

E>>Какой код? "delete x, y, z"?

LMA>Нет, это же я только собираюсь...
Ну ты просто про какие-то многочисленные ревю пройденные этим кодом писал...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[17]: А разве в OpenSource бывают собеседования? :)
От: Erop Россия  
Дата: 21.06.08 18:58
Оценка: +1
Здравствуйте, LordMAD, Вы писали:

LMA>Ну хорошо, а то я уж боялся, что и

LMA>
LMA>a += b += c;
LMA>

LMA>тебе не понравится.

И не зря боялся. Так писать НЕ НАДО!
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[22]: Программирование деятельность целенаправленная....
От: LordMAD Россия  
Дата: 21.06.08 19:00
Оценка:
Здравствуйте, Erop, Вы писали:

LMA>>Тогда обоснуй — почему категорично НЕЛЬЗЯ?

E>Ну смотри выше по ветке
Там нет фактов, только мнения.

E>Писать более понятный и более полно документированный код...

Тратить больше своего времени на никому не нужные вещи... комментировать каждый чих... чтобы обычные программисты тонули в море ненужных им комментариев при просмотре моего кода... понятно... IMHO, вот это и есть саботаж.
Re[17]: Месье ещё и с формальной логикой не дружит?
От: Erop Россия  
Дата: 21.06.08 19:03
Оценка: +1 :)
Здравствуйте, LordMAD, Вы писали:

LMA>
LMA>p, (q ? p, q : q, q)
LMA>

LMA>Просто вторым и третьим аргументом оператора "?:" являются выражения, а не значения — что я уже писал выше.

Какие проблемы? Подставь вместо p и q какие-нибудь выражения

LMA>Собственно это "старо как мир": когда Страуструп написал в своей "The C++ Programming Language" про то, что это не может быть сведено к одним лишь приоритетам — его об этом самого расспрашивали в одном из интервью — можешь найти его ответ. Все это не означает, что приоритетов не существует, это означает, что кроме приоритетов есть кое-что еще.

А я на новизну и не претендую. Это не я писал, что если де С++ программист не знает приориетов операций, то он вообще последний лох. Я давно уже в курсе, что "нет никакой ложки", в смысле приоритетов операций...


E>>Ну процитируй стандарт С++, где там вводятся приоритеты операций, пжлст...

LMA>Я уже написал, что приоритетов там нет. Если что-то явно не вводится в стандарте, то это значит, что этого в том, о чем стандарт, нет?
Ну в целом да.
LMA>Там и "оператора for" нет, о котором ты писал:
E>>>Обычно этот список состоит из лдного пункта -- третьей части оператора for...
Это особенности переводной терминологии. Всего лишь. Правда я забыл, что ты по-русски и по-английски изъясняешься ещё хуже, чем на С++. Извини...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[17]: А разве в OpenSource бывают собеседования? :)
От: CreatorCray  
Дата: 21.06.08 19:03
Оценка: +1
Здравствуйте, LordMAD, Вы писали:

LMA>Ну хорошо, а то я уж боялся, что и

LMA>
LMA>a += b += c;
LMA>

LMA>тебе не понравится.
Не понравится. Это уже перебор.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Забанили по IP, значит пора закрыть эту страницу.
Всем пока
Re[23]: А в чём таки твоя цель?
От: Erop Россия  
Дата: 21.06.08 19:13
Оценка:
Здравствуйте, LordMAD, Вы писали:

E>>Писать более понятный и более полно документированный код...

LMA>Тратить больше своего времени на никому не нужные вещи... комментировать каждый чих... чтобы обычные программисты тонули в море ненужных им комментариев при просмотре моего кода... понятно... IMHO, вот это и есть саботаж.

Нет, писать ненужные комментарии на каждый чих тоже плохо. Программировать надо так, чтобы программа была и так ясна, без комментариев.
А вот нетривиальные места надо комментировать. Ещё крайне полезно комментировать семантику методов полей и функций, если она не очевидна из их названий...

Я тебя так понял, что у тебя уже был негативный опыт, что ты написал крутой, по твоему мнению код, а заказчик тебе прислал вопрос, почему так написано, а не прямо? Если я понял тебя правилбно, то я тебе советую как именно надо делать, чтобы твоему заказчику было удобнее. А ты хочешь зачем-то сделать так, чтобы ему не хотелось читать твои исходники вообще.

Таки в чём твоя цель? Помочь твоему клиенту или наоборот отомстить?
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[18]: А разве в OpenSource бывают собеседования? :)
От: Erop Россия  
Дата: 21.06.08 19:15
Оценка:
Здравствуйте, CreatorCray, Вы писали:

LMA>>
LMA>>a += b += c;
LMA>>

LMA>>тебе не понравится.
CC>Не понравится. Это уже перебор.

Я бы вообще сказал, что использовать результат оператора присваивания нужно только в том случае, если это действительно зачем-то нужно. И то сначала крепко подумать как бы этого избежать...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[22]: Компромисс между чем и чем?
От: LordMAD Россия  
Дата: 21.06.08 19:39
Оценка:
Здравствуйте, Erop, Вы писали:

E>Грамотно выполнять свою работу

Осваивали средства? С этим проблем нет.

E>Прагматически организовыватьпроцесс разработки ПО, так чтобы он обеспечивал качество и скорость разработки.

Ха, ха, ха... А как же треугольник "ресурсы, время, качество".

E>В частности неплохо бы добиться такого положения вещей, чтобы разработчики понимали и разделяли ценности и цели осуществляемой разработки

С ценностями и целями — неувязочка — они у менеджеров и у разработчиков разные. Я очень хорошо понимаю, почему менеджерам выгодно, чтобы код был "попроще". Впрочем, сейчас вспоминать Маркса и классовую борьбу не модно, так что не буду развивать эту тему...

E>Это правда сложная довольно и высококвалифицированная работа. В общих словах такое знание передаётся IMHO плохо. Это как высшей математике в чате учить

Есть такая фраза, которую припысывают Эйнштейну: если вы не можете объяснить что-то шестилетнему ребенку, значит, вы не понимаете это сами.
Re[23]: delete x, y, z; -- аналог булыжника? :)
От: Erop Россия  
Дата: 21.06.08 19:54
Оценка:
Здравствуйте, LordMAD, Вы писали:

LMA>Осваивали средства? С этим проблем нет.

Нет. Хороший менеджмент другим занимается. Вот с таким, который "средства осваивает" в российский аутсорсерах как раз проблем обычно нет...

LMA>Ха, ха, ха... А как же треугольник "ресурсы, время, качество".

А так, что повышай качество своей работы. Тогда у тебя треугольник будет лучше, чем у конкурентов..

Так ты "delete x, y, z" в качестве орудия классовой борьбы применять хочешь?

E>>Это правда сложная довольно и высококвалифицированная работа. В общих словах такое знание передаётся IMHO плохо. Это как высшей математике в чате учить

LMA>Есть такая фраза, которую припысывают Эйнштейну: если вы не можете объяснить что-то шестилетнему ребенку, значит, вы не понимаете это сами.
Ну так то 6-летнему ребёнку... А то тебе. У тебя мозг не так открыт объяснениям...

Но ты можешьпродемонстрировать класс и объяснить тут быстренько как на С++ программировать надо, так чтобы 6-летний ребёнок тоже понял
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[18]: А разве в OpenSource бывают собеседования? :)
От: LordMAD Россия  
Дата: 21.06.08 20:20
Оценка:
Здравствуйте, Erop, Вы писали:

LMA>>Как минимум, в голову сразу еще приходят "первая часть for"

E>Приведи, пожалуйста, пример, когда оператор "запятая" в этом месте уместна...
E>При этом именно оператор "запятая", а не декларация нескольких переменных через запятую...
Захват ресурса + декларация переменной цикла

LMA>>и переопределенный "operator,"

E>Обычно свои писать нельзя. А библиотечные можно, если можно использовать соответсвующие библиотечные средства.
?

LMA>>В общем случае запрещать использовать запятую почти всегда — это означает попросту не доверять программистам "решать на месте", что возможно в работе только с новичками, IMHO.

E>В чём продлема? Убеди своего начальника в целесообразности использования запятой и используй
Да у тебя отношение к программистам — просто как к лохам последним! Откуда такое недоверие?

E>>>Какой код? "delete x, y, z"?

LMA>>Нет, это же я только собираюсь...
E>Ну ты просто про какие-то многочисленные ревю пройденные этим кодом писал...
Ничего подобного про этот код я не писал!
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.