А если быть точнее, то где ставить throw и catch. Как понять где ставить одно, где другое и нужно ли оно здесь.
Например, возьмем программу по парсингу сайта и записи в бд.
Ставим исключение при чтении сайта и ещё один при парсинге и это всё
Где нибудь ещё надо??
Мне нужно разобраться, как правильно ставить исключения. Тут я думал, вы мне подскажите на что стоит обратить внимания, с работой бд и с сайтами или подскажите в какую сторону смотреть( то что и подсказал Axian Ltd. )
Это вопрос проектирования архитектуры приложения и поэтому религиозный вопрос. Задайте вопрос себе - кому и как вы будете отдавать сообщения об ошибках и как их обрабатывать (продолжать, перезапускать, уничтожать что-то т.п., на что влияет данная ошибка)? В зависимости от этого будете выбирать место для throw и catch.
Раз вы учитесь. Один из подходов
1. Ошибки возвращаются кодам возврата и исключениями
2. "Мягкие" ошибки, которые можно исправить, например вызвав функцию еще раз передаются через коды
3. "Фатальные" ошибки, например отказ соединения с БД после 3-х попыток - через исключения