Soy un estudiante de informática, por lo tanto, no sé mucho.¿Diferentes estilos de flujo de programa?
Hace poco estuve hablando con un amigo que acaba de conseguir un trabajo como desarrollador de software (java). Me dijo que en su trabajo hay un tipo que tiene mucha experiencia en C++, pero lamentablemente cada vez que escribe código en Java, usa el try-catch para controlar el flujo del programa. Según mi amigo, este es un estilo incorrecto en Java. ¿Es esto cierto? ¿Cuáles son las diferencias (si las hay) en el uso de try-catch (-finalmente en java) entre C++ y Java?
+1 a la respuesta de John Weldon. Tenga en cuenta que uno de los aspectos realmente desagradables de parte del ecosistema de Java (y que es una especificidad de Java) es el uso excesivo de excepciones ** verificadas ** por parte de algunas API/framework. Básicamente obliga a los usuarios de la API a controlar el flujo de su programa mediante la captura de excepción inmaculada sin sentido para cosas que no son excepcionales en absoluto. Algunos marcos, como Spring, están diseñados correctamente y realmente fruncen el ceño ante esa terrible mala práctica. Joshua Bloch en su * Effective Java * recomienda preferir un "método de prueba estatal" para lanzar innecesariamente excepciones (no) controladas. – NoozNooz42
Hola, gracias por la respuesta. "Básicamente obliga a los usuarios de la API a controlar el flujo de su programa mediante la captura de excepción inmaculada sin sentido para cosas que no son excepcionales en absoluto". Entonces, ¿esta es la diferencia en try-catch entre C++/Java? Además, ¿qué quiere decir excepciones "controladas"? Cheers – Muggen
Vea http://www.javapractices.com/topic/TopicAction.do?Id=129. Las excepciones controladas son esencialmente un abuso de excepciones para el control de flujo no excepcional. También son una pesadilla de mantenimiento. –