25.10.2014 Views

Tesis Simulador Circuitos 3D.pdf - Maestría en Ciencias de la ...

Tesis Simulador Circuitos 3D.pdf - Maestría en Ciencias de la ...

Tesis Simulador Circuitos 3D.pdf - Maestría en Ciencias de la ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

FMP sea capaz <strong>de</strong> permitir <strong>la</strong> adición <strong>de</strong> cualquier otro compon<strong>en</strong>te nuevo sin<br />

modificar su código <strong>de</strong> fabricación, sino únicam<strong>en</strong>te agregando el nuevo<br />

código <strong>de</strong> dicho compon<strong>en</strong>te. Esto es así, porque todos los compon<strong>en</strong>tes serán<br />

<strong>de</strong>l mismo tipo (FabricarCompon<strong>en</strong>te), pero se les asociará un objeto difer<strong>en</strong>te<br />

según el compon<strong>en</strong>te.<br />

De <strong>la</strong> Figura V.4 se observa que, a su vez, <strong>la</strong> c<strong>la</strong>se concreta<br />

FabricarResist<strong>en</strong>cia, “instancia” a <strong>la</strong> c<strong>la</strong>se concreta Resist<strong>en</strong>cia, <strong>la</strong> cual<br />

constituye el conjunto <strong>de</strong> propieda<strong>de</strong>s gráficas y <strong>de</strong> propieda<strong>de</strong>s eléctricas<br />

propias <strong>de</strong> una resist<strong>en</strong>cia física real. Este proceso se lleva a cabo mediante <strong>la</strong><br />

tercera línea <strong>de</strong> código <strong>de</strong> <strong>la</strong> Figura V.5. En esta línea se hace un l<strong>la</strong>mado al<br />

método local <strong>de</strong> <strong>la</strong> c<strong>la</strong>se Fabricar Resist<strong>en</strong>cia l<strong>la</strong>mado Fabricar, que, como se<br />

observa <strong>en</strong> el código <strong>de</strong> <strong>la</strong> Figura V.6, es el <strong>en</strong>cargado <strong>de</strong> inicializar a <strong>la</strong> c<strong>la</strong>se<br />

concreta Resist<strong>en</strong>cia.<br />

En <strong>la</strong> Figura V.6 se pres<strong>en</strong>ta un resum<strong>en</strong> gráfico <strong>de</strong> <strong>la</strong> secu<strong>en</strong>cia <strong>de</strong><br />

fabricación <strong>de</strong> una resist<strong>en</strong>cia. Las secu<strong>en</strong>cias (1) y (2) se <strong>en</strong>cargan <strong>de</strong> construir<br />

<strong>la</strong> estructura <strong>de</strong> <strong>la</strong> resist<strong>en</strong>cia, mi<strong>en</strong>tras que <strong>la</strong>s secu<strong>en</strong>cias (3) y (4) se <strong>en</strong>cargan<br />

<strong>de</strong> inicializar <strong>la</strong>s propieda<strong>de</strong>s gráficas y <strong>la</strong>s propieda<strong>de</strong>s eléctricas <strong>de</strong> <strong>la</strong><br />

resist<strong>en</strong>cia.<br />

:: FabricarCompon<strong>en</strong>te – C<strong>la</strong>se<br />

public c<strong>la</strong>ss FabricarCompon<strong>en</strong>te {<br />

public function Fabricar(target:Sprite, parametros:Object,<br />

ori<strong>en</strong>tacion:String):void {<br />

4<br />

var compon<strong>en</strong>te:Compon<strong>en</strong>te = this.CrearCompon<strong>en</strong>te();<br />

METODOS DE INICIALIZACION DE LAS PROPIEDADES<br />

GRAFICAS Y ELECTRICAS DEL COMPONENTE<br />

}<br />

3<br />

Compon<strong>en</strong>te<br />

C<strong>la</strong>se Abstracta<br />

}<br />

protected function CrearCompon<strong>en</strong>te():Compon<strong>en</strong>te {<br />

Metodo Abstracto: se <strong>de</strong>be <strong>de</strong>finir <strong>en</strong> una subc<strong>la</strong>se<br />

throw new IllegalOperationError("Metodo abtracto: <strong>de</strong>be<br />

ser <strong>de</strong>finido <strong>en</strong> una subc<strong>la</strong>se");<br />

return null;<br />

}<br />

1<br />

botonResist<strong>en</strong>cia<br />

C<strong>la</strong>se Concreta<br />

Compon<strong>en</strong>te2T<br />

C<strong>la</strong>se Concreta<br />

Resist<strong>en</strong>cia<br />

C<strong>la</strong>se Concreta<br />

2<br />

public c<strong>la</strong>ss FabricarResist<strong>en</strong>cia ext<strong>en</strong>ds FabricarCompon<strong>en</strong>te {<br />

}<br />

:: FabricarResist<strong>en</strong>cia – C<strong>la</strong>se CONCRETA<br />

overri<strong>de</strong> protected function CrearCompon<strong>en</strong>te():Compon<strong>en</strong>te {<br />

return new Resist<strong>en</strong>cia;<br />

}<br />

Figura V.6. Secu<strong>en</strong>cia <strong>de</strong>l proceso <strong>de</strong> fabricación <strong>de</strong> una resist<strong>en</strong>cia, <strong>de</strong>s<strong>de</strong> que<br />

se activa <strong>la</strong> c<strong>la</strong>se botonResist<strong>en</strong>cia, hasta que se inicializa el objeto<br />

resist<strong>en</strong>cia.<br />

49

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!