Você está na página 1de 49

UNIDAD I

1. Enumere y explique los aspectos ms relevantes que hacen que un software de gran
magnitud sea complejo.
La complejidad el dominio del sistema.
Los problemas que se intentan resolver con el software conllevan a menudo
elementos de complejidad ineludible, en los que se encuentra una enorme
cantidad de requisitos que compiten entre s, que quizs se contradicen.
La dificultad de gestionar el proceso de desarrollo.
La tarea fundamental del equipo de desarrollo de software es dar vida a una
ilusin de simplicidad para defender a los usuarios de esta vasta y a menudo
arbitraria complejidad externa.
La flexibilidad que se puede alcanzar a travs del software.
El software ofrece la flexibilidad mxima por lo que un desarrollador puede
expresar casi cualquier clase de abstraccin. Esta flexibilidad resulta ser una
propiedad que seduce increblemente, sin embargo, porque tambin empuja al
desarrollador a construir por si mismo prcticamente todos los bloques
fundamentales sobre los que se apoyan estas abstracciones de ms alto nivel.
Los problemas e caracterizar el comportamiento de sistemas discretos.
En una aplicacin de gran tamao puede haber cientos o hasta miles de variables,
sus valores actuales, y la direccin de ejecucin y pila actual de cada uno de los
procesos del sistema constituyen el estado actual de la aplicacin. Al ejecutarse el
software en computadores digitales, se tiene un sistema con estados discretos.

2. Cules son los cinco atributos de un sistema complejo?


Frecuentemente, la complejidad toma la forma de una jerarqua, por lo cual un
sistema complejo se compone de subsistemas relacionados que tienen a su vez sus
propios subsistemas, y as sucesivamente, hasta que se alcanza algn nivel nfimo
de componentes elementales.
La eleccin de que componentes de un sistema son primitivos es relativamente
arbitraria y queda en gran medida a decisin el observador.
Los enlaces internos de los componentes suelen ser ms fuertes que los enlaces
entre componentes. Este hecho tiene el efecto de separar la dinmica de alta
frecuencia de los componentes (que involucra a la estructura interna de los
mismos) de la dinmica de baja frecuencia (que involucra la interaccin entre los
componentes.
Los sistemas jerrquicos estn compuestos usualmente de solo unas pocas clases
diferentes de subsistemas en varias combinaciones y disposiciones.
Se encontrara invariablemente que un sistema complejo que funciona ha
evolucionado de un sistema simple que funcionaba. Un sistema complejo diseado
desde cero nunca funciona y no puede parchearse para conseguir que lo haga. Hay
que volver a empezar, partiendo de un sistema simple que funcione.

3. Cules son las dos jerarquas ms importantes que consideramos en la orientacin a


objetos para sistemas complejos?
Programacin Orientada a Objetos

Jerarquas de estructura de clases.


Jerarquas de estructura de objetos.

4. Con qu podemos enfrentar a la complejidad para obtener partes cada vez ms


pequeas y simplificadas del dominio del problema?
Cuando se disea un sistema de software complejo, es esencial descomponerlo en
partes ms y ms pequeas, cada una de las cuales se puede refinar entonces de forma
independiente. De este modo se satisface la restriccin fundamental que existe sobre la
capacidad de canal de la comprensin humana: para comprender un nivel dado de un
sistema, basta con comprender unas pocas partes (no necesariamente todas) a la vez.

5. Cules son las dos formas de descomposicin ms conocidas?


Las dos formas de descomposicin ms conocidas son la algortmica y la orientada
a objetos.

6. Explique en qu se diferencia la descomposicin algortmica y la orientada a objetos?


Ambas visiones son importantes: la visin algortmica enfatiza el orden de los
eventos, y la visin orientada a objetos resalta los agentes que o bien causan acciones o
bien son sujetos de estas acciones. Sin embargo, el hecho es que no se puede construir un
sistema complejo de las dos formas a la vez, porque son vistas completamente
perpendiculares. Hay que comenzar a descomponer un sistema sea por algoritmos o por
objetos, y entonces utilizar la estructura resultante como marco de referencia para
expresar la otra perspectiva.

7. Qu rol cumple la abstraccin en la orientacin a objetos?


Realizamos abstracciones ya que somos incapaces de dominar en su totalidad a un
objeto complejo, decidimos ignorar sus detalles no esenciales, tratando en su lugar con el
modelo generalizado e idealizado del objeto.

8. Qu rol cumple la jerarqua en la orientacin a objetos?


La estructura de objetos es importante porque ilustra como diferentes objetos
colaboran entre s a travs de patrones de interaccin llamados mecanismos. La
estructura de clases no es menos importante, porque resalta la estructura y
comportamiento comunes en el interior de un sistema.
Aunque se pueda tratar como distinta cada instancia de un determinado tipo de
objeto, puede asumirse que comparte la misma conducta que todas las dems instancias
de ese mismo tipo de objeto.
La identificacin de las jerarquas en un sistema de software complejo no suele ser
fcil, porque requiere que se descubran patrones entre muchos objetos, cada uno de los
cuales puede incluir algn comportamiento tremendamente complicado. Una vez que se

Pgina 1
Programacin Orientada a Objetos

9. Considerara Ud. al diseo orientado a objetos un desarrollo evolutivo o


revolucionario? Justifique.
El diseo orientado a objetos es un desarrollo revolucionario ya que este mtodo
conduce a una descomposicin orientada a objetos; el diseo orientado a objetos define
una notacin y un proceso para construir sistemas de software complejos, y ofrece un rico
conjunto de modelos lgicos y fsicos con los cuales se puede razonar sobre diferentes
aspectos del sistema que se est considerando.

10. Cuntos y cules son los modelos bsicos que se manejan en el diseo orientado a
objetos?
Modelo Dinmico
Modelo Esttico
Modelo Lgico
o Estructura de Clases
o Estructura de Objetos
Modelo Fsico
o Arquitectura de mdulos
o Arquitectura de procesos

11. Qu es la programacin orientada a objetos?


La programacin orientada a objetos es un mtodo de implementacin en el que
los programas se organizan como colecciones cooperativas de objetos, cada uno de los
cuales representa una instancia de alguna clase, y cuyas clases son, todas ellas, miembros
de una jerarqua de clases unidas mediante relaciones de herencia.

12. Qu es el diseo orientado a objetos?


El diseo orientado a objetos es un mtodo de diseo que abarca el proceso de
descomposicin orientada a objetos y una notacin para describir los modelos lgico y
fsico, as como los modelos esttico y dinmico del sistema que se disea.

13. Qu es el anlisis orientado a objetos?


El anlisis orientado a objetos es un mtodo de anlisis que examina los requisitos
desde la perspectiva de las clases y objetos que se encuentran en el vocabulario del
dominio del problema.

14. Cules son los elementos fundamentales en el modelo de objetos?


Abstraccin
Encapsulamiento
Modularidad
Jerarqua

Pgina 2
Programacin Orientada a Objetos

Al decir fundamentales, quiere decirse que un modelo que carezca de cualquiera de estos
elementos no es orientado a objetos.

15. Cules son los elementos secundarios del modelo de objetos?


Tipos (Tipificacin)
Concurrencia
Persistencia
Al decir secundarios, quiere decirse que cada uno de ellos es una parte til del modelo de
objetos, pero no es esencial.

16. Explique el significado de la abstraccin.


Una abstraccin denota las caractersticas esenciales de un objeto que lo
distinguen de todos los dems tipos de objeto y proporciona as fronteras conceptuales
ntidamente definidas respecto a la perspectiva del observador.

17. Explique el significado del encapsulamiento.


El encapsulamiento es el proceso de almacenar en un mismo compartimento los
elementos de una abstraccin que constituyen su estructura y su comportamiento; sirve
para separar el interfaz contractual de una abstraccin y su implantacin.

18. Explique el significado de la modularidad.


La modularidad es la propiedad que tiene un sistema que ha sido descompuesto en
un conjunto de mdulos altamente cohesivos y dbilmente acoplados.

19. Explique el significado de la jerarqua.


La jerarqua es una clasificacin u ordenacin de abstracciones.

20. Explique el significado de la tipificacin.


Los tipos son la puesta en vigor de la clase de los objetos, de modo que los objetos
de tipos distintos no pueden intercambiarse o, como mucho, pueden intercambiarse solo
de formas muy restringidas.

21. Explique el significado de la concurrencia.


La concurrencia permite a diferentes objetos actuar al mismo tiempo. Cuando un sistema o un
procesador deben realizar tareas diferentes y simultneas, utilizan varios hilos de control.
Se distinguen dos tipos de concurrencia: la pesada y la ligera. La primera es aquella manejada de
forma independiente por el sistema operativo de destino y abarca su propio espacio de
direcciones. En cambio, la ligera, suele existir dentro de un solo proceso del sistema operativo, en
conjunto con otros procesos ligeros, que comparten el mismo espacio de direcciones.

22. Explique el significado de la persistencia.


La persistencia es la propiedad que conserva el estado de un objeto en el tiempo y en el espacio.
Se considera que hay un espacio continuo de existencia del objeto, que abarca lo siguiente:

Pgina 3
Programacin Orientada a Objetos

Resultados transitorios en la evaluacin de variables.


Variables locales en la activacin de procedimientos.
Variables propias, variables globales y elementos del montculo cuya duracin difiere de su
mbito.
Datos que existen entre ejecuciones de un programa.
Datos que existen entre varias versiones de un programa.
Datos que sobreviven al programa.
La persistencia abarca algo ms que la mera duracin de los datos. En las bases de datos
orientadas a objetos, no solo persiste el estado de un objeto, sino que su clase de trascender
tambin a cualquier programa individual, de forma que todos los programas interpreten de la
misma manera el estado almacenado.

23. Cmo se denotan las caractersticas esenciales de un objeto que lo distinguen de todos los
dems tipos de objetos y proporciona as fronteras conceptuales ntidamente definidas respecto
a la perspectiva del observador?
Mediante una abstraccin

24. A qu denominamos un objeto cliente?


Un cliente es cualquier objeto que utiliza los recursos de otro objeto

25. A qu denominamos un objeto servidor?


Un objeto servidor es aquel que sus recursos son utilizados por un objeto cliente

26. A qu denomina Meyer el modelo contractual de programacin?


La vista exterior de cada objeto define un contrato del que pueden depender otros objetos, y que
a su vez debe ser llevado a cabo por la vista interior del propio objeto (a menudo en colaboracin
con otros objetos)

27. Qu establece un contrato entre objetos?


Establece todas las suposiciones que puede hacer un objeto cliente acerca del comportamiento de
un objeto servidor. En otras palabras, este contrato abarca todas las responsabilidades de un
objeto, es decir el comportamiento del que se considera responsable.

28. Cmo se denomina a las formas en que un objeto puede actuar y/o reaccionar,
constituyendo estas formas la visin externa completa, esttica y dinmica de la abstraccin?
Lo que denota el protocolo

29. Cmo se denomina al conjunto completo de operaciones que puede realizar un cliente
sobre un objeto, junto con las formas de invocacin u rdenes que admite?
Protocolo del objeto

30. A qu nos referimos cuando decimos que un concepto central de la idea de abstraccin es
el de invariancia?
Una invariante es una condicin booleana (verdadero o falso) cuyo valor de verdad debe
mantenerse. La violacin de una invariante rompe el contrato asociado con una abstraccin.

Pgina 4
Programacin Orientada a Objetos

31. Qu se debe definir para cualquier operacin asociada a un objeto?


Precondiciones y postcondiciones

32. Qu es una precondicin?


Invariantes asumidos por la operacin

33. Qu es una Postcondicion?


Invariantes satisfechos por la operacin

34. A qu se denomina excepcin?


Una excepcin es una indicacin de que no se ha satisfecho (o no puede satisfacerse) una
invariante.

35. A qu se denomina mensaje?


Es la invocacin de una operacin sobre un objeto.

36. El encapsulado es un concepto complementario a la abstraccin? Justifique.


La abstraccin y el encapsulamiento son conceptos complementarios: la abstraccin se centra en
el comportamiento observable de un objeto, mientras el encapsulamiento se centra en la
implementacin que da lugar a su comportamiento.

37. Cmo se denomina al elemento de un objeto que captura su vista externa?


Interfaz

38. Cmo se denomina al elemento de un objeto que captura su vista interna la cual incluye los
mecanismos que consiguen el comportamiento deseado?
Implementacin (implantacin)

39. El concepto de ocultar los detalles de implementacin lo asociara a esconder los


detalles de implementacin o a evitar el uso inapropiado de los detalles de
implementacin? Justifique.
Evitar el uso inapropiado de los detalles de implementacin porque si no se ocultara se
podran obtener problemas.

40. Cules son los dos aspectos que hacen importante considerar a la modularidad?
Crear fronteras bien definidas (interfaces) y reducir la complejidad

41. Para qu se utiliza la jerarqua?


La jerarqua se utiliza para poder descomprimir un sistema complejo, esto es debido a
que al formar una jerarqua en un sistema, se estara creando subsistemas dentro del
mismo, y al ser complejo la divisin del mismo nos posibilita una mayor interpretacin,
pudiendo as comprender, describir e incluso ver este sistema y sus partes.
Una jerarqua es una clasificacin u ordenacin de abstracciones.

Pgina 5
Programacin Orientada a Objetos

42. Cmo denominamos a la caracterizacin precisa de propiedades estructurales o de


comportamiento que comparten una serie de entidades?
Segn Deutsch se denomina como Tipo

43. Las clases implementan tipos?


Si, ya que en distintas clases puede haber variables de igual tipo.
Ejemplo:
En Smalltalk los objetos de las clases smallinteger, largenativeinteger y
largepositiveinteger son todas del mismo tipo, integer, aun cuando no son de la misma
clase. Para la mayora de los mortales, sin embargo, separar los conceptos de tipo y clase
induce irremisiblemente a confusiones y aporta muy poco. Es suficiente decir que las
clases implementan a los tipos.

44. Los tipos implementan clases?


No, los tipos no implementan clases

45. Cmo denominamos a los lenguajes que hacen una comprobacin de tipos estricta?
Se los denomina como Lenguajes Tipados

46. Cmo denominamos a los lenguajes que no hacen una comprobacin de tipos
estricta?
Se los denomina como Lenguajes no Tipados

47. A qu se denomina ligadura esttica (temprana)?


Significa que se fijan los tipos de todas las variables y expresiones en tiempo de
compilacin

48. A qu se denomina ligadura dinmica (tarda)?


Significa que los tipos de las variables y expresiones no se conocen hasta el tiempo de
ejecucin

49. Es lo mismo la comprobacin estricta de tipos y la ligadura dinmica?


No, ya que son conceptos independientes, un lenguaje puede tener comprobacin estricta
de tipos y tipos dinmicos, o no tener tipos y admitir la ligadura dinmica.

50. Cmo se denomina la caracterstica que permite a diferentes objetos actuar al


mismo tiempo?
Se la denomina como Concurrencia

51. A qu se denomina concurrencia pesada?

Pgina 6
Programacin Orientada a Objetos

Es aquella que es tpicamente manejada de forma independiente por el sistema operativo


de destino, y abarca su propio espacio de direcciones

52. A qu se denomina concurrencia ligera o liviana?


Es aquella que suele existir dentro de un solo proceso del sistema operativo en compaa
de otros procesos ligeros, que comparten el mismo espacio de direcciones.

53. La concurrencia es la propiedad que distingue un objeto activo de uno que no lo


est?
Si, la concurrencia se centra en la abstraccin de procesos y la sincronizacin. El objeto es
un concepto que unifica estos dos puntos de vista distintos: cada objeto puede
representar un hilo separado de control. Tales objetos se llaman activos.

54. Cmo se denomina la caracterstica en orientacin a objetos que permite conservar


el estado de un objeto en el tiempo y el espacio?
Se la denomina persistencia

55. Qu cosas se persisten?


Resultados transitorios en la evaluacin de expresiones
Variables locales en la activacin de procedimientos
Variables propias, variables globales y elementos del montculo cuya duracin
difiere de su mbito
Datos que existen entre ejecuciones de un programa
Datos que existen entre varias versiones de un programa
Datos que sobreviven al programa
Estado del objeto y clases

56. Defina qu es un objeto desde la perspectiva de la cognicin humana.


Desde la cognicin humana un objeto es una cosa tangible y/o visible, algo que puede
comprenderse intelectualmente y hacia lo que se dirige un pensamiento o accin.

57. Un objeto es real o abstracto? Justifique.


Un objeto es cualquier cosa real o abstracta, ya que hay tanto objetos reales como
abstractos que poseen una estructura que es capaz de definirlos y acciones que lo
controlan.

58. Los objetos poseen lmites fsicos precisos o imprecisos?


Pueden poseer ambos, ya que dependiendo del objeto que se trate se puede observar
lmites precisos e imprecisos.

59. Cules son las tres cosas que debe tener un objeto?
Un objeto debe tener Estado, Comportamiento e Identidad

Pgina 7
Programacin Orientada a Objetos

60. Cul es la palabra que se puede utilizar como sinnimo de objeto?


Instancia

61. Cul es la palabra que se puede utilizar como sinnimo de instancia?


Objeto

62. Cmo definira el estado de un objeto?


El estado de un objeto abarca todas las propiedades (normalmente estticas) del mismo
ms los valores actuales (normalmente dinmicos) de cada una de esas propiedades.
El hecho de que todo objeto tiene un estado implica que todo objeto toma cierta cantidad
de espacio en la memoria del computador.

63. A qu definimos propiedad de un objeto?


Una propiedad es una caracterstica inherente o distintiva, un rasgo o cualidad que
constituye a hacer que un objeto sea ese objeto y no otro.

64. Qu es lo que distingue a un objeto de los valores simples?


Se distingue entre objetos y valores simples: las cantidades simples como el numero 3 son
<<intemporales, inmutables y no instanciadas>>, mientras que los objetos <<existen en el
tiempo, son modificables, tienen estado, son instanciados y pueden crearse, destruirse y
compartirse>>

65. Cmo definira el comportamiento de un objeto?


El comportamiento es como acta y reacciona un objeto, en trminos de sus cambios de
estado y paso de mensajes.
En otras palabras, el comportamiento de un objeto representa su actividad visible y
comprobable exteriormente.

66. El comportamiento de un objeto se ve afectado por el estado del mismo o bien que
el comportamiento del objeto es funcin de su estado?
La definicin de comportamiento tambin recoge que le estado de un objeto afecta as
mismo a su comportamiento. Se puede decir que el comportamiento de un objeto es
funcin de su estado as como de la operacin que se realiza sobre l, teniendo algunas
operaciones el efecto lateral de modificar el estado del objeto.

67. Algunos comportamientos pueden alterar el estado de un objeto?


Si, el comportamiento de un objeto es funcin de su estado as como de la operacin que
se realiza sobre l, teniendo algunas operaciones el efecto lateral de modificar el estado
del objeto.

Pgina 8
Programacin Orientada a Objetos

68. Se puede afirmar que el estado de un objeto termina siendo los resultados
acumulados de su comportamiento.
Si, el estado de un objeto representa los resultados acumulados de su comportamiento

69. A qu definira como operacin (mtodo/funcin miembro)?


Una operacin denota un servicio que una clase ofrece a sus clientes

70. Cules son las tres operaciones ms comunes?


Modificar, Selector e Iterador.

71. Cules son las dos operaciones habituales que se utilizan para crear y destruir
instancias de clases?
Constructor y Destructor

72. Qu tipo de operacin es el modificador?


Una operacin que altera el estado de un objeto

73. Qu tipo de operacin es el selector?


Una operacin que accede al estado de un objeto, pero no altera ese estado

74. Qu tipo de operacin es el iterador?


Una operacin que permite acceder a todas las partes de un objeto en algn orden
perfectamente establecido

75. Qu tipo de operacin es el constructor?


Una operacin que crea un objeto y/o inicializa su estado

76. Qu tipo de operacin es el destructor?


Una operacin que libera el estado de un objeto y/o destruye el propio objeto

77. Cmo denominamos operaciones fuera de las clases en aquellos programas


orientados a objetos que permiten colocarlas (ej. C++)?
Se las denomina Funciones no miembro

78. Todos los mtodos son operaciones?


Si

79. Todas las operaciones son mtodos?


No todas las operaciones son mtodos, algunas operaciones pueden expresarse como
subprogramas libres.

Pgina 9
Programacin Orientada a Objetos

80. Dado el protocolo de un objeto (todos sus mtodos y subprogramas libres asociados
al objeto si el lenguaje lo permite) es conveniente dividirlo en grupos lgicos ms
pequeos de comportamiento?Por qu?
Para la mayora de las abstracciones no triviales, es til dividir este protocolo mayor en
grupos lgicos de comportamiento. Estas colecciones, que constituyen una particin
lgica del espacio de comportamiento de un objeto, denotan los papeles que un objeto
puede desempear.

81. Cmo denominamos a los grupos lgicos ms pequeos de comportamiento del


protocolo total de un objeto?
Todos los mtodos y subprogramas asociados con un objeto concreto forman su
protocolo, este define as la envoltura del comportamiento admisible en un objeto y
engloba la visin esttica y dinmica completa del mismo. Es til dividir este protocolo
mayor en grupos lgicos de comportamiento denominados Papeles o roles. Un papel es
una mscara que se pone un objeto y por tanto define un contrato entre una abstraccin y
sus clientes.

82. Cules son las dos responsabilidades ms importantes que posee un objeto?
Las responsabilidades de un objeto estn encaminadas a transmitir un sentido del
propsito de un objeto y de su lugar en el sistema. Las dos ms importantes son: El
conocimiento que un objeto mantiene y las acciones que pueden llevar a cabo.

83. Es relevante el orden en que se invocan las operaciones de un objeto?


La existencia de un estado en el seno de un objeto significa que en el orden en l se
involucran las operaciones es importante. Ej.: En el caso de una mquina expendedora de
bebidas, si primero se hace la seleccin de la bebida que queremos en lugar de introducir
el importe necesario para poder retirar la misma, la maquina no va a realizar ninguna
operacin ya que est programada para que primero se introduzca el dinero y luego se
seleccione la bebida.

84. Por qu decimos que los objetos se pueden considerar como mquinas?
Por que para algunos objetos es tan importante el orden de las operaciones que se
pueden caracterizar mejor formalmente el comportamiento de los objetos en
trminos de una maquina de estados finitos equivalentes.

85. Qu es la identidad de un objeto?


Es aquella propiedad o conjunto de propiedades que lo distingue de TODOS los dems
objetos.

86. Dadas dos variable X e Y del mismo tipo qu significa que ambas son iguales?
La igualdad puede significar que dos nombres designan el mismo objeto o que dos
nombres designan objetos distintos cuyos estados son iguales.

Pgina 10
Programacin Orientada a Objetos

87. Dadas dos variable X e Y del mismo tipo qu significa asignarle Y a X?


Y apunta a 1 instancia en memoria o nada y X apunta al mismo lugar.

88. Dadas dos variable X e Y del mismo tipo qu significa clonar X en Y?


(Pueden tener el mismo estado o no) Ambas van a apuntar al mismo objeto en memoria.

89. Qu significa realizar una clonacin superficial?


Significa que copia el objeto pero comparte su estado.

90. Qu significa realizar una clonacin profunda?


Copia el objeto as como su estado y as recursivamente.

91. Qu es el ciclo de vida de un objeto?


Es desde el momento en que se crea por 1 vez, y consume as un espacio por 1 vez,
hasta que ese espacio se recupera.

92. Cmo se libera el espacio ocupado por un objeto?


El espacio en memoria se libera al finalizar el ciclo de vida del objeto en cuestin. Un
objeto se elimina cuando se pierden todas las referencias hacia l.

93. Qu tipos de relaciones existen entre los objetos?


Agregacin y Enlace.

94. Cmo podemos definir al enlace entre objetos?


Es una conexin fsica o conceptual entre objetos. Es una asociacin especfica por el cual
un objeto (el cliente) utiliza los servicios de otro objeto (el suministrador o servidor), o a
travs de la cual un objeto puede comunicarse con otro.

95. Cmo pueden ser los mensajes entre dos objetos en una relacin de enlace?
Pueden ser Unidireccionales y/o bidireccionales.

96. Qu es un mensaje unidireccional?


Cuando un objeto activo invoca a 1 objeto servidor o agente (que acte como pasivo)

97. Qu es un mensaje bidireccional?


Cuando 1 objeto activo invoca al pasivo y el pasivo le puede devolver datos al objeto
activo.

98. Quin inicia el paso de un mensaje entre dos objetos en una relacin de enlace?
Lo inicia el actor u objeto activo.

Pgina 11
Programacin Orientada a Objetos

99. Cules son los roles o papeles que puede desempear un objeto en una relacin de
enlace?
El de Actor, servidor y agente.

100. Qu significa que un objeto acte como Actor?


Cuando el objeto puede operar sobre otros objetos pero los dems no pueden operar
sobre l.

101. Qu significa que un objeto acte como Servidor?


Un objeto que nunca opera sobre otros objetos, solo otros objetos operan sobre l.

102. Qu significa que un objeto acte como Agente?


Un objeto que puede operar sobre otros objetos y adems otros objetos pueden operar
sobre l.

103. Dados dos objetos A y B, si A le puede enviar un mensaje a B, estando ambos


relacionados por enlace, decimos que B respecto de A est:

Visible

104. Cules son las cuatro formas de visibilidad que puede poseer un objeto servidor
respecto de un objeto cliente?
1-El objeto servidor es global para el cliente
2-El objeto servidor es un parmetro de alguna operacin del cliente
3-El objeto servidor es parte del objeto cliente
4-El objeto servidor es un objeto declarado localmente en alguna operacin cliente

105. En una relacin de enlace de dos objetos, cuando uno le pasa un mensaje al otro,
adems de adoptar roles ambos deben estar:
Sincronizados

106. Cules son las posibles formas de sincronizacin?


-Secuencial
-Vigilado
-Sncrono

107. Qu significa que dados dos objetos A y B estos estn secuencialmente


sincronizados?
Secuencial: La semntica del objeto pasivo est garantizada solo en presencia de un nico
objeto activo simultneamente. (Solo A o B pueden estar activos en momento dado, no
los dos a la vez)

Pgina 12
Programacin Orientada a Objetos

108. Qu significa que la forma de sincronizarse de un conjunto de objetos es vigilada?


Vigilado: La semntica del objeto pasivo est garantizada en presencia de mltiples hilos
de control, pero los clientes activos deben colaborar para lograr la exclusin mutua.

109. Qu significa que la forma de sincronizarse de un conjunto de objetos es sncrona?


Sncrono: La semntica del objeto pasivo est garantizada en presencia de mltiples hilos
de control, y el servidor garantiza la exclusin mutua.

UNIDAD II
110. El enlace es una relacin de igual a igual o jerrquica?
De igual a igual

111. La agregacin es una relacin de igual a igual o jerrquica?


Jerrquica

112. Qu tipo de jerarqua denota la agregacin?


Todo/parte

113. Qu otros nombres recibe el todo en una relacin de agregacin?


Agregado

114. En una relacin de agregacin las partes forman parte del estado del todo?
Si

115. Qu tipos de agregacin existen?


Con contencin fsica, y sin contencin fsica.

116. Qu caracteriza a la agregacin con contencin fsica?


Por ejemplo, un aeroplano se compone de alas, motores, tres de aterrizaje, etc.; es un
caso de contencin fsica.

117. Qu es una clase?


Una clase es un conjunto de objetos que comparten una estructura comn y un
comportamiento comn

118. La interfaz de la clase proporciona su visin interna?


La interfaz proporciona la visin externa de la clase.(enfatiza su abstraccin a la vez que
oculta su estructura y los secretos de su comportamiento)

119. La implementacin de la clase proporciona su visin externa?

Pgina 13
Programacin Orientada a Objetos

La implementacin proporciona la visin interna de la clase(engloba los secretos de su


comportamiento)

120. En cuntas partes la podemos dividir una interfaz en trminos de la accesibilidad o


visibilidad que posee?
Public (una declaracin accesible a todos los clientes)
Protected (una declaracin accesible solo a la propia clase, sus subclases, y sus
clases amigas (friends))
Private (una declaracin

121. Qu tipos bsicos de relaciones existen entre las clases?


Existen 3 tipos bsicos de relaciones entre clases:
La primera es la generalizacin / especializacin, que denota la relacin es un.
La segunda es la relacin todo / parte (whole / part), que denota una relacin parte de.
La tercera es la asociacin, que denota alguna dependencia semntica entre clases de otro
modo independientes.

122. Qu relaciones entre clases se desprenden de las tres relaciones bsicas?


Asociacin
Herencia
Agregacin
Uso
Instanciacin (creacin de instancias o ejemplares)
Metaclase

123. La asociacin denota una dependencia semntica y la direccin de esta


asociacin?
La direccin indica que ambas pueden convivir en un mismo aspecto, como entre las velas
y las rosas, ambas pueden servir para decorar la mesa de una cena.

124. Qu significa la cardinalidad en una relacin?


La cardinalidad es la asociacin por ej. Uno a uno, uno a muchos y muchos a muchos, en
una relacin por ej. Puede ser uno a uno una venta con tarjeta, las clases seran venta y
tarjeta de crdito, cada venta se corresponde con una exactamente con una transaccin
de tarjeta de crdito, y cada transaccin se corresponde con una venta, en una muchos a
muchos, por ej. Cada instancia cliente podra iniciar una transaccin con una instancia de
la clase vendedor, y cada uno de esos vendedores podra interactuar con muchos clientes
distintos.

125. Qu cardinalidad puede existir entre clases relacionadas por asociacin?


Pueden existir 3, uno a uno, uno a muchos o muchos a muchos.

Pgina 14
Programacin Orientada a Objetos

126. Qu es la herencia?
La herencia se llama a la clase que hereda la estructura y el comportamiento de la clase
anterior, al paso en el que nos encontramos, en esta nueva clase, se aaden cosas a su
estructura, redefine su comportamiento, y le aade cosas.

127. Cuntos tipos de herencia existen?


Existen dos, herencia simple y herencia mltiple.

128. A qu se denomina herencia simple?


La herencia simple es una relacin entre las clases, en la que la clase comparte la
estructura y/o el comportamiento definidos en una herencia.

129. A qu se denomina herencia mltiple?


Es igual que la herencia simple, pero su comportamiento est definido en ms clases.

130. Cmo se denomina a la clase que no se espera tener instancias de ella y solo se
utilizar para heredar a otras clases?
Se denomina superclase.

131. Cmo se denomina a la clase que se espera tener instancias de ella y puede
utilizarse para heredar a otras clases o no?
Se denomina subclase.

132. Cmo se denomina al mtodo de una clase abstracta que no posee


implementacin y fue pensado para que sea implementado en las sub clases que lo
heredan?
El mtodo se llama: Funcin virtual pura (o pure virtual function)

133. Cmo se denomina a la clase ms generalizada en una estructura de clases?


Se denomina Clase Base.

134. Qu es el polimorfismo?
Capacidad por la cual una accin puede responder de distintas formas de acuerdo a la
subclase que la implementa.

135. Cmo se denomina cuando una clase posee mtodos que comparten el nombre y
se diferencias por su firma?
Se denominan conceptos de sobrecarga.

Pgina 15
Programacin Orientada a Objetos

136. Qu sentencias de cdigo se evitan utilizar cuando se aplica correctamente el


polimorfismo?
Se evita utilizar sentencias como las relacionadas a PASCAL la cual no es orientada a
objetos y es propensa a generar errores y adems aade inestabilidad al diseo.

137. Qu es la agregacin cmo relacin entre clases?


Es como denota el todo y una de sus partes es una instancia de la clase. Las relaciones de
agregacin entre clases tienen un paralelismo directo con las relaciones de agregacin
entre los objetos correspondientes a esas clases.

138. Qu formas de contencin fsica existen en la agregacin?


La agregacin establece una direccin entre la relacin todo/parte, por ejemplo el
calentador es una parte del objeto controladortemperatura, y no al revs, la agregacin no
precisa contencin fsica, como se desprende de la contencin por valor o referencia. Por
ejemplo aunque los accionistas poseen acciones, un accionista no posee fsicamente las
acciones que posee.

139. Qu caractersticas posee la contencin fsica por valor?


La contencin por valor no puede ser cclica (es decir ambos objetos no pueden ser parte
del otro)

140. Qu caractersticas posee la contencin fsica por referencia?


La contencin por referencia puede serlo, (cada objeto puede tener un puntero
apuntando al otro)

141. Qu es una relacin de uso?


Una relacin de uso es un posible refinamiento de una asociacin, por el que se establece
que abstraccin es el cliente y que abstraccin es el servidor que proporciona ciertos
servicios.

142. Qu es la instanciacin?
La instanciacin es la creacin de instancias.

143. Todo objeto es una instancia de una clase?


S, todo objeto es una instancia de la clase.

144. Qu es una metaclase?


Una Metaclase es la clase de una clase, cuyas instancias son las mismas clases).

Pgina 16
Programacin Orientada a Objetos

145. Qu mtricas hay que observar para determinar la calidad de una abstraccin?
Las mtricas para determinar la calidad de una abstraccin son:
Acoplamiento
Cohesin
Suficiencia
Complecin (estado completo/plenitud)
Ser primitivo

146. Qu es el acoplamiento?
El acoplamiento es la medida de la fuerza de la asociacin establecida por una conexin
entre un modulo y otro.

147. Qu es la cohesin?
La cohesin proviene del diseo estructurado, mide el grado de conectividad entre los
elementos de un solo modulo y para el diseo orientado a objetos, una sola clase u
La forma de cohesin menos deseable es la cohesin por coincidencia, en la que se
incluyen en la misma clase o mdulos abstracciones sin ninguna relacin.
La forma de cohesin ms deseable es la cohesin funcional, en la cual los elementos de
una clase o modulo trabajan todos juntos para proporcionar algn comportamiento bien
delimitado.

148. Qu es la suficiencia?
La suficiencia quiere decir que la clase o modulo captura suficiente caractersticas de la
abstraccin como para permitir una interaccin significativa y eficiente.

149. Qu es la complecin?
La complecin quiere decir que el interfaz de la clase o modulo captura todas las
caractersticas significativas de la abstraccin.

150. Qu significa ser primitivo?


Ser primitivo significa poder implantarse eficientemente solo si tienen acceso a la
representacin subyacente de la abstraccin.

151. Qu se debe observar al momento de decidir si una abstraccin debe implementar


un determinado comportamiento o no?
Se debe decidir en qu clase se sitan los mtodos que cooperan para la formacin de un
protocolo completo de la abstraccin. Halbert y OBrien ofrecen los siguientes criterios a
considerar para la toma de una decisin de este tipo:
Reutilizacin
Complejidad
Aplicabilidad

Pgina 17
Programacin Orientada a Objetos

Conocimiento de la implementacin

152. Qu formas puede adoptar el paso de un mensaje?


Las formas que puede adoptar el paso de un mensaje son:
Sincrnico
Abandono inmediato
De intervalo
Asincrnico

153. Qu caractersticas posee un mensaje sncrono?


Mensaje sincrnico: Una operacin comienza solo cuando el emisor ha iniciado la accin y
el receptor est preparado para aceptar el mensaje; el emisor y el receptor estarn
indefinidamente hasta que ambas partes estn preparadas para continuar.

154. Qu caractersticas posee un mensaje de abandono inmediato?


Mensaje de abandono inmediato: Igual que el sincrnico, excepto en que el emisor
abandonara la operacin si el receptor no est preparado inmediatamente.

155. Qu caractersticas posee un mensaje de intervalo?


Mensaje de intervalo: Igual que el sincrnico, excepto en que el emisor esperara a que el
receptor est listo solo durante un intervalo de tiempo especificado.

156. Qu caractersticas posee un mensaje Asncrono?


Mensaje Asincrnico: Un emisor puede iniciar una accin independientemente de si el
receptor est esperando o no el mensaje.

157. Qu significa que una abstraccin est accesible a otra?


Que una abstraccin esta accesible a otra significa la capacidad de una abstraccin para
ver a otra y hacer referencia a recursos en su vida externa, puede darse solo donde sus
mbitos se superpongan y solo donde estn garantizados los derechos de acceso.

158. Qu expresa la ley de Demter?


Afirma que los mtodos de una clase no deben depender de ninguna manera de la
estructura de ninguna clase, salvo de la estructura inmediata de su propia clase. Adems,
cada mtodo debera enviar mensajes solo a objetos pertenecientes a un conjunto muy
limitado de clases.

159. Cul es la consecuencia inmediata de aplicar la ley de Demter?


La consecuencia al aplicar la Ley de Demter es la creacin de clases dbilmente
acopladas, cuyos secretos de implantacin estn encapsulados. Tales clases estn libres de
sobrecarga, lo que significa que para comprender el significado de una clase no es
necesario comprender los detalles de muchas otras clases.

Pgina 18
Programacin Orientada a Objetos

160. Cules son las cuatro formas fundamentales por las cuales un objeto X puede
hacerse visible a un objeto Y?
Las cuatro formas fundamentales por las que un objeto X pueda hacerse visible a un
objeto Y son:
El objeto proveedor es global al cliente.
El objeto proveedor es parmetro de alguna operacin del cliente.
El objeto proveedor es parte del objeto cliente.
El objeto proveedor es un objeto declarado localmente en el mbito del diagrama
de objetos.

161. Para qu sirve clasificar a los objetos?


La clasificacin de los objetos sirve para poder agrupar a aquellos que tienen una
estructura o un comportamiento en comn, pudiendo de esta manera ayudar a identificar
las diferentes jerarquas entre clases.

162. Por qu es tan difcil la clasificacin de objetos?


Si bien un objeto es algo que tiene muy bien definida su frontera, la clasificacin resulta
un poco difcil ya que siempre se podr crear nuevas subclases, crear una clase mayor a
partir de otras ms pequeas o incluso idear una nueva clase.

163. Cmo es el rol del observador en la clasificacin de objetos?


El rol del observador es muy importante, porque depender de su punto de vista.

164. Cules son las aproximaciones generales a la clasificacin?


Las aproximaciones generales a la clasificacin son 3:
Categorizacin clsica
Agrupamiento conceptual
Teora de prototipos

165. Qu es la categorizacin clsica?


En este tipo de clasificacin se agrupan todas las entidades que tienen una determinada
propiedad o coleccin de propiedades en comn

166. Qu es el agrupamiento conceptual?


En el agrupamiento conceptual las clases se general primero con conceptos generales, y
luego se agrupan a aquellas entidades que cumplen con esas descripciones

167. Qu es la teora de prototipos?


En las situaciones en las que no es posible aplicar ninguna de las dos clasificaciones
anteriores se aplica la teora de prototipos, que consiste en crear una clase prototpica y
agrupar en ella todas las entidades que se le aproximan

Pgina 19
Programacin Orientada a Objetos

168. Qu es una abstraccin clave?


Una abstraccin clave es una clase u objeto que forma parte del vocabulario del dominio
del problema.

169. Qu son los mecanismos?


Los mecanismos son estructuras mediante las cuales los objetos colaboran para
proporcionar algn comportamiento que satisficiese un requerimiento del problema

UNIDAD III

170. Qu es un Framework?
Un framework es una coleccin de clases y libreras generalmente orientadas a reducir el
trabajo del programador, ya que al ser reutilizable disminuye considerablemente el
tiempo de desarrollo.

171. Qu son los frozenspots en un Framework?


Los frozen-spots (o puntos congelados) son los puntos inmutables o inalterables que
constituyen el ncleo o kernel de un framework

172. Qu son los hotspots en un Framework?


Los hot-spots (o puntos calientes) son los puntos flexibles del framework. Son las clases o
mtodos abstractos que deben ser implementados o puestos en ejecucin

173. Cmo se puede clasificar un Framework segn su extensibilidad?


Segn su extensibilidad, los frameworks pueden ser de caja blanca o de caja negra.

Pgina 20
Programacin Orientada a Objetos

174. Qu es un Framework de Caja Blanca?


En los Frameworks de Caja Blanca, tambin llamados frameworks con arquitectura de
configuracin conducidos, la instanciacin es solamente posible a travs de la creacin de
nuevas clases. Estas clases se pueden introducir por herencia o composicin.

175. Qu es un Framework de Caja Negra?


Los frameworks de caja Negra producen instancias usando escrituras o scripts de
configuracin. Despus de la configuracin, una herramienta automtica de instanciacin
crea las clases y el cdigo fuente (source code). No requiere que el usuario sepa los
detalles internos del framework, por lo que son generalmente ms fciles de usar.

176. Qu ventajas posee utilizar un Framework?


Las principales ventajas de la utilizacin de un framework son:
El desarrollo rpido de aplicaciones. Los componentes incluidos en un framework
constituyen una capa que libera al programador de la escritura de cdigo de bajo
nivel.
La reutilizacin de componentes software al por mayor. Los frameworks son los
paradigmas de la reutilizacin.
El uso y la programacin de componentes que siguen una poltica de diseo
uniforme. Un framework orientado a objetos logra que los componentes sean
clases que pertenezcan a una gran jerarqua de clases, lo que resulta en bibliotecas
ms fciles de aprender a usar.

177. Qu problemas resuelve .NET Framework?


Se puede decir que hay 2 importantes problemas con los que los desarrolladores deben
enfrentarse al generar aplicaciones web:
Habitualmente los desarrolladores deben delimitar su mbito
Los desarrolladores emplean la mayor parte de su tiempo en escribir de nuevo las
aplicaciones para que funcionen en cada tipo de plataforma y cliente.
El .NET Framework fue desarrollado para resolver estos problemas.

178. Qu es y qu permite hacer el CLR?


El CLR (Common Language Runtime) es el motor en tiempo de ejecucin del .NET
Framework, es decir la parte del "entorno" que se encarga de ejecutar el cdigo de los
lenguajes del .NET Framework.
Sus principales caractersticas son
Proporciona un desarrollo de aplicaciones ms sencillo y rpido
Administra el cdigo en tiempo de ejecucin

Pgina 21
Programacin Orientada a Objetos

Gestiona la seguridad del cdigo que es ejecutado


Proporciona un sistema comn de tipos para todos los lenguajes del entorno
Dispone de un diseo abierto a lenguajes y herramientas de desarrollo creadas por
terceros

179. Qu es el MSIL?
El MSIL (Microsoft Intermediate Language) es un lenguaje o cdigo intermedio generado
por el compilador y consiste en un conjunto de instrucciones que son independientes del
sistema operativo o procesador en el que vaya a ejecutarse el programa, y se ocupan de la
manipulacin de objetos, accesos a memoria, manejo de excepciones, etc.

180. Qu es el CTS?
El Common Type System (CTS) o Sistema de Tipo Comn es el conjunto de reglas que han
de seguir las definiciones de tipos de datos para que el CLR las acepte. Es decir, aunque
cada lenguaje gestionado disponga de su propia sintaxis para definir tipos de datos, en el
MSIL resultante de la compilacin de sus cdigos fuente se han de cumplir las reglas del
CTS. Estas reglas componen una gran jerarqua que parte del tipo base Object, y del que
heredan el resto de tipos de la plataforma.

181. Qu es el CLS?
El Common Language Specification (CLS) o Especificacin del Lenguaje Comn es un
conjunto de reglas que han de seguir las definiciones de tipos que se hagan usando un
determinado lenguaje gestionado si se desea que sean accesibles desde cualquier otro
lenguaje gestionado. Obviamente, slo es necesario seguir estas reglas en las definiciones
de tipos y miembros que sean accesibles externamente, y no la en las de los privados.

UNIDAD IV

182. Qu extensin poseen los archivos en VB.NET?


Slo existe un tipo de fichero de cdigo, el cual tiene la extensin .vb

183. Qu diferencia existe en .NET entre un archivo de mdulo y un archivo de clase?


Ah desaparecido en vb.net este concepto, ya que un archivo puede contener varios
mdulos y varias clases e, incluso, una combinacin de ambos.

184. Cules son las palabras claves para definir un mdulo?


Module y End Module

185. Mencionar al menos tres cosas que puede contener un mdulo.


Pueden contener cualquier numero de variables, subs y functions.

186. Qu visibilidad posee un elemento pblico colocado en un mdulo?

Pgina 22
Programacin Orientada a Objetos

Es visible dentro del mdulo o clase donde se declara e incluso desde otros mdulos que se
encuentren dentro del proyecto, as como desde los mdulos de otros proyectos que hagan
referencia al proyecto.

187. Qu visibilidad posee un elemento privado colocado en un mdulo?


Slo es visible desde el mdulo donde se declara.

188. Un mdulo puede tener un procedimiento Sub New?


Si, la rutina llamara a este procedimiento antes de ejecutar el cdigo contenido en el
propio modulo.

189. Un mdulo puede tener ms de un procedimiento Sub Main?


Si, se puede seleccionar el modulo que contenga un procedimiento sub main que se
ejecutara cuando se inicie el programa.

190. Qu caracterstica posee el procedimiento Sub New?


El runtime llama al procedimiento sub new la primera vez que el proyecto que se
encuentra en ejecucin haga referencia a una variable o procedimiento del modulo. No se
ejecutara cuando se acceda a una constante definida en el modulo.

191. Qu caracterstica posee el procedimiento Sub Main?


Sirve como punto de partida y control general de la aplicacin. .NET Framework llama al
procedimiento Main cuando ha cargado la aplicacin y est listo para pasarle el control. A
menos que vaya a crear una aplicacin de Windows Forms, donde el procedimiento
Main() lo escribe el compilador, debe escribir el procedimiento Main para las aplicaciones
que se ejecutan por s solas (por ejemplo una aplicacin de consola).

192. Qu se ejecuta primero en un mdulo si este posee Sub Main y Sub New?
Primero se ejecuta el constructor Sub New() y luego el procedimineto Sub Main()

193. Cmo se declara una clase en un mdulo?


Class End Class

194. Qu cosas comunes podemos encontrar en una clase?


Campos, propiedades, mtodos, eventos y todo lo que se pueda declarar en una clase.

195. Cmo se construye un formulario en .NET?


Es simplemente una clase que hereda de la clase system.windows.forms.form
perteneciente a .net framework.

Pgina 23
Programacin Orientada a Objetos

196. Qu posee .NET para trabajar los aspectos visuales de un formulario?


El Diseador de Windows Forms. Este proporciona una solucin de desarrollo rpida para
la creacin de aplicaciones basadas en Windows. En l se realiza el diseo visual de
formularios basados en el cliente. Los controles se pueden arrastrar o dibujar en su
superficie desde el Cuadro de herramientas.

197. Qu procedimiento utiliza y necesita fundamentalmente el diseador de


formularios?
InitializateComponents()

198. Cul debera ser la primera instruccin en el constructor de un formulario?


Sub new

199. Qu es un NameSpace?
Es un nombre lgico donde se encuentra un componente.

200. Cmo se define un NameSpace?


Namespace End namespace

201. Qu se puede colocar dentro de un NameSpace?


Module, class, structure, interface y enum

202. Con qu instruccin se puede poner disponible en un proyecto el contenido de un


NameSpace?
imports

203. Se pueden anidar los NameSpace?


Si, no existe un limite terico para anidar espacios de nombres

204. La instruccin Imports se puede colocar en cualquier lado? Justifique


No, siempre deben estar antes de cualquier declaracin que halla en el cdigo.

205. Qu mbitos pueden tener las variables?


Dim, prvate, public, static

206. Qu visibilidad posee Dim a nivel de procedimiento?


Declarar una variable local (dinmica), que solo ser visible dentro de dicho
procedimiento.

207. Qu visibilidad posee Dim a nivel de clase?


Tendra una mbito de Public

Pgina 24
Programacin Orientada a Objetos

208. Qu visibilidad posee Public a nivel de mdulo?


Variables globales(es decir, variables que existan durante todo el tipo de vida del
programa y a las que pueda acceder desde cualquier parte del proyecto)

209. Qu efecto provoca colocarle mbito de Static a una variable?


Variables estticas dentro de un procedimiento (no podr utilizar la palabra static dentro
de una declaracin de procedimiento para hacer que todas las variables contenidas en el
procedimiento seas estticas.

210. Para qu sirve Option Explicit?


Estas instrucciones obligan a la declaracin explcita de todas las variables contenidas en
el modulo

211. Para qu sirve Option Compare?


Hace que las comparaciones de cadena realizadas en el modulo distingan el empleo de
maysculas y minsculas

212. Qu valores acepta Option Compare?


Option compare binary
Option compare text

213. Qu efecto posee el valor Binary en el Option Compare?


Este tipo de comparacin es especialmente til si las cadenas pueden contener caracteres que no sern
interpretados como texto

214. Qu efecto posee el valor Text en el Option Compare?


Este tipo de comparacin es til si las cadenas contienen nicamente caracteres de texto y desea
compararlas teniendo en cuenta las equivalencias alfabticas como la no distincin entre maysculas y
minsculas y las letras estrechamente relacionadas

215. Para qu se utiliza Option Strict?


Para desactivar las conversiones implcitas de restriccion

216. Para qu se utiliza Option Infer?


Al establecer Option Infer en On, puede declarar las variables sin especificar explcitamente un tipo de
datos.

217. Dar un ejemplo de uso de Option Infer.


Option Infer On
' Variable num is an Integer.
Dim num = 5

Pgina 25
Programacin Orientada a Objetos

218. El siguiente cdigo es correcto? Justifique


Sub Prueba()
Dim x As Integer
Dim Y As Integer = 10
For x = 1 To 10
Dim y As Integer = 20
Next
End sub

No. Debido a que dentro de un mtodo no es posible declarar multiples veces la variable,
ni aunque la misma se oculte dentro de un bloque de modulo.

219. Qu tipos de datos son de punto flotante?


Double

220. Cuntos bytes ocupa un tipo Boolean?


4 Bytes

221. Cuntos bytes ocupa un tipo Byte?


1 Byte

222. Cuntos bytes ocupa un tipo Char?


2 Bytes

223. Cuntos bytes ocupa un tipo Date?


8 Bytes

224. Cuntos bytes ocupa un tipo Decimal?


12 Bytes

225. Cuntos bytes ocupa un tipo Double?


8 bytes

226. Cuntos bytes ocupa un tipo Integer?


4 Bytes

227. Cuntos bytes ocupa un tipo Long?


8 bytes

228. Cuntos bytes ocupa un tipo Object?


4 Bytes

Pgina 26
Programacin Orientada a Objetos

229. Cuntos bytes ocupa un tipo Short?


2 Bytes

230. Cuntos bytes ocupa un tipo Single?


4 Bytes

231. Cuntos bytes ocupa un tipo String?


10 Bytes + (2 * Longitud de la Cadena)

232. Cuntos bytes ocupa un tipo definido por el usuario?


La suma del tamao de sus miembros. Cada uno de los miembros de una estructura tiene
un rango determinado por su tipo de dato y es independiente de los rangos de los dems
miembros.

233. Cuntos bytes ocupa un tipo UInteger?


4 Bytes

234. Cuntos bytes ocupa un tipo ULong?


8 Bytes

235. Cuntos bytes ocupa un tipo UShort?


2 Bytes

236. Con qu rango de valores trabaja un tipo Boolean?


True o False

237. Con qu rango de valores trabaja un tipo Byte?


0 a 255 (sin signo)

238. Con qu rango de valores trabaja un tipo Char?


0 a 65535 (sin signo)

239. Con qu rango de valores trabaja un tipo Date?


1 de enero del 1 DC al 31 de Diciembre de 9999

240. Con qu rango de valores trabaja un tipo Decimal?


+/- 79.228.162.514.264.337.593.543.950.335 sin puntos decimales.
+/- 7, 9228162514264337593543950335 con 28 decimales a continuacin de la coma.

241. Con qu rango de valores trabaja un tipo Double?

Pgina 27
Programacin Orientada a Objetos

-1,79769313486231 E308 a -4,94065645841247 E-324 para valores negativos;


4,94065645841247 E-324 a 1,79769313486232 E308 para valores positivos.

242. Con qu rango de valores trabaja un tipo Integer?


-2.147.483.648 a 2.147.483.647

243. Con qu rango de valores trabaja un tipo Long?


-9.223.372.036.854.775.808 a 9.223.372.036.854.775.807

244. Con qu rango de valores trabaja un tipo Object?


Se puede almacenar cualquier tipo en una variable tipo Object.

245. Con qu rango de valores trabaja un tipo Short?


-32.768 a 32.767

246. Con qu rango de valores trabaja un tipo Single?


-3,402823 E38 a -1,401298 E-45 para valores negativos.
1,401298 E-45 a 3,402823 E 38 para valores positivos.

247. Con qu rango de valores trabaja un tipo String?


Desde 0 a, aproximadamente, 2.000 millones de caracteres Unicode.

248. Con qu rango de valores trabaja un tipo UInteger?


Contiene enteros de 32 bits sin signo (4 bytes) que se sitan en el intervalo entre 0 y
4.294.967.295.

249. Con qu rango de valores trabaja un tipo ULong?


0 a 18.446.744.073.709.551.615 (1,8...E+19 ) (sin signo)

250. Con qu rango de valores trabaja un tipo UShort?


0 a 65.535 (sin signo)

251. Se puede declarar una variable e inicializarla en la misma lnea?


Si

252. Cmo se declara e inicializa una variable en la misma lnea?


Dim ancho as single = 100 o
Dim nombre as string = pepe

253. Se pueden inicializar variables en la misma lnea con datos que no sean
constantes?
Si

Pgina 28
Programacin Orientada a Objetos

254. Dar un ejemplo donde se observe como se declara e inicializa una variable en la
misma lnea con datos que no sean constantes.
Dim ds as system.data.dataset

255. Se puede declarar varias variables del mismo tipo en una lnea?
Si

256. Cmo se declaran varias variables del mismo tipo en una lnea?
Dim x, y, z as integer

257. Se puede declarar varias variables del mismo tipo en una lnea e inicializar la
ltima?
No

258. Cmo declaro una variable del tipo cliente y le asigno una instancia de cliente todo
en la misma lnea de cdigo?
Dim Variable as Cliente = New Cliente()

O tambin

Dim Variable As New Cliente()

259. Qu operador se utiliza para saber si la variable C1 apunta al mismo lugar que la
variable C2?
Se podra usar el operador Is.

260. Cules son los dos tipos en .NET que permiten clasificar a todos los dems?
Tipos por referencia y tipos por valor.

261. Dnde se encuentran (dentro de la memoria) los objetos reales que son
apuntados por los Reference Type?
Dentro de un rea de memoria llamada Montn administrado (managed heap).

262. Qu tipos de datos son afectados por el GC?

263. Cules son los operadores de conversin ms utilizados?


Cint, CStr

264. Qu operador de conversin posee la caracterstica de trabajar tanto con


Reference Type como con Value Type y si da un error dispara una excepcin?
Convert.To

Pgina 29
Programacin Orientada a Objetos

265. Qu operador de conversin posee la caracterstica de trabajar tanto con


Reference Type y si da un error dispara una excepcin?
Ctype y DirectCast
266. Qu particularidad presenta TryCast respecto Ctype y DirectCast?
Si se produce un error al intentar llevar a cabo una conversin, CType y DirectCast
producen un error InvalidCastException. Esto puede afectar negativamente al rendimiento
de la aplicacin. TryCast devuelve Nothing (Visual Basic), de modo que en lugar de
controlar una posible excepcin, slo debe comprobar el resultado devuelto con Nothing.

267. Mencione al menos seis funciones de conversin de tipos


CBool Convertir a: Boolean
CByte Convertir a: Byte
CChar Convertir a: Char
CDate Convertir a: Date
CDbl Convertir a: Double
CDec Convertir a: Decimal

268. Para qu se utiliza CUInt?


Para convertir un valor al tipo de dato Uinteger.

269. Para qu se utiliza CSng?


Para convertir un valor al tipo de dato Single.

270. Las constantes pueden ser pblicas?


S.

271. Las enumeraciones soportan mbitos?


S.

272. Las matrices pueden tener como ndice base un cero a pesar que por defecto
toman este valor?
S.

273. Qu significa que una matriz es dinmica?


Es una matriz que se implementa cuando se desconoce las dimensiones con las que se va
a trabajar.

274. Las matrices trabajan por referencia o por valor al asignar una matriz A a una
matriz B?
Por referencia.

Pgina 30
Programacin Orientada a Objetos

275. Qu ocurre si hago MiMatriz1 = MiMatriz2 y cambio un valor en MiMatriz1?


Justifique
Ambas matrices van a ser diferentes.

276. Qu ocurre si hago MiMatriz1 = MiMatriz2 y cambio un valor en MiMatriz2?


Justifique
Ambas matrices van a ser iguales. La razn se debe a que MiMatriz1, se le asigna
MiMatriz2. Sumado al hecho de que las matrices son de tipo por referencia.

277. Qu utilizo si deseo asignar una matriz a otra y que no queden apuntando al
mismo objeto en memoria?
Se deber utilizar el mtodo Clone.

278. Cmo se define un bloque de cdigo para una estructura?


Estructure MiEstructura

End Estructure

279. Mencione al menos tres elementos que puedan ser colocados dentro de una
estructura.
Un Get, un Set y una variable.

280. Cmo hara para que la estructura E1 herede de la estructura E2?

281. De dnde heredan las clases el mtodo Finalize?


Hereda de System.Object

282. Cul es la firma que implementa el mtodo Finalize?


Protected Overrides Sub Finalize()

283. Cmo obtengo el mtodo Dispose?


Implementando la interfaz Idisposable.

284. Qu se programa en el mtodo Dispose?


La liberacin de los recursos en la memoria del objeto en el que se lo invoque.

285. Se pueden combinar el uso de Dispose y Finalize?


S.

286. Cmo se obtiene el nmero de generacin actual de un objeto?


Mediante el mtodo GC.GetGeneration

Pgina 31
Programacin Orientada a Objetos

287. Qu utiliza para convertir un objeto en no vlido para la recoleccin de


elementos no utilizados desde el principio de la rutina actual hasta el momento en que
se llam a este mtodo?
Con el mtodo KeepAlive de la clase System.GC

288. Cmo se solicita que el sistema no llame al finalizador del objeto especificado?
Con el mtodo SuppressFinalize de la clase System.GC

289. Qu es una excepcin?


Es una condicin no esperada que ocurren durante la ejecucin de una aplicacin o
cuando el cdigo se est ejecutando dentro del propio .NET Frameword. Cuando se
produce esta situacin se dice que el cdigo inicia una excepcin que se espera que otro
cdigo sea capaz de capturar.

290. Qu se coloca en el bloque Catch?


El cdigo de respuesta a la excepcin que se est evaluando, podr examinar las
propiedades del objeto Exception y decidir cmo reaccionar al error.

291. Cmo construira un objeto del tipo Exception personalizado?


Se declara un objeto que herede de la clase System.ApplicationException.

292. Qu es una excepcin?


Es una condicin no esperada que ocurren durante la ejecucin de una aplicacin o
cuando el cdigo se est ejecutando dentro del propio .NET Frameword. Cuando se
produce esta situacin se dice que el cdigo inicia una excepcin que se espera que otro
cdigo sea capaz de capturar.

293. Qu ocurre si en el bloque de cdigo donde se produce la excepcin el error no


est siendo tratado?
Es posible que no se est capturando el tipo de excepcin especifico.

294. Cul es el objeto de mayor jerarqua para el manejo de excepciones?


El objeto de mayor jerarqua en el manejo de excepciones es Exception

295. En qu namespace se encuentra la clase Exception?


System.Exception

296. Cules son las dos clases genricas ms importantes definidas en el FrameWork
adems de Exception?

297. Qu instruccin se utiliza para poner en prctica el control e interceptar las


excepciones?

Pgina 32
Programacin Orientada a Objetos

Se utiliza la instruccin de bloque Try... Catch

298. Dnde se coloca el cdigo protegido contra excepciones si se iniciara una


excepcin?
Se coloca dentro del Try y antes del primer Catch

299. Qu se coloca en el bloque Catch?


Se colocan las instrucciones a ejecutar en caso de ocurrir la excepcin controlada.

300. Qu tipo de excepcin se utiliza para interceptar un error de divisin por cero?
El tipo de excepcin es DivideByZeroException y devuelve la cadena << Intento de dividir
por cero>>.

301. Qu tipo de excepcin se utiliza para interceptar una DLL que tiene problemas al
ser cargada?
El tipo de excepcin es InvalidComObjectException.

302. Qu colocara dentro de una clausula Catch para especificar una condicin
adicional que el bloque Catch deber evaluar como verdadero para que sea
seleccionada?
La expresin que usaramos es When. Que permite definir filtros de excepciones ms
especficos.

303. Si se desea colocar cdigo de limpieza y liberacin de recursos para que se ejecute
cuando una excepcin se produzca, dnde lo colocara?
En la clausula Finally.

304. Qu instruccin se utiliza para provocar un error y que el mismo se adapte al


mecanismo de control de excepciones?
La instruccin es Throw.

305. Escriba el cdigo que permitira provocar una excepcin del tipo
ArgumentException?
Throw New ArgumentException("Error de Argumentos")

306. Cmo construira un objeto del tipo Exception personalizado?


Public Class ExcepPersonalizada
Inherits System.ApplicationException

Overrides ReadOnly Property Message() As String


Get
Return "No se puede cargar el archivo de Inicializacin."

Pgina 33
Programacin Orientada a Objetos

End Get
End Property
End Class

307. Cmo armara un Catch personalizado para que se ejecute cuando se d la


excepcin ClienteNoExisteException?
Try
ValidarCliente()
Catch Ex As ClienteNoExisteException
Console.WriteLine(ex.Message)
Catch Ex As Exception
Console.WriteLine(ex.Message)
End Try

UNIDAD V
308. Qu es un Campo de una clase?
Son variables declaradas directamente dentro de una clase y pueden ser campos pblicos
o privados.

309. Qu es un mtodo de una clase?


Son procedimientos. Los procedimientos son un conjunto de sentencias que realizan una
accin lgica.

310. A qu denominamos sobrecarga?


Sobrecargar un mtodo significa que podr proporcionar varios mtodos con el mismo
nombre pero con diferentes firmas de parmetros. (Es decir, con un nmero distinto de
parmetros o con parmetros de diferente tipo).

311. Qu es una propiedad de una clase?


Las propiedades son campos privados de una clase que se puede acceder cdigo externo.

312. Qu tipos de propiedades existen?


Existen propiedades de slo lectura y slo escritura.

ReadOnly Property Nombre As String


Get
Return _Nombre
End Get
End Property
WriteOnly Property Nombre As String
Set(ByVal value As String)
_Nombre = value

Pgina 34
Programacin Orientada a Objetos

End Set
End Property

313. Qu mbitos pueden tener los campos, mtodos y propiedades de las clases?
Los campos tienen mbitos Dim, Private, Public, Friend, Protected, Protected Friend.

314. Qu caractersticas posee cada mbito existente si se lo aplico a un campo, un


mtodo y una propiedad de una clase?
Dim: Declara una variable en un mdulo, procedimiento o bloque.
Cuando se usa para declarar una variable a nivel de mdulo, se puede sustituir por
Private.
Private: El elemento declarado slo es visible dentro del nivel en el que se ha
declarado.
Public: El elemento es visible en cualquier parte.
Friend: El elemento es visible dentro del propio ensamblado (proyecto).
Protected: El elemento es visible slo en las clases derivadas.
Protected Friend: El elemento es visible en las clases derivadas y en el mismo
ensamblado.

315. Para qu se utilizan los constructores?


Los constructores son mtodos que se ejecutan cuando se crea una nueva instancia de la
clase. El constructor recibe siempre el nombre de Sub New

316. A qu se denomina tiempo de vida de un objeto?

317. Para administrar las instancias de .NET se utiliza un contador de referencias?


No, Ya que esto era una funcionalidad de VB 6 y en NET decidieron sacar el contador de
referencia para evitar todos los problemas que trae asociados a esto.

318. Qu objeto es el encargado de liberar el espacio ocupado por objetos que ya no se


utilizan?
El proceso de Recoleccin de elementos no utilizados se llama Garbage Collection (GC).

319. Dnde se encuentran las instancias de los objetos administrados por el GC?
En la memoria.

320. Cules son los dos mtodos ms notorios que deben implementar las clases para
trabajar correctamente con la recoleccin de elementos no utilizados y matar las
instancias administradas y no administradas?
Los dos mtodos especiales son Finalize y Dispose.

Pgina 35
Programacin Orientada a Objetos

321. De dnde heredan las clases el mtodo Finalize?


Todos los objetos Net heredan el mtodo Finalize de la clase System.Object.

322. Cul es la firma que implementa el mtodo Finalize?


Este mtodo implementa la firma mediante las palabras claves Overrides y Protected.

323. Qu mtodo se utiliza para que el GC recolecte los elementos no utilizados?


El mtodo que se utiliza es GC.Collect()

324. Qu mtodo se utiliza para suspender el subproceso actual hasta que el


subproceso que se est procesando en la cola de finalizadores vace dicha cola?
El mtodo que se utiliza es GC.WaitForPendingFinalizers()

325. Cundo se ejecuta el mtodo collect del GC que mtodo se ejecuta en los objetos
afectados?
Se dispara el mtodo Finalize de dicho objeto.

326. Qu mtodo debera exponer una clase bien diseada teniendo en consideracin
que no posee destructor?
Debera tener el mtodo Dispose.

327. Cmo obtengo el mtodo Dispose?


A dicha clase se deber implementar IDisposable, una interfaz definida en .NET
Framework. Esta interfaz solo expone el mtodo Dispose.

328. Qu se programa en el mtodo Dispose?


Se programa el cierre de archivos o liberacin de recursos. EJ: Objetos.

329. Se pueden combinar el uso de Dispose y Finalize?


Si.

330. A qu se denomina Resurreccin de Objetos?


Se denomina a la cual un objeto que haya sido finalizado puede almacenar una referencia
de s mismo en una variable definida fuera de la clase para que esta nueva referencia
mantenga vivo el objeto.

331. A qu se denomina Generacin en el contexto de la recoleccin de elementos no


utilizados?
El recolector de elementos no utilizados cuenta con un mtodo sencillo para determinar la
<<EDAD>> de un objeto. Cada objeto mantiene un contador que dice el nmero de
recolecciones de elementos no utilizados a las que el objeto ha sobrevivido. El valor de
este contador es la generacin de objetos.

Pgina 36
Programacin Orientada a Objetos

332. Qu valores puede adoptar la Generacin de un objeto?


Valor 0: Si el objeto nunca ha sufrido una recoleccin de elementos no utilizados.
Valor 1: Si el objeto sobrevive a una recoleccin de elementos no utilizados.
Valor 2: Si el objeto sobrevive a una segunda recoleccin de elementos no utilizados.
Si el objeto pasa de la segunda recoleccin sigue valiendo 2 o se destruye.

333. Cmo se puede obtener el nmero de veces que se ha producido la recoleccin de


elementos no utilizados para la generacin de objetos especificada?
Se puede obtener por el mtodo GC.CollectionCount().

334. Cmo se obtiene el nmero de generacin actual de un objeto?


Se puede obtener por el mtodo GC.GetGeneration().

335. Cmo se puede recuperar el nmero de bytes que se considera que estn
asignados en la actualidad?
Se puede obtener por el mtodo GC.GetTotalMemory().

336. Qu utiliza para convertir un objeto en no vlido para la recoleccin de


elementos no utilizados desde el principio de la rutina actual hasta el momento en que
se llam a este mtodo?
Mediante el mtodo GC.KeepAlive().

337. Cmo se solicita que el sistema no llame al finalizador del objeto especificado?
Mediante el mtodo GC.SuppressFinalize().

338. Cmo se solicita que el sistema llame al finalizador del objeto especificado, para el
que previamente se ha llamado a SuppressFinalize?
Mediante el mtodo GC.ReRegisterForFinalize().

339. Cmo se obtiene el nmero mximo de generaciones que el sistema admite en la


actualidad?
Se puede consultar con el cdigo: GC.MaxGeneration y eso devuelve el mximo de
generaciones que admite.

340. Qu son los sucesos?


Los sucesos son llamadas al cdigo que se producen cuando el usuario realiza una accin
como, por ejemplo, pulsar un botn o seleccionar un elemento de una lista. Los eventos
responden a la accin del usuario sobre un control ejecutando una funcin situada en el
cdigo.

341. Qu se utiliza para declarar un suceso?

Pgina 37
Programacin Orientada a Objetos

Los sucesos se declaran en clases, estructuras, mdulos e interfaces mediante la palabra


clave Event.

342. Cmo se logra que ocurra un suceso?


Para provocar un suceso, se usa la palabra clave RaiseEvent.

343. Cmo se pueden atrapar los sucesos?


Como sucedia en VB6, podr atrapar sucesos utilizando una variable declarada con la
palabra clave WithEvents, con dos mejoras significativas. En primer lugar, la variable
puede aparecer dentro de las clases y, en segundo lugar, podr utilizar la palabra clave
New y la palabra clave WithEvents en la misma instruccin.

344. para qu se utiliza Addhandler en un suceso?


Permite definirle sucesos a una determina clase en tiempo de ejecucin.

345. Cmo y qu cosas se pueden compartir en una clase?


Los miembros compartidos son propiedades, procedimientos y campos que comparten
todas las instancias de una clase o estructura. En algunos lenguajes de programacin estos
elementos se denominan miembros estticos. Se comparten usando el mbito de la
palabra Shared.

346. Qu caractersticas poseen los campos compartidos?


Los campos compartidos son variables que pueden ser accedidos por todas las instancias
de una clase determinada. De esta manera, se podra, por ejemplo, declarar una variable
como ColorPorDefecto y todas las instancias de esa clase, podrn obtener de ese campo
compartido el color por defecto a utilizar.

347. Qu caractersticas poseen los mtodos compartidos?


Los mtodos compartidos son mtodos que pueden ejecutarse sin necesidad de una
instancia de la clase. La particularidad es que estos mtodos no pueden usar variables,
mtodos o dems objetos que requieran la instancia de la clase.

348. Qu caractersticas poseen los sucesos compartidos?


Los sucesos compartidos son sucesos que pueden ejecutarse sin necesidad de una
instancia de la clase. Estos sucesos pueden derivar de la clase instanciada o no.
Supongamos que necesitamos devolver un mensaje en un mtodo compartido podramos
usar un suceso compartido.

349. Para qu se utiliza AddHandler?


AddHandler adems de permitir referenciar un mtodo con un suceso en tiempo de
ejecucin. Permite enlazarse con sucesos declarados adentro de bloques mdulos.

Pgina 38
Programacin Orientada a Objetos

350. se pueden atrapar sucesos desde matrices? Cmo?


S. Recorriendo la lista o la matriz y capturando cada objeto y asignndole al mismo el
suceso correspondiente.

351. Qu son los miembros compartidos?


Los miembros compartidos son propiedades, procedimientos y campos que comparten
todas las instancias de una clase o estructura. En algunos lenguajes de programacin estos
elementos se denominan miembros estticos.

352. Qu caracterstica posee un campo compartido?


Los campos compartidos son variables que pueden ser accedidos por todas las instancias
de una clase determinada. De esta manera, se podra, por ejemplo, declarar una variable
como ColorPorDefecto y todas las instancias de esa clase, podrn obtener de ese campo
compartido el color por defecto a utilizar.

353. Qu caracterstica posee un mtodo compartido?


Los mtodos compartidos son mtodos que pueden ejecutarse sin necesidad de una
instancia de la clase. La particularidad es que estos mtodos no pueden usar variables,
mtodos o dems objetos que requieran la instancia de la clase.

354. Qu caracterstica posee un constructor compartido?


El constructor compartido se ejecuta en el momento que se va a tener acceso a miembros
compartidos (y solo esa vez). Se usa para inicializar los miembros compartidos de la clase y
no tener que andar validando en el New de una clase instanciada.

355. Qu caracterstica posee un suceso compartido?


Los sucesos compartidos son sucesos que pueden ejecutarse sin necesidad de una
instancia de la clase. Estos sucesos pueden derivar de la clase instanciada o no.
Supongamos que necesitamos devolver un mensaje en un mtodo compartido podramos
usar un suceso compartido.

356. Qu son y para que se pueden utilizar las clases anidadas?


Se denomina clases anidadas cuando en dentro de una clase se encuentra la definicin de
otra. Por ejemplo, dentro de una clase teclado puedo tener una clase Tecla. S la misma se
declara como Private solo va a poder ser instanciada dentro de la clase Teclado, sino, se
puede acceder a travs de Teclado.Tecla.

357. Qu mbitos existen?


Publico, Privado, Amigo, Protegido, Protegido Amigo

358. Qu caracterstica posee el mbito pblico?

Pgina 39
Programacin Orientada a Objetos

El mbito Public hace que una clase, o cualquiera de sus miembros, sea visible fuera del
mbito que puede utilizar en VB.NET.

359. Qu caracterstica posee el mbito privado?


El mbito Private convierte en privada a una clase y utilizable nicamente dentro de su
contenedor. Un miembro privado es utilizable nicamente dentro de la clase en la que se
ha definido y esto incluye cualquier clase anidad definida en el mismo contenedor.

360. Qu caracterstica posee el mbito friend?


El mbito Friend hace que una clase (o cualquiera de sus miembros) se visible en el
ensamblado actual. Podra utilizar la palabra clave Friend para hacer que una clase anidada
sea visible desde el exterior de su contenedor sin hacerla Public y visible tambin desde
fuera del proyecto.

361. Qu caracterstica posee el mbito protected?


Protected hace que un miembro o una clase anidada sea visible dentro de la clase actual
as como en todas las clases derivadas de la clase actual. Son miembros privados que
tambin son heredados por las clases derivadas.

362. Qu caracterstica posee el mbito protected friend?


Combina las caractersticas de las palabras claves Friend y Protected. Define un miembro o
clase anidada que es visible en todo el ensamblado y en todas las clases heredadas.

UNIDAD VI
363. Qu es la herencia?
La herencia es la capacidad de derivar una nueva clase de una clase ms sencilla.

364. Qu cosas se pueden heredar?


La clase derivada hereda todos los campos, propiedades y mtodos de la clase base.

365. Cmo y para qu se puede aprovechar en la prctica el polimorfismo?


Por ejemplo, s tengo un mtodo que recibe por argumento una clase base como es
Object, el mismo podr ejecutar solamente cosas objetivas de esa clase que tengan sus
derivadas. A medida que voy especializando puedo ir, especializando los argumentos y as
las clases.

366. Cmo y para qu se utiliza la clase derived?


La clase derived es cuando intentamos usar una clase derivada y en la misma
encontramos, sin saberlo, todo lo heredado desde el primer nivel. Esto se produce cuando
derivamos una, por ej:

Pgina 40
Programacin Orientada a Objetos

Dim Pers as Persona = New Empleado()

367. Qu representa la clase me?


Me representa a la instancia actual que se esta dando en la clase.

368. Qu clase representa a la clase base?


La clase base es representada por el objeto MyBase.

369. Para qu utilizara MyBase?


Para hacer referencia a un campo, propiedad o mtodo del objeto base.

370. Qu representa la clase MyClass?


El objeto MyClass me permite acceder a los campos y propiedades de la clase base. De
esta manera, s se crea un campo o propiedad que los pise, por medio de MyClass
podremos usar las declaradas en la clase base.

S yo tengo una clase base que va a heredar una propiedad pero quiero que en
determinado momento una clase que lo heredo no modifique el funcionamiento uso
MyClass.

371. Qu diferencia existe entre MyBase y MyClass?


MyBase hace referencia a la clase base, MyClass hace referencia a toda la clase actual,
ignorando lo que se halla heredado.

372. Para qu se usa una clase abstracta?


Se usa solamente para heredar, no puede ser instanciada.

373. Para qu se usa una clase sellada?


No puede ser instanciada.

374. Qu es la sobre escritura?


La sobre escritura es la posibilidad de cambiar un mtodo que se hereda por uno de la
nueva clase. (l mismo debe estar explcitamente indicando que debe ser cambiado en la
nueva clase).

375. Qu elementos se pueden sobrescribir?


Propiedades, mtodos y funciones.

376. A qu se denomina sombreado de mtodos?


Se denomina sombreado de mtodos a la posibilidad de crear mtodos que remplacen los
mtodos que se heredan. Se utiliza la palabra Shadows.

Pgina 41
Programacin Orientada a Objetos

377. Qu caracterstica peculiar posee el sombrado vs la sobreescritura?


La sobre escritura debe ser explcitamente declarada. El sombreado se puede llevar a cabo
sobre cualquier mtodo sin necesidad de que la clase base lo sepa.

UNIDAD VII
378. Para qu se utilizan las interfaces?
Las interfaces se utilizan para definir propiedades y mtodos que expone una clase.
Solamente define la firma de tales propiedades y mtodos (nombre del miembro, nmero
y tipo de cada parmetro y tipo del valor retornado), mientras que la clase es la que
proporciona el cdigo necesario para el funcionamiento de dichas clases.

379. Cmo se implementa una interfaz?


Para implementar una interfaz hay que utilizar la palabra clave Implements seguido el
nombre de la interfaz a implementar:

Class MiClase
Implements IPruebaDeInterfaz
'
'
'
End Class

380. Se pueden heredar las interfaces?


Si, de la misma forma que se heredan las clases mediante la instruccin inherits:

Public Interface InterfacePrueba


Inherits IComparable, IDisposable, IFormattable
'...

381. Se puede implementar un tipo de polimorfismo peculiar por medio de interfaces?


Las interfaces derivadas no permiten redefinir ningn miembro perteneciente a la interfaz
base. Si la interfaz derivada contiene un miembro con el mismo nombre existente en la
interfaz base, el miembro contenido en la interfaz derivada sombrear al miembro de la
clase; en este caso, obtendr una advertencia que se podr eliminar utilizando la palabra
clave Shadows dentro de la interfaz derivada. Sin embargo, en todos los casos, la clase que
implementa la interfaz debe implementar tanto el miembro contenido en la clase base
como el miembro de la clase derivada que tiene el mismo nombre.

382. Para qu se utiliza la interfaz IComparable?


La interfaz IComparable proporciona un mtodo para comparar dos objetos de un tipo
determinado. Utilice esta interfaz si desea ordenar el objeto.

Pgina 42
Programacin Orientada a Objetos

383. Para qu se utiliza la interfaz IComparer?


La interfaz IComparer proporciona mecanismos de comparacin adicional. Por ejemplo,
puede desear ordenar su clase en varios campos o propiedades, por ascendente y
descendente en el mismo campo, o ambos.

384. Para qu se utiliza la interfaz IClonable?


Cuando se asigna un objeto a otro objeto se obtienen dos objetos que apuntan al mismo
espacio de memoria, en lugar de dos copias distintas. La interfaz IClonable se utiliza para
obtener una copia de los datos de un objeto.

385. Para qu se utiliza la interfaz IEnumerable?


Expone el enumerador, que admite una iteracin simple en una coleccin no genrica.

386. Para qu se utiliza la interfaz IEnumerator?


Admite una iteracin simple a travs de una coleccin no genrica.

387. Qu es un delegado?
Un delegado es una estructura de programacin que nos permite invocar a uno o varios
mtodos a la vez. Estos mtodos pueden encontrarse en la misma clase desde la que se
invocan o en clases distintas asociadas a sta. Hablando "a bajo nivel", un delegado es un
puntero seguro a una funcin (pero sin la complejidad de la administracin propia de
dicho puntero).

388. A qu elementos se les puede delegar?

389. Qu se puede delegar?

390. Cmo construira un delegado?


Para declarar un delegado se utiliza la palabra clave Delegate, que lo que hace no es crear
un objeto sino que crea una nueva clase de delegados, que hereda de la clase
System.Delegate.

Delegate Sub Delegado(ByVal mensaje As String)

Una vez que se declara se puede instanciar dicha clase:

Dim deleg As Delegado = New Delegado(AddressOf MostrarMensaje)

Donde mostrar mensaje es un procedimiento que tiene la misma firma que la variable
deleg

Sub MostrarMensaje(ByVal msgtexto As String)

Pgina 43
Programacin Orientada a Objetos

Console.WriteLine(msgText)
End Sub

Finalmente, estar preparado para llamar al procedimiento MostrarMensaje mediante la


variable deleg utilizando su mtodo Invoke (La clase Delegado heredar este mtodo de la
clase System.Delegate).

391. Cmo implementara un procedimiento de devolucin de llamadas?

392. Para qu sirve la multidifusin de delegados?


Para enviar una llamada a ms de un procedimineto.

393. Qu es un atributo?
Los atributos son las caractersticas individuales que diferencian un objeto de otro y
determinan su apariencia, estado u otras cualidades. Los atributos se guardan en variables
denominadas de instancia, y cada objeto particular puede tener valores distintos para
estas variables.

394. Cmo es la sintaxis de un atributo?


'Declaration
<ComVisibleAttribute(True)> _
<AttributeUsageAttribute(AttributeTargets.Field, Inherited := False)> _
Public NotInheritable Class FieldOffsetAttribute _
Inherits Attribute

395. Para qu se utiliza el atributo StructLayout?


StructLayout: permite al usuario controlar la disposicin fsica de los campos de datos de
una clase o estructura.

396. Para qu se utiliza el atributo FieldOffset?


FieldOffSet: Indica la posicin fsica de los campos dentro de la representacin no
administrada de una clase o estructura.

397. Para qu se utiliza el atributo Conditional?


Conditional: Indica a los compiladores que una llamada al mtodo o atributo deben ser
ignorados a menos que un smbolo especificado compilacin condicional se define.

398. Para qu se utiliza el atributo Obsolete?


Obsolete: Marca los elementos del programa que ya no estn en uso. Esta clase no puede
heredarse.

Pgina 44
Programacin Orientada a Objetos

399. Para qu se utiliza el atributo DebuggerStepThrough?


DebuggerStepThrough: Indica al depurador para recorrer el cdigo en lugar de entrar en el
cdigo. Esta clase no puede heredarse.

UNIDAD VIII
1. Qu caractersticas posee un esquema cliente servidor?

2. Qu significa pasar informacin batch?


Un archivo batch es un archivo de procesamiento por lotes. Se trata de archivos de texto
sin formato, guardados con la extensin BAT que contienen un conjunto de comandos
MS-DOS. Cuando se ejecuta este archivo, mediante CMD los comandos contenidos
son ejecutados en grupo, de forma secuencial, permitiendo automatizar diversas tareas.

3. Qu significa pasar informacin on line?

4. Qu es un protocolo?
Protocolo: serie de normas establecidas.

5. Qu protocolo usa una red de rea local?


TCP/IP

6. Qu protocolo usa internet?


El Protocolo de control de transmisin/Protocolo Internet (TCP/IP) es un conjunto de
Protocolos aceptados por la industria que permiten la comunicacin en un entorno
heterogneo (formado por elementos diferentes). Adems, TCP/IP proporciona un
protocolo de red encaminable y permite acceder a Internet y a sus recursos.

7. Qu hace el protocolo IP?


Protocolo IP: El protocolo IP sirve para el encaminamiento de paquetes.

8. Qu ventajas tiene distribuir procesos?

9. Qu ventajas tiene distribuir almacenamientos?

10. Qu es un socket?
Un socket (enchufe), es un mtodo para la comunicacin entre un programa del cliente y
un programa del servidor en una red. Un socket se define como el punto final en una
conexin. Los sockets se crean y se utilizan con un sistema de peticiones o de llamadas de

Pgina 45
Programacin Orientada a Objetos

funcin a veces llamados interfaz de programacin de aplicacin de sockets (API,


application programming interface).

11. Qu caracterstica posee un socket sincrnico?


Socket sncrono: sockets que se bloquean hasta que han recibido toda la informacin. En
este tipo de socket, cuando haces una llamada para recibir, por ejemplo, la llamada a la
funcin no termina hasta que recibe los datos, esto puede congelar tu aplicacin.

12. Qu caracterstica posee un socket asincrnico?


Socket asncrono: sockets que no se bloquean y tenemos q ver si nuestro buffer se ha
llenado.

13. Qu objeto se puede utilizar para construir un navegador?

14. Para qu se utilizan los puertos de la pc?


Un puerto es una forma genrica de denominar una interfaz a travs de la cual los
diferentes tipos de datos se pueden enviar y recibir.

15. Qu puertos posee una PC?


Puertos: Paralelo, Serie, USB, DIN, RJ-45, VGA.

16. Cmo funciona el puerto paralelo?


Una seal al PC en la lnea 13 llamada lnea de seleccin del perifrico, generalmente una
impresora, le indica al computador que la impresora est online y lista para recibir datos.
Los datos se cargan en las lneas 2 y 9 en forma de un alto voltaje realmente cinco (5)
voltios para expresar un uno(1), indicado aqu mediante un cubo azul, y un cero(0), a un
voltaje bajo casi de cero, para expresar un 0, que se presenta aqu con una esfera roja.
Una vez establecidos, los voltajes en todas las lneas de datos, la lnea 1 enva una seal
estroboscpica a la impresora durante un microsegundo para hacer saber a la impresora
que debe leer los voltajes en las lneas de datos. Una seal desde la impresora en la lnea
11 indica al PC en qu momento la impresora est demasiado ocupada manipulante el
byte que se acaba de enviar y que el PC debe abstenerse de enviar el siguiente byte hasta
que la seal se despeje. Puede generarse una seal de ocupado, porque la impresora esta
realizando el ltimo carcter o introduciendo el byte de un buffer, o el buffer est lleno, o
hay un atasco de papel u otra condicin que impida que la impresora utilice cualquier dato
adicional. Una seal desde la impresora en la lnea 10 confirma la recepcin de los datos
enviados en las lneas 2 y9 e indica al PC que la impresora est lista para recibir otro

Pgina 46
Programacin Orientada a Objetos

carcter. La lnea 12 enva una seal desde la impresora al PC si la impresora se queda sin
papel.

La impresora utiliza la lnea 15 para indicar la PC que existe alguna condicin de error,
como el atasco de una cabeza de impresin o un panel abierto, pero no especifica cul es
el error. Una seal desde el PC en la lnea 16 hace que la impresora se restaure a un
estado original: lo mismo que si se apagara y encendiera la impresora. Una seal de bajo
voltaje o de voltaje cero desde el PC en la lnea 14 indica a la impresora que haga avanzar
el papel una lnea cuando recibe un cdigo de retorno de carro. Una seal de alto voltaje
indica la impresora que haga avanzar el papel una lnea solo cuando recibe un cdigo de
avance de lnea desde la impresora. Una seal desde el PC en la lnea 17 indica a la
impresora que no acepte datos. Esta lnea se utiliza slo con algunas impresoras, que
estn que estn diseadas para ser conectadas y desconectadas por el PC.

17. Cmo funciona el puerto serie?


La conexin externa de un puerto serie puede ser de nueve pines o de 25 pines.
Originalmente, el uso principal de un puerto serie era conectar un modem a un
ordenador. Un aspecto importante de las comunicaciones serie es el concepto del control
de flujo. Esto es la habilidad de un dispositivo de decirle a otro dispositivo que pare de
enviar datos por un rato. Los comandos RTS (Request to Send), CTS (Clear To Send), DTR
(Data Terminal Ready) y DSR (Data Set Ready) son utilizados para habilitar el control de
flujo.

Con un ejemplo podemos ver mejor como funciona el control de flujo. Tienes un modem
que se comunica a 56 Kbps. La conexin serie entre tu ordenador y tu modem transmite a
115 Kbps, lo cual es el ms de la mitad. Esto significa que tu modem est recibiendo ms
datos viniendo de tu ordenador, que lo que puede transmitir por la lnea de telfono.
Incluso, aunque el modem tuviera un buffer de 128 K para almacenar datos, se quedara
sin espacio en el buffer rpidamente y no sera capaz de funcionar adecuadamente con
todo ese flujo de datos.

Con control de flujo, el modem puede parar el flujo de datos de tu ordenador antes de
que desborde el buffer del modem. El ordenador est constantemente enviando una seal
en el pin RTS, y comprobando si hay seal en el pin CTS. Si no hay una respuesta del CTS,
el ordenador para de enviar datos, esperando al CTS para reanudar los datos. Esto permite
al modem mantener el flujo de datos de manera fluida.

18. Cmo funciona el puerto USB?

Pgina 47
Programacin Orientada a Objetos

Cada cable USB contiene, a su vez, 4 cables en su interior. Dos de ellos estn dedicados a
la alimentacin (5 voltios) y la referencia de tensin (masa). La corriente mxima que el
bus puede proporcionar es de 500 mA a 5 voltios de tensin. Los dos cables restantes
forman un par trenzado, que transporta la informacin intercambiada entre dispositivos,
en formato serie. Tras su encendido, el dispositivo anfitrin -el PC- se comunica con todos
los dispositivos conectados al bus USB, asignando una direccin nica a cada uno de ellos
(este proceso recibe el nombre de enumeracin). Adems, el PC consulta qu modo de
transferencia desea emplear cada dispositivo: por interrupciones, por bloques o en modo
iscrono. Los cables de datos son un par trenzado para reducir el ruido y las
interferencias. La transferencia por interrupciones la emplean los dispositivos ms lentos,
que envan informacin con poca frecuencia (por ejemplo teclados, ratones, etc.). La
transferencia por bloques se utiliza con dispositivos que mueven grandes paquetes de
informacin en cada transferencia. Finalmente, la transferencia iscrona se emplea
cuando se requiere un flujo de datos constante y en tiempo real, sin aplicar deteccin ni
correccin de errores. Un ejemplo es el envo de sonido a altavoces USB. Como se puede
intuir, el modo iscrono consume un ancho de banda significativo. Por ello el PC impide
este tipo de transferencia cuando el ancho de banda consumido supera el 90% del ancho
de banda disponible. Para la temporizacin, el bus USB divide el ancho de banda en
porciones, controladas por el PC. Cada porcin mueve 1.500 bytes, y se inicia cada
milisegundo. Ante todo, el PC asigna ancho de banda a los dispositivos que emplean
transferencias iscronas y por interrupciones, garantizando el ancho de banda necesario.
Las transferencias por bloques emplean el espacio restante, quedando en ltima
prioridad.

19. Qu es la domtica?
El trmino domtica viene de la unin de las palabras domus (que significa casa en latn) y
tica (de automtica, palabra en griego, 'que funciona por s sola').

Se entiende por domtica el conjunto de sistemas capaces de automatizar una vivienda,


aportando servicios de gestin energtica, seguridad, bienestar y comunicacin, y que
pueden estar integrados por medio de redes interiores y exteriores de comunicacin,
cableadas o inalmbricas, y cuyo control goza de cierta ubicuidad, desde dentro y fuera
del hogar. Se podra definir como la integracin de la tecnologa en el diseo inteligente
de un recinto cerrado.

Pgina 48

Você também pode gostar