|
En la empresa de seguros donde trabajaba antes, usabamos algo
parecido a esto:
Se podian identificar los siguientes patterns:
1) Type Object
2) Variable State
3) Interpreter
El sistema se utiliza para generar polizas de seguros validas.
Una poliza puede ser vista como una instancia de un producto de seguro.
Pero a su vez, el productoDeSeguro es un objeto que cumple el papel de
clase (TypeObject).
Ejemplos de productos son MobiCasa, MobiCar o MobiTour (seguro
de viajero). Cada uno de estos productos son representados como un arbol de
5 niveles (porque asi lo define un estandar de la industria). En el caso de
MobiCar, en el segundo nivel tenes dos bloques mutuamente excluyentes: Todo
Riesgo o Responsabilidad Civil. Cada uno de estos bloques (Specification) tiene
"aspectos", que no es otra cosa que un metodo o variable de instancia. Un
aspecto posible seria "precio" y la implementacion seria "self car model *
2". La implementacion estaba escrita en algo parecido a Smalltalk y por eso
necesitamos un interprete.
Si te interesa, podria seguir expandiendome. Pero en realidad,
las similitudes con el UDP no eran percibidas ni apreciadas. Y el
sistema tenia muchas complicaciones innecesarias.
Si vas a armar un framework dinamico para que el usuario pueda
modelar o programar, no te olvides de una cosa: las facilidades de debugging.
Si los usuarios pueden modelar, puede ser que sus modelos
tengan errores. Y ante un error, quien se encarga de corregirlo? Dudo que sean
los usuarios. Dudo tambien que tengas que hacerlo vos. Seguramente sea algun
programador Smalltalk que conozca las ideas del framework, pero no lo conozca a
fondo. Para este programador es muy importante saber distinguir entre el codigo
del interprete y el codigo que esta siendo interpretado.
Imaginate que pasaria si en el debugger de Smalltalk vieras
todo lo que pasa a nivel de la maquina virtual. Seria una pesadilla.
Esta es la presentacion que hizo el autor de este framework
hace un par de anios. Mira las paginas 43, 46, 52, 55
Saludos,
Pancho
|
- [clubSmalltalk] Re: Fwd: Seminarios Athena - Programa... Esteban A. Maringolo
- [clubSmalltalk] Re: Fwd: Seminarios Athena - Pro... Jorge Silva
- [clubSmalltalk] Re: Fwd: Seminarios Athena -... Sergio Gianatiempo
- [clubSmalltalk] Re: Fwd: Seminarios Athe... GallegO
- [clubSmalltalk] Re: Fwd: Seminarios ... Francisco Garau
- [clubSmalltalk] Re: Fwd: Semina... GallegO
- [clubSmalltalk] Re: Fwd: Se... Francisco Garau
- [clubSmalltalk] Re: Fwd... GallegO
