Notas
Desarrollo de Software
Conteúdo das notas (1)
Página 1
Recolector de
basura: proceso para la recuperación automática de un heap de memoria. El recolector de basura es un
proceso automático para la recuperación de la memoria heap.
Los bloques de memoria que hayan sido asignados pero que ya no se utilizan se
liberan, y los bloques de memoria que aun estén en uso se pueden mover para
consolidar la memoria libre en bloques más grandes
Heap: Sección de memoria reservada para que el programa almacene de
forma temporal las estructuras de datos, cuya existencia o tamaño no se puedan
determinar hasta que se ejecute el programa
–Un heap se utiliza para la asignación dinámica de memoria.
Pila: Región de
memoria reservada en la cual los programas almacenan el estado de datos, como
por ejemplo la dirección en memoria de llamadas a procedimientos y funciones, paso de parámetros
–Los valores en la pila se manejan
sin la intervención del recolector de basura puesto que los elementos se
agregan y eliminan de la pila siguiendo el orden de que el último que entra es
el primero que sale (LIFO-last in
first out)
cada vez que se introduce un método o una sentencia.
–Ocurre una StackOverFlowException
cuando
ha utilizado todo el espacio disponible en la pila.
•Las variables se almacenan en pilas o heaps dependiendo de su tipo: –Tipos con valores (ej.: int, double, float) van en la pila. –Tipos con referencia (String, Object) van en el heap.
•La computadora almacena los datos y los programas de la siguiente
manera:
Almacenamiento primario: también
conocido como memoria de acceso aleatorio (RAM), esta conformada por chips de
memoria
Almacenamiento secundario:
también conocido como disco duro
se usa un bloque try para dividir el código que puede verse afectado por una excepción
Se usa un bloque catch para el manejo de cualquier excepción resultante
Se puede usar un
bloque finally para ejecutar un
código sin importar si ocurre una excepción
•Los bloques catch y finally se utilizan generalmente juntos para obtener y usar recursos en un bloque try, manejar circunstancias excepcionales en un bloque catch y liberar los recursos en el bloque finally.
•Se ejecuta un código en un bloque finally incluso si la excepción ya se llevó a cabo por lo que le permite a un programa liberar recursos.
•En caso de que ninguna excepción ocurra dentro del bloque try, entonces el control se transfiere directamente al bloque finally.
•Los objetos de excepción que describen un error se crean y después se lanzan con la palabra clave throw.
throw new ArgumentException (“El parámetro no puede ser null", "original");
Excepciones comunes:
•DivideByZeroException •IndexOutOfRangeException •NullReferenceException •StackOverflowException
static void Main()
{
try
{
//sentencia que puede ocasionar la excepción
}
catch (Exception e)
{
//sentencia para el manejo
de la excepción
}
finally
{
//código de limpieza
}
}
double num = 2; Correcto
2. string ohSnap = “%$^&$ “; Correcto
3. int num2 = 10.9; Incorrecto: No se permiten números decimales con tipos int
4. byte smallNum = -42; Incorrecto: No se permiten números negativos con tipos byte
5. char word = ‘word’; Incorrecto: Solo se permite un solo carácter
6. long bigNum = 12345678.9; Incorrecto: no se permiten decimales con tipos long
7. float x = 3.5F; Correcto: De manera predeterminada, una literal numérica a la derecha del operador se considera un double. Por lo tanto, para inicializar una variable flotante, utilice el sufijo f o F. Si no se utilizara el sufijo en la declaración anterior se originaría un error, puesto que estaría intentando almacenar un valor double en una variable float.
8. decimal deciNum = 4.2m; Correcto: No hay una conversión implícita entre los tipos de datos de punto flotante y los de tipo decimal, por lo tanto, se debe hacer una conversión entre estos dos tipos.
Una Clase en la programación orientada a objetos, es una categoría
generalizada que describe un grupo de artículos más específicos llamados objetos, los cuales pueden existir dentro de la misma.
Un Constructor es un método que le permite al programador
establecer valores predeterminados, limitar la instanciación y escribir
programas que sean flexibles y fáciles de leer.
Un Evento es una acción o suceso generalmente producido por el
usuario y para el cual puede responder un programa (por ejemplo: presionar
teclas, hacer clic o mover el mouse).
Un Método en la
programación orientada a objetos, es un proceso ejecutado por un objeto cuando
este recibe un mensaje.
Propiedad- miembros
de una clase que proporcionan un mecanismo flexible para leer, escribir o
calcular los valores de campos privados. Las propiedades se ven o se pueden
accesar a través de métodos “accessor” dentro de la clase
y se pueden cambiar o modificar a través de métodos “modifier” dentro de la clase.
Objeto es una variable que contiene rutinas y datos que se procesan como una
entidad discreta
Programación orientada a objetos: Es un paradigma de programación, en la cual un programa se ve como una colección de objetos discretos que son colecciones de estructuras de datos y rutinas que interactúan con otros objetos
•Clase abstracta: Es una clase a partir de la cual no se puede crear
ningún objeto.
–Se usa para definir subclases.
–Los objetos se crean a partir de
las subclases.
•Clase base: Es una clase a partir de la cual otras clases han sido
o pueden derivarse por herencia.
•Clase derivada: es una clase creada a partir de otra clase a la
cual se le conoce como clase base.
–Una clase derivada hereda todas
las características de su clase base.
–Puede incluir elementos de
información y rutinas adicionales, puede redefinir rutinas a partir de la clase
base y restringir el acceso a las características de la clase base.
�Herencia: Es la
transferencia de características de una clase a otras clases que se derivan de ella.
�Interfaz: Únicamente
contiene las firmas de los métodos, delegados o eventos.
La sintaxis requiere
de dos puntos después del nombre de la clase en la declaración e identificar la
clase a heredar
Clase Base
public class A
{
public A() { }
public void doA(){ }
}
Clase Heredada
public class B : A
{
public B() { }
public void doB(){ }
}
public class Tester
{
A a = new A();
B b = new B();
b.doB(); // legal
b.doA(); // legal
a.doA(); // legal
a.doB(); // ilegal
}
B se deriva de A y por lo tanto puede crear doA () pero A no se deriva de B por lo cual no puede crear doB (). La relación de herencia no es recíproca
•Un interfaz es similar a una clase base abstracta.
–Cualquier tipo que no sea
abstracto y que herede la interfaz, debe implementar todos sus miembros.
•Una interfaz no se puede instanciar de manera directa.
•Las interfaces pueden contener eventos, indexadores, métodos y
propiedades.
•Las interfaces no pueden contener la implementación de métodos.
•Las clases pueden heredar más de un interfaz.
•Un interfaz puede por sí misma heredar múltiples interfaces.
DIAPOSITIVAS 2.3
Polimorfismo: Es la
habilidad para redefinir un método en una clase derivada
•Sealed (Sellado): No se puede heredar.
Un método de sellado anula un método en
una clase base, pero no se puede anular a sí mismo más adelante en cualquier
clase derivada.
•Virtual: Es una palabra
clave que se usa para modificar un método o una declaración de propiedad, en
cuyo caso, al método o la propiedad se le conoce como miembro virtual.
•El miembro virtual permite que su
implementación se reemplace dentro de las clases derivadas.
•Base (Base): Es una palabra clave que se usa para tener acceso a los miembros
de la clase base a partir de una clase derivada.
•New (Nuevo): Cuando se usa como modificador, esta palabra clave esconde de
manera explícita un miembro heredado de una clase base. Cuando se esconde un
miembro heredado, la versión derivada del miembro reemplaza la versión de la
clase base.
•Cuando se usa la
palabra clave new, se llaman a los
nuevos miembros de clase y no a los miembros de la clase base que se
reemplazaron.
•Override (Anular): Es un modificador necesario para prolongar o modificar la
implementación abstracta o virtual de un método, propiedad, indexador o evento
heredado.
DIAPOSITIVA 2.4
•Encapsulamiento: En la programación orientada a objetos, el
encapsulamiento empaca los atributos (propiedades) y la funcionalidad (métodos
o comportamientos), para crear un objeto que es básicamente una “caja negra”
cuya estructura interna sigue siendo privada y cuyos objetos pueden ser accesados a través de
mensajes transmitidos mediante una interfaz claramente definida.
El encapsulamiento
le permite al programador ocultar (encapsular) cierta información y
funcionalidad de la clase, mientras que da a conocer otra
•Internal (Interno): Es un modificador de acceso para las clases y para los miembros
de las clases. Se puede tener acceso a los miembros internos solamente dentro
de los archivos del mismo conjunto.
•Private (Privado): Es un miembro modificador de acceso. El acceso privado es el último
nivel de acceso permisivo. Se puede tener acceso a los miembros privados a
través del cuerpo de la clase en la cual se declararon.
•Protected (Protegido): Es un miembro modificador de acceso. Un miembro protegido es
accesible a través de la clase en la cual se declaró y cualquier otra clase
derivada de la clase que declaró dicho miembro.
•Public (Público): Es un modificador de acceso para las clases y miembros de las
clases. El acceso público es el nivel de acceso más permisivo. No tiene
restricciones para el acceso a los miembros públicos.
DIAPOSITIVAS 3.1
•Las fases de la ALM son: Visión, Diseño, Desarrollo, Prueba y
Mantenimiento.
Visión: Se evalúan las
necesidades del cliente y se establecen los criterios para dar seguimiento al
progreso del proyecto.
Diseño: Se crean modelos para asegurar que el sistema de software cumpla
con las necesidades del usuario.
Desarrollo: Escribe y documenta el
código.
•Prueba: Sirve para verificar la exactitud de un programa usando
varias secuencias y valores de entrada.Las fases de la ALM
son: Visión, Diseño, Desarrollo, Prueba y Mantenimiento:
•Prueba unitaria.
•La prueba de clases se realizan
de manera separada a la prueba del programa ya completo.
•Prueba de integración.
•Se combinan las unidades del
software y se prueban como grupo.
•Prueba de regresión.
•Se aplican las
pruebas anteriores a las nuevas versiones del programa.
Mantenimiento: •Se monitorea y gestiona la aplicación implementada.
DIAPOSITIVAS 3.2
•Servicio de Windows:
no requiere la participación del usuario, inicia junto con el sistema operativo y se ejecuta en segundo plano
•Aplicación Web:
•Por lo general se componen de tres niveles:
•El explorador Web (ejemplo: el
Explorador de Internet de Windows).
•El motor de contenido Web
(ejemplo: ASP.NET)
•La base de datos (ejemplo:
Servidor Microsoft SQL)
•¿Por qué usar una aplicación Web en vez de una aplicación
tradicional?
•Fácil de actualizar y mantener.
•Compatibilidad multi-plataforma.
•Servicio Web
El servicio Web
permite el intercambio de información y la invocación remota de la lógica de la
aplicación al usar los mensajes XML y HTTP
•Aplicación de Windows Form
•Un aplicación de Windows Form, es una aplicación
gráfica en la cual se muestra la información y se utilizan controles para
interactuar con los datos.
•¿Por qué usar Windows Form?
•La interfaz corresponde al
sistema operativo y por lo tanto la aplicación se integra con el escritorio
•Interfaz de usuario consistente
•La seguridad y la confianza es
importante
•No requiere de una conexión a
internet
•Aplicación de consola
•Una aplicación de consola es un programa de computadora diseñado
para usarse a través de una interfaz de computadora de texto.
•¿Por qué usar una aplicación de consola?
•Cuando no es necesario usar un
mouse o un dispositivo señalador.
•Velocidad de implementación.
•Fácil de usar.
•Aplicación de Base de datos
Una aplicación de
base de datos obtiene y manipula la información de una base de datos gestionada
por un sistema de administración de base de datos
DIAPOSITIVAS 3,3
ESTRUCTURA DE DATOS:
•Clases que se usan para organizar datos y facilitar diversas
operaciones sobre esos datos.
•Matriz: Es una lista de valores de datos, todos del mismo tipo, a
cualquier elemento de la lista se puede hacer referencia por medio de una
expresión que consiste en el nombre de la matriz seguido de una expresión de
índice.
•Estructura de datos: Es un esquema organizacional, tal como un
registro o arreglo, que se puede aplicar a los datos para facilitar la
interpretación de datos o las operaciones realizadas en el.
Lista ligada: Es una lista
de nodos o elementos de una estructura de datos conectada por apuntadores
•Cola: Es una estructura de datos de múltiples elementos, de la cual
(por estricta definición) los elementos se eliminan únicamente en el mismo
orden en el cual se insertaron, es decir, sigue la restricción Primero en
entrar-Primero en salir (FIFO).
•Algoritmo de ordenamiento: Es un algoritmo que coloca una colección
de elementos de datos en alguna secuencia y algunas veces se basan en uno o más
valores clave en cada elemento.
•Pila: Representa una colección de instancias del mismo tipo, en la
cual el Último elemento en entrar es el Primero en salir (LIFO)..
Nueva Página
tipos de dato
POO
Ciclo de vida
Informações
- Descrição
- Material de estudio de certiport
- Criado por
- Usuário eliminado · fev 2017
- Atualizado
- 6 fev 2017
- Visualizações
- 16
- Tags
- Histórico
-
- Criado por Maye Tapia · 17 dez 2013
- Copiado por Sylver Rivero Navarro · 6 fev 2017
- Avaliação