|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
mayton, в практике прикладника, возможно, никогда. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2020, 12:57 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
rdb_dev SQL2008, где хрень?! Там всё отлично! Хрень в том, что после обработки default идут обработчики case! И после default должен быть break. Хотя если он стоит последним, как принято, то может break и не нужен. Хотя я всегда пишу. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2020, 17:20 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
SQL2008, кто тебе сказал такую глупость? :) ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2020, 17:50 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
Вот блин. Я же простой вопрос спросил. Как часто. А мне ответили - как Одессе. Давайте оценим % соотношений прикладников и НЕ-прикладников. Заметьте... я следую парадоксу ложной дихтомии и употребляю тактичный термин НЕ-прикладник имея в виду всех оставшихся. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2020, 17:58 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
mayton, Как часто - не знаю, но одно с уверенностью могу сказать - такая фича понадобиться с вероятностью 100%! ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2020, 18:27 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
rdb_dev mayton, Как часто - не знаю, но одно с уверенностью могу сказать - такая фича понадобиться с вероятностью 100%! Ну... хорошо. Я готов согласиться что когда-то кому-то она вдруг понадобиться. А не достаточно ли нам будет __asm секции для решения этой проблемы? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2020, 18:37 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
mayton, малопортабельно. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2020, 18:43 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
А закладываться на то, что у всех процессоров одинаковый конвейер - портабельно, значит??? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2020, 18:45 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
mayton /// Для них стиль стоял не на первом месте, хотя для нас сегодня, измученных нарзаном PSV-Studio и Сонаром такой подход кажется немыслимым кощунством. думать им приходилось обо всем разом . И о портабельности, и о компактности получаемого кода, и об эффективности как результата компиляции, так и работы программиста. Может быть ты не поверишь, но и о культуре сопровождения кода в большой корпорации тоже. У Кернигана можно найти упоминание о том, произвольность местоположения default была выбрана сознательно , в расчете на то, что при возникновении необходимости дописывать что-то в существующий switch, корпоративные программисты хотели бы и будут размещать новые ветки ниже уже существующих, а не произвольным образом втыкивать их между старыми, превращая старый код в неузнаваемый. mayton >> Оправдывает ли такое резкое использование синтаксиса полезные эффекты и оптимизации А в чем резкость? Если не является резкостью отсутствие break после каждой ветки, почему его отсутствие после default - обычной, по сути метки, за малой оговоркой, среди прочих - смущает? Все как для прочих меток - может быть break, а может и нет. Стартовый код прост как палка: для набора значений, известных как "хорошие случаи" просто goto на метку return True. Иначе провести доп проверку (с побочным действием) и решить - true оно return или нет. При этом нет сомнения, что студент за такой код должен быть немедленно отчислен. :)) ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2020, 19:05 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
boobyУ Кернигана можно найти упоминание о том, произвольность местоположения default была выбрана /сознательно/, в расчете на то, что при возникновении необходимости дописывать что-то в существующий switch, корпоративные программисты хотели бы и будут размещать новые ветки ниже уже существующих, а не произвольным образом втыкивать их между старыми, превращая старый код в неузнаваемый. А некоторые советуют размещать ветки в порядке возрастания значений. Это, якобы, позволяет компилятору генерировать более оптимизированный код... Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2020, 19:09 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
booby Стартовый код прост как палка: для набора значений, известных как "хорошие случаи" просто goto на метку return True. Иначе провести доп проверку (с побочным действием) и решить - true оно return или нет. Если говорить о switch, то там набор запрещённых значений. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2020, 19:30 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
booby Может быть ты не поверишь, но и о культуре сопровождения кода в большой корпорации тоже. У Кернигана можно найти упоминание о том, произвольность местоположения default была выбрана сознательно , в расчете на то, что при возникновении необходимости дописывать что-то в существующий switch, корпоративные программисты хотели бы и будут размещать новые ветки ниже уже существующих, а не произвольным образом втыкивать их между старыми, превращая старый код в неузнаваемый. Да уж, специфические были у Кернигана представления о корпоративных программистах. Типа о читабельности кода вообще не заботятся, а просто будут вкорячивать новые case в конец списка. Хули там думать, код писать нужно. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2020, 19:33 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov boobyУ Кернигана можно найти упоминание о том, произвольность местоположения default была выбрана /сознательно/, в расчете на то, что при возникновении необходимости дописывать что-то в существующий switch, корпоративные программисты хотели бы и будут размещать новые ветки ниже уже существующих, а не произвольным образом втыкивать их между старыми, превращая старый код в неузнаваемый. А некоторые советуют размещать ветки в порядке возрастания значений. Это, якобы, позволяет компилятору генерировать более оптимизированный код... А как это переводится на человечий язык? неужто кто-то из компиляторов двоичный поиск по таблице значений реализует? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2020, 21:21 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
Basil A. Sidorov А закладываться на то, что у всех процессоров одинаковый конвейер - портабельно, значит??? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2020, 21:22 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
booby А как это переводится на человечий язык? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2020, 21:30 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
petrav, сдаётся, у вас теоретические представления о читабельности реального "промышленного" прикладного кода, сроком жизни хотя бы лет в 15-20 и непрерывно изменяемого при этом... Не трожь писанное не тобой, дописывай в конец - замечательной осторожности принцип для применения в жизненном цикле эпических прикладных непрерывно развиваемых промышленных поэм... Это сейчас в моде "рефакторинг" до степени не узнавания родной мамой со свистелками и перделками. А в традиционной промышленности, после того, как изначальный код написан и программист уволился - никто не знает , что там делается. Тронешь - убьёт, без резиновых сапог - не входи. Допиши и подпишись, чтобы у табе потом интересовались, пока ты жив, что на твоём участке делается. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2020, 21:32 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
rdb_dev booby А как это переводится на человечий язык? Нет. Порядок следования вариантов никак не может изменить эффективность индексированного доступа к элементам таблицы. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2020, 21:36 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
booby petrav, сдаётся, у вас теоретические представления о читабельности реального "промышленного" прикладного кода, сроком жизни хотя бы лет в 15-20 и непрерывно изменяемого при этом... Не трожь писанное не тобой, дописывай в конец - замечательной осторожности принцип для применения в жизненном цикле эпических прикладных непрерывно развиваемых промышленных поэм... Это сейчас в моде "рефакторинг" до степени не узнавания родной мамой со свистелками и перделками. А в традиционной промышленности, после того, как изначальный код написан и программист уволился - никто не знает , что там делается. Вы только что описали крайне низкоквалифицированную команду. Без вариантов. Я сам работаю в промышленности и наблюдаю системы, которые и по 30-ть лет развиваются. И да, гавнокода там много, всё как в команде вами описанной. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2020, 21:38 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
petrav, "промышленная система" и "команда" - это антонимичные понятия, по Гамбурскому счёту. для работы с "промышленной системой" по определению годится произвольный выловленный из уличной толпы человек. Промышленный прикладной программист не должен быть образован, иначе он работать не сможет . Сразу, вместо работы, начнёт switch-и рефакторить. Когда по любой причине произвольно схваченный за рукав не годится - объявляется, что существует "команда", которой нужны "штыки" (в смысле обученные солдаты, если и не умеющие пользоваться, то хотя бы представляющие правдоподобно, что значит слово "штык"). Бывает, когда "команда" уходит, то, что после неё остаётся, автоматически превращается в обыкновенный "промышленный код". ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2020, 21:59 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
booby petrav, "промышленная система" и "команда" - это антонимичные понятия, по Гамбурскому счёту. для работы с "промышленной системой" по определению годится произвольный выловленный из уличной толпы человек. Промышленный прикладной программист не должен быть образован, иначе он работать не сможет . Сразу, вместо работы, начнёт switch-и рефакторить. Когда по любой причине произвольно схваченный за рукав не годится - объявляется, что существует "команда", которой нужны "штыки" (в смысле обученные солдаты, если и не умеющие пользоваться, то хотя бы представляющие правдоподобно, что значит слово "штык"). Бывает, когда "команда" уходит, то, что после неё остаётся, автоматически превращается в обыкновенный "промышленный код". Это вы нейронную сеть запрограммировали, что она на форуме такие перлы от вашего имени выдаёт? Мне кажется архитектура НС неудачно выбрана. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2020, 22:11 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
booby Промышленный прикладной программист не должен быть образован, иначе он работать не сможет . Но всё же вы меня заинтересовали. Давайте начнём с одной мысли. Что означает ваша процитированная мной фраза? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2020, 23:10 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
petrav booby Промышленный прикладной программист не должен быть образован, иначе он работать не сможет . ... Что означает ваша процитированная мной фраза? Буквально то, что написано. У образованного человека невыносимый для массового производства недостаток - он имеет не просто тенденцию думать, но и принимает сам этот процесс за самостоятельную ценность. Обоснование уменьшения количества ошибок от увеличения количества дум вызывает большой скепсис, а количество строк кода от увеличения дум уменьшается несомненно. Когда человек думает, он код не пишет, по крайней мере рабочий код. В "промышленности" нет задачи иметь в штате "умного человека", но есть задача выпустить "много кода". Как это обеспечить, в условиях, когда роботы еще не заменили человека-программиста? Конечно, строители обеспечили механизацию и непрерывность каменного строительства еще в древнем мире: - рабочий на каменоломне не занимается транспортировкой, перевозчик не занимается обработкой, каменотес не кладет из камня стены. И каждому из них полезно не знать, чего ради все их труды. Просто для того, чтобы глубокая задумчивость не останавливала производственный процесс. Кое-какими из этих идей программирование, как промышленная отрасль, уже вооружилась, но в целом все еще пока сохраняет признаки средневекового ремесленничества или крестьянского быта, когда каждый "субъект" не просто выполняет всю работу целиком, а чистосердечно считает себя архитектором результата, извлекая из этого ценностные смыслы. Это по сути несовместимо с массовым или вообще любым крупным производством, которое подразумевает, что малое количество инженеров, используя труд большого количества рабочих, может быть использующих механизмы, способны обеспечить управление большими объёмами производства или сооружением крупных конструкций за разумное время. В задачу каких-то других инженеров входит создание самих механизмов. Вторые, применительно к программированию, занимаются созданием компиляторов, стандартных или специализированных библиотек, а первые изобретением "лучших практик" и их "внедрением". Все остальные рабочие должны просто писать прикладной код. Человек, склонный размышлению и стремящийся к ученому знанию, становится немедленно вреден, когда зона его любопытства расширяется за пределы кода, к которому он приставлен. Знать выданный в использование инструмент это хорошо, использовать "стандартную библиотеку" - тоже годится, а думать плохо. Вот и всё, приблизительно, если не сильно растекаться по древу. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.07.2020, 01:51 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
booby, Пожалуйста, в какой стране вы лично наблюдали работу промышленных прикладных программистов? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.07.2020, 10:43 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
Можно попробовать в разных компилляторах создать декодер кодовой страницы (например win1251-UTF-16) на case-switch и посмотреть как разные компилляторы соберут это. В линейный. Бинарный поиск. Или хеш-поиск. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.07.2020, 10:50 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
mayton Можно попробовать в разных компилляторах создать декодер кодовой страницы (например win1251-UTF-16) на case-switch и посмотреть как разные компилляторы соберут это. В линейный. Бинарный поиск. Или хеш-поиск. Такой декодер он может и в обычный массив перевести где индексом будет 1251. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.07.2020, 12:25 |
|
|
start [/forum/topic.php?fid=57&msg=39983507&tid=2017371]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
35ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
58ms |
get tp. blocked users: |
1ms |
others: | 248ms |
total: | 382ms |
0 / 0 |