Ver Mensaje Individual
  #30  
Antiguo 19-08-2008
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Reputación: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por Al González Ver Mensaje
A mí me preocupa que la técnica de programación se base en el gusto personal sin antes analizar el riesgo de funcionamiento del código.
Lamento que interpretes así a la ligera mis palabras. En ningún momento he dicho que cada quien programe como quiera sin importar que esté bien o mal.

Cita:
Empezado por Al González Ver Mensaje
El contexto consiste básicamente en advertir si una llamada a un constructor o a un destructor es susceptible de elevar una excepción.
En el caso de constructores esto sería virtualmente imposible. Por ello -precisamente- existen los bloques de protección.

Cita:
Empezado por Al González Ver Mensaje
No es igual con un constructor que sólo reserva memoria que con uno que abre una conexión de base de datos.
Es, de hecho, lo mismo. Cualquier reserva de memoria, aunque parezca una operación sencilla, debe estar protegida. Muy lejos del control del programador está el que haya memoria suficiente.

Cita:
Empezado por Al González Ver Mensaje
O con un destructor que solamente libera memoria que con uno que intenta agregar una línea a un archivo .log, por mencionar un par de ejemplos.
Intentar acceder a disco es un ejemplo de lo que NO debe hacerse en un destructor.

Cita:
Empezado por Al González Ver Mensaje
Entiendo que en el caso de los destructores el código debe ser sumamente cuidadoso, pero en la práctica solemos ver cadenas de llamadas a partir de un destructor que desembocan en una rutina lejana que, no pensada para ser llamada durante la ejecución de un destructor, eleva una excepción.
Como ya he mencionado varias veces, esto en la práctica no sucede, a no ser que estemos trabajando con código sumamente mal diseñado.

Cita:
Empezado por Al González Ver Mensaje
Creo que el gusto o estilo debería ir después de analizar este tipo de vicisitudes, y ante el "empate", entonces sí aplicar el gusto.
Es precisamente lo que he hecho.

Cita:
Empezado por Al González Ver Mensaje
Pero no precipitarse por lo que más agrada sin un análisis previo, quizá no concienzudo, pero sí realizado cuando menos.
Y así lo he hecho.

// Saludos
Responder Con Cita