Segun entiendo...
Usar excepciones permite
separar un codigo que puede ser muy extenso y ser proclive a romperse por muchos puntos del control y reporte de errores.
Los bloques Try-catch deberian
(pregunto) ser tan extensos como ..... toda o casi-toda una funcion o metodo (?) o en las partes donde hay muchos posibles puntos de ruptura juntos ? ejemplo manejando archivos que puede pasar que no exista el directorio, que no tenga permisos de escritura, que el archivo ya exista...etc..
Cita: El tener excepciones hace más limpio el diseño, a demás de que ayuda mucho al polimorfismo de cada clase, porque si muestras el error con diseño html, etc dentro de la clase BD estas rompiendo con el polimorfismo de la clase BD ya que su responsabilidad no es esa, es solamente interactuar con la base de datos. Además te ayuda mucho a desacoplar tus clases y a re-utilizar tus diseños en diferentes proyectos
Esa parte me gusto mucho, segun entiendo capturo el burbujeo a nivel de representacion en vez de in-situ.
Agradezco desde ya con la duda, tambien estoy flojo en el tema.
PD: aprovecho para agradecer lo que me han ayudado en estos años, recien estube revisando hilos y encontre muchos casos donde han gastado mucho tiempo en escribir ejemplos para guirarme. GRACIAS!