Hola Diego Me comentas como usas el manejo de excepciones . Donde usas #error: y donde Exception ?
saludos kiko --- El mié 15-sep-10, [email protected] <[email protected]> escribió: De: [email protected] <[email protected]> Asunto: [clubSmalltalk] Re: Smalltalk en ADVA Para: "ClubSmalltalk" <[email protected]> Fecha: miércoles, 15 de septiembre de 2010, 11:10 On Sep 15, 8:50 am, Gabriel Brunstein <[email protected]> wrote: > > Respecto a los negativos, mas allá de la definición matemática, > > remarco que los métodos no siempre se pueden enviar a todos los > > objetos posibles del dominio de una clase. En general los métodos no > > resuelven todo lo que un receptor de esa clase puede devolver, y sería > > un error hacer programación defensiva con eso. Asi como no se le puede > > enviar #copyFrom: 5 a cualquier String, ni #new a cualquier clase, ni > > #arcCos a cualquier Float. La responsabilidad en el envió de un > > mensaje está del lado del emisor y no del receptor o método que lo > > resuelve. > > Cuando se envía un mensaje, hay un contrato implícito entre el emisor y el > receptor. En mi opinión, si ese contrato se rompe (por ejemplo: > colaboradores no válidos), se debería producir una excepción. Eso es adecuado cuando se trabaja con interfaces (como en cualquier OOP), pero en Smalltalk hay objetos que responden a a mensajes que no tienen un método o interfaz previamente "contratada", asi como hay mensajes que no se saben responder y existen métodos implementados en su clase (como los ejemplos que ponía). Las excepeciones yo solo las uso cuando interactúo con cosas externas a Smalltalk como archivos, librerías externas o cosas de las que no tengo control, y tengo que atajar lo que venga. Dentro de Smalltalk una excepción generalmente esconde los detalles mas ricos de un "error" y es preferible no usarlas. Quién define la interfaz de un objeto es el emisor, por eso generalmente se escriben los mensajes antes que los métodos. Un Saludo. Diego -- To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] http://www.clubSmalltalk.org -- To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] http://www.clubSmalltalk.org
