Цитата: adolfus от 10.05.2023 20:19:41"Конкретного типа" исключений не бывает – есть конкретные ситуации, возникющие в конкретном семантическом контексте, требующие партикулярной обработки в рамках этого самого контекста. Соответственно, все такие ситуации всегда разные и никакого типа, не понижая вариативность ответа, им невозможно сопоставить. Многие системные вызовы возвращают конкретные ошибки и эти ошибки долны быть соответствующим образом обработаны именно на этом уровне семантики. Любые обобщающие обертки в виде абстрактных синтаксических конструкций резко понижают возможности восстановления. Но поскольку они неплохо понижают "порог вхождения" и поднимают конкуренцию в поле найма, их усиленно продвигают мерзавцы от IT – экономия на быдлокодерах куда как круче затрат на лоеров, отмазывающих этих жуликов в соответсвии с дисклаймерами...
Я таким мудрым словам не обучен, но, в целом, мысль Вашу понял.
Ну да, разумеется, говоря о необходимости обработать конкретно каждый код возврата, дабы определить, что конкретно случилось, и произвести восстановление (если таковое возможно), и иные необходимые действия - Вы совершенно правы, тут нужно обработать коды возврата каждого вызова и т.д., но, в некоторых ситуациях, в принципе, достаточно уже того, что "что-то случилось вообще" (например, явным образом определяемая ситуации деления на ноль. Или же, в случае, если пишется какая-то диагностическая утилита "для себя" - тут можно, на мой взгляд, в дебри не лезть, пытаясь максимально точно определить, что же именно произошло.
Скажу за себя: когда я писал драйвера для железа, я обрабатывал все возможные ситуации (майкрософтовские и IBM-овские "кирпичи" на столе всегда лежали стопкой) я старался (сейчас я немного далек от этого) обработать все возможные варианты событий (собственно, когда пишешь на асм-е, будь он для х86 или 8051, или С - это естественная логика действий. После, когда занялся сетями и их безопасностью - тоже старался так действовать. Ну а когда пишешь какой-то набор "быстрых-грязных" инструментов на Go - тут я особо сейчас не утруждаюсь детализацией
Хотя - когда-как. Сейчас вот пишу небольшой мелкий аналог Burp - тут приходится тщательно все обрабатывать.
Ну а насчет "быдлокодеров"..тут не знаю. По-моему, в абсолютном большинстве "букварей" обработка результатов, возвращаемых значений и т.д. - она прописана, и, если человек учится по учебнику, а не методом ненаучного тыка, то это уж он освоить должен, как мне кажется.