Está en la página 1de 2

PRUEBA DE CONOCIMIENTOS DESARROLLADOR

1. ¿Qué es herencia?
La herencia permite que objetos pertenecientes a una clase adquieran propiedades de
otra clase, esto le brinda reusabilidad al código.

2. ¿Qué es polimorfismo?
Un polimorfismo es la capacidad de una operación de comportarse de distintas formas
de acuerdo al tipo de datos que maneja. Por ejemplo, la operación de suma: Si los
parámetros son números el resultado es la suma de los números ingresados; en
cambio, si los parámetros son cadenas de texto el resultado es una cadena
concatenada.

CASO DE ESTUDIO

El estándar BANS de mensajería define lo siguiente:

Campo 1
Código de la transacción. Valores posibles:
A = Compra
B = Retiro
Campo 2
Monto de la transacción
Campo 3
Monto de la Propina
Campo 4
Código de respuesta

Clase BANS
• Atributos: txn_code, amt, fee_amt
• Métodos:
o parse_1: Obtiene el código de la transacción cuando se recibe la transacción y lo
almacena en la variable txn_code
o parse_2: Obtiene el monto cuando se recibe la transacción y lo almacena en la
variable amt
o parse_3: Obtiene el monto de la propina cuando se recibe la transacción y lo almacena
en la variable fee_amt
o build_1: Obtiene el txn_code y lo envía en el campo 1 en la transacción de respuesta
sin ninguna variación de lo recibido
o build_2: Obtiene el amt y lo envía en el campo 2 en la transacción de respuesta sin
ninguna variación de lo recibido
o build_3: Obtiene el fee_amt y lo envía en el campo 3 en la transacción de respuesta
sin ninguna variación de lo recibido
PRUEBA DE CONOCIMIENTOS DESARROLLADOR
o build_4: Se envía el valor APPROVED en el campo 4 en la transacción de respuesta sin
ninguna variación de lo recibido

Se crea una sucursal en el barrio A y se requiere que la mensajería sea modificada teniendo en
cuenta lo siguiente:
• Se recibirá el número de identificación del tarjetahabiente en el campo 5 y se debe almacenar
en una variable
• En la transacción de respuesta si el cliente hizo un retiro y envió propina se debe denegar la
transacción (responder el código de respuesta DENIED)
• En la transacción de respuesta si el cliente hizo una compra se debe enviar en el campo 2 la
suma del monto y el monto de propina y en el campo 3 el valor de 0

Dada una clase BANS_A que hereda de la clase B:

3. ¿Hay que crear algún atributo adicional?


Sí, es necesario un atributo que permita almacenar el número de identificación del
tarjetahabiente. (ej. id_num)

4. ¿Cuál método habría que crear?


Se requiere crear un método que obtenga el número de identificación del tarjetahabiente y lo
almacene en una variable. Ej.:
parse_4: Obtiene el número de identificación del tarjetahabiente cuando se recibe la
transacción y lo almacena en la variable id_num.

5. ¿Qué métodos deberían ser reimplementados?


build_2, buil_3 y build_4 deberían ser reimplementados.

6. Haga el pseudo-código de los métodos que deben ser reimplementados


▪ build_2: Obtiene el amt y el fee_amt, los suma y envía el resultado en el campo 2.
▪ build_3: Envía 0 en el campo 3.
▪ Build_4: Obtiene txn_code y amt_fee. Si txn_code tiene como valor A y fee_amt es
mayor a 0, se debe enviar DENIED en el campo 4, caso contrario se envía APPROVED
en el campo 4.

También podría gustarte