Sunteți pe pagina 1din 13

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA

ACTIVIDAD INICIAL FASE 1

ESTUDIANTES:

WIRIS RAFAEL CONTRERAS


CODIGO:

GRUPO: 301403_9

TUTOR:
FRANKLIN LIZCANO CELIS

Asignatura:
PROGRAMACION ORIENTADA OBJETIVOS

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD

febrero de 2019
DESARROLLO DE LA ACTIVIDAD

Preguntas planteadas

1.¿Cuál es la diferencia entre programación estructurada y programación orientada a


objetos?

La Programación orientada a objetos POO es un estilo que trata los datos como objetos
con atributos y métodos que pueden aplicarse a estos objetos y también pueden ser
heredados por otros objetos.

Por otra parte, la programación estructurada o procedimental, es un tipo de


programación imperativa, donde las declaraciones se ponen en procedimientos, que se
pueden volver a llamar cuando sean necesarios.

2. Ventajas y desventajas de la programación orientada a objetos:

VENTAJAS Y DESVENTAJAS DE LA PROGRAMACION ORIENTADA A OBJETOS


VENTAJAS DESVENTAJAS
 Reusabilidad: cuando hemos  Cambio en la forma de pensar de la
diseñado adecuadamente las clases, se programación tradicional a la orientada a
pueden usar en distintas partes del objetos.
programa y en numerosos proyectos.  La ejecución de la POO es más
 Mantenibilidad: debido a la lenta.
sencillez para extraer el problema, los  La necesidad de utilizar bibliotecas
programas orientados a objetos son más de clases obliga a su aprendizaje y
sencillos de leer y comprender, pues nos entrenamiento.
permiten ocultar detalles de
implementación dejando visibles solo
aquellos detalles relevantes.
 Modificabilidad: la facilidad de
añadir, suprimir o modificar nuevos objetos
nos permite hacer modificaciones de forma
sencilla.
 Fiabilidad: al dividir el problema
en partes más pequeñas podemos probarlas
de manera independiente y aislar mucho
más fácil los errores que puedan surgir.

3. Sintaxis para definir variables Java:

Para declarar variables en Java, estas se


hacen antes de ser utilizadas y su sintaxis
se establece declarando inicialmente el
tipo de dato (int, bool, string, char,
double, float, etc), luego el nombre de la
variable y finalmente un valor si esta lo
tiene.

4. Sintaxis para imprimir en consola en Java:

para imprimir en consola se hace uso del objeto System.out, el cual es del tipo
Java.io.PrintStream y representa la salida estándar.

Su sintaxis es la siguiente:

5. Sintaxis para realizar comentarios en Java:

En Java la existen dos maneras s de realizar comentarios así:

- Comentario multilinea: se abre con el símbolo /* y se cierra con el símbolo/*


- Comentario en una línea o al final de una línea: se introduce con el símbolo //
6. Sintaxis de los operadores lógicos y relacionales en Java:

7. Defina clase, instancia de clase, atributo, comportamiento, identidad, constructor e


identificadores:
- Clase: una clase es una plantilla que define la forma de un objeto; en ella
se agrupan datos y, métodos que se operaran sobre esos datos. En Java, una clase
se define con la palabra reservada clases.
- Atributo: estos son las características individuales que diferencian un
objeto de otro y determinan su apariencia, está u otras cualidades. Los atributos se
guardan en variables denominadas de instancia, y cada objeto partículas puede
tener valores distintos para estas variables.
- Comportamiento: el comportamiento de los objetos de una clase se
implementa mediante funciones miembro o métodos. Un método es un conjunto
de instrucciones que realizan una determinada tarea son similares a las funciones
de los lenguajes estructurados.
- Identidad: dato que hace diferente al objeto en cuestión de otros objetos.
- Constructor: en la POO un constructor es una subrutina cuya misión es
inicializar un objeto de una clase, en donde se asignan los valores iniciales de un
objeto.
- Identificadores: un identificador es un nombre que identifica a una
variable, a un método o función miembro, a una clase. Todos los lenguajes tienen
diferentes reglas para componer los identificadores:
 Todos los identificadores han de comenzar con una letra, el
carácter subrayado (_) o el carácter dollar ( $ ).
 Puede incluir, pero no comenzar por un número
 No puede incluir el carácter espacio en blanco
 Distingue entre letras mayúsculas y minúsculas
 No se pueden utilizar las palabras reservadas como
identificadores.
8. Identifiquen los tipos de clase.

Los tipos de clases son:

 Class. Public: Son muy comunes, accesibles desde cualquier otra clase en
la misma librería (de otro modo hay que importarlas).
 Class. Abstract: Aquellas que tienen por lo menos un método abstracto.
No implementan sus métodos, sino que dan las bases para que sean
implementados en la herencia.
 Class. Final: Son las que terminan la cadena de herencia. Útiles por
motivos de seguridad y eficiencia de un programa, ya que no permiten
crear más sub-divisiones por debajo de esta clase.
 Class. Synchronizable: Especifica que sus métodos son sincronizados,
evitando problemas con los thread (hilo de ejecución), de forma que estos
no pueden empezar a correr un método si no ha acabado el otro.
9. Describa el concepto de Modularizacion, Herencia, Polimorfismo y Encapsulamiento.
 Modularizacion: Significa dividir un problema en partes funcionalmente
independientes, que encapsulen operaciones y datos. (Gp:) No se trata simplemente de
subdividir el código de un sistema de software en bloques con un número de
instrucciones dado. Separar en funciones lógicas con datos propios y datos de
comunicación perfectamente especificados.
 Herencia: Es una propiedad que permite que los objetos sean creados a partir de otros ya
existentes, obteniendo características (métodos y atributos) similares a los ya existentes.
Es la relación entre una clase general y otra clase más específica. Es un mecanismo que
nos permite crear clases derivadas a partir de clase base, nos permite compartir
automáticamente métodos y datos entre clases, subclases y objetos, por ejemplo: si
declaramos una clase párrafo derivada de una clase texto, todos los métodos y variables
asociadas con la clase texto, son automáticamente heredados por la subclase párrafo.
 Polimorfismo: Un polimorfismo consiste en conseguir que un objeto de una clase se
comporte como un objeto de cualquiera de sus subclases, dependiendo de la forma de
llamar a los métodos de dicha clase o subclase. Una forma de conseguir objetos
polimorfismo es mediante el uso de punteros a la superclase.
 Encapsulamiento: se denomina encapsulamientos al ocultamiento del estado, es decir,
de los datos miembro, de un objeto de manera que sola se puede cambiar mediante las
operaciones definidas para es objeto. Cada objeto está aislado del exterior, es un módulo
natural y la aplicación entera se reduce a un agregado o rompecabezas de objetos. El
aislamiento protege a los datos asociados a un objeto contra su modificación por quien no
tenga derecho a acceder a ellos, eliminado efectos secundarios e interacciones.

10. Determine cómo convertir un String a entero en Java y viceversa.

Para convertir un string en número entero, primero quitamos los espacios en blanco al principio
y al final y luego, llamamos a la función miembro estática parseInt de la clase Integer (clase
envolvente que describe los números enteros)

String str=" 12 ";


int numero=Integer.parseInt(str.trim());

Para convertir int(entero) a String sólo debemos hacer una llamada al método estático de la clase
Integer, toString

int entero = 1;
String enteroString = Integer.toString(entero);

11. Defina el concepto de método y constructor.

Para dar una defición clara del concepto de un método es necesario traer a colación el
significado de un objeto: Componente de código el cual contiene instrucciones; Por lo cual un
método será, la implementación de un algoritmo el cual representará las operaciones o acciones
que el objeto realice.
Ejemplo método Constructor:

12. Describa las caracteristucas y las funciones que tiene el paquete Swing en java.

El paquete swing de Java constituye un paquete de la plataforma, provee al desarrollador un


completo pack de elementos GUIs, es decir, facilita la construcción de botones, marcos, tablas y
variados elementos gráficos. Sus principales usos se dan en los contenedores, el cual se comporta
como el papel tapiz o la caja donde se ubicarán los demás componentes, componentes de texto,
menús y complejos como tablas arboles de jerarquías listas entre otros.

13. Consultar la estructura y sintaxis de cómo funcionan las excepciones en Java.

Excepciones, o sencillamente problemas. En la programación siempre se producen errores, más o


menos graves, pero que hay que gestionar y tratar correctamente. Por ello en java disponemos de
un mecanismo consistente en el uso de bloques try/catch/finally. La técnica básica consiste en
colocar las instrucciones que podrían provocar problemas dentro de un bloque try, y colocar a
continuación uno o más bloques catch, de tal forma que si se provoca un error de un determinado
tipo, lo que haremos será saltar al bloque catch capaz de gestionar ese tipo de error específico. El
bloque catch contendrá el codigo necesario para gestionar ese tipo específico de error.
Suponiendo que no se hubiesen provocado errores en el bloque try, nunca se ejecutarían los
bloques catch.
Propuesta elegida

PROYECTO A

La Empresa de Transporte “Transportes de Colombia S.A.” hace presencia en los departamentos


de Cundinamarca, Boyacá y Tolima, donde provee el servicio de Mensajería Puerta a Puerta. La
empresa cuenta con 3 sedes, una por cada departamento y un administrador en cada una. En la
actualidad la empresa tiene 8 usuarios (Véase figura 1) y 6 empleados que tienen funciones
específicas (Véase figura 2), sin embargo, pensando en el crecimiento de la empresa, se requiere
una aplicación que permita realizar de forma automatizada los procesos que se detallan a
continuación
• Registro de usuarios: Inscribir a un usuario registrando sus datos personales.
• Consulta de usuarios: Consulta mediante identificación o ciudad al cual pertenece.
• Eliminar un usuario: Eliminar un usuario de la base de datos.
• Consulta de Ciudad: Consulta de número de usuarios en una determinada ciudad.
• Ingreso de envíos a despachar por parte de los usuarios: ingresar los envíos de los
usuarios en las ciudades de origen a otros destinos.
• Reportes: La aplicación debe permitir realizar reportes sobre los envíos despachados a
otras ciudades desde cada ciudad.

• Finalmente, al ejecutar la aplicación, esta debe solicitar Login y Password para garantizar
la seguridad de la aplicación y el acceso solo a personal autorizado. Los empleados deben tener en
cuenta que no se permite en el password los siguientes caracteres: $,%,&,/,*,/,-,ñ por lo que es
obligatorio hacer uso de los bloques de excepciones en Java para evitar estos caracteres.

Para el desarrollo de este proyecto se debe utilizar el paradigma orientado a objetos (clases,
herencia, polimorfismo, encapsulamiento, etc), así mismo se debe utilizar la base de datos MYSQL
como base de datos predeterminada. El código de la aplicación debe ser comentado en su totalidad
y todos los estudiantes deben registrar las tareas que cada uno de ellos realiza en el foro
correspondiente a cada fase, con el fin de evidenciar su participación.

Definición del problema

La Empresa de Transporte “Transportes de Colombia S.A.”. requiere una aplicación que


permita realizar de forma automatizada procesos de registro, consulta y eliminación de usuarios,
consulta de ciudad, ingresar envíos a despachar y realizar reportes sobre los envíos despachados.

Objetivo General

Realizar una aplicación para el control de usuarios y de envíos.

Objetivos Específicos

➢ Acceder a la aplicación de forma segura pidiendo un usuario y contraseña.


➢ Realizar procesos de registro, consulta y eliminación de usuarios.
➢ Consulta de envíos.
Requisitos Funcionales

Nombre: REGISTRO DE USUARIOS

Autor: Por establecer

Fecha: a convenir

Descripción:
inscribir a un usuario registrando sus datos personales
Actores:
Por establecer
Precondiciones:
Haber iniciado sesión en el sistema por medio de login y password.
Flujo Normal:
Haber iniciado sesión en el sistema por medio de login y password, registrar usuario y
almacenar en la base de datos.
Flujo Alternativo:
<flujos alternativos de ejecución del caso de uso>
Post-condiciones:
envió de datos para su almacenamiento en base de datos.

Nombre: CONSULTA DE USUARIOS

Autor: Por establecer

Fecha: a convenir

Descripción:
Consulta mediante identificación o ciudad a la cual pertenece.
Actores:
Por establecer
Precondiciones:
Haber iniciado sesión en el sistema por medio de login y password.
Flujo Normal:
Solicitar login y password para garantizar la seguridad de la aplicación y el acceso al
personal autorizado
Flujo Alternativo:
<flujos alternativos de ejecución del caso de uso>
Post-condiciones:
Búsqueda del usuario en el sistema.

Nombre: ELIMINAR USUARIOS

Autor: Por establecer

Fecha: a convenir

Descripción:
Eliminar un usario de la base de datos
Actores:
Por establecer
Precondiciones: acceder al sistema por medio de login y password, consultar el
usuario por medio de su número de identificación y verificar si existe en la base de
datos.

Flujo Normal: verificar y consultar el usuario, y finalmente eliminarlo de la base de


datos

Flujo Alternativo:
<flujos alternativos de ejecución del caso de uso>
Post-condiciones:
Eliminar usuario de la base de datos

Nombre: CONSULTA USUARIOS


Autor: Por establecer

Fecha: a convenir

Descripción:
Consultar cantidad de usuarios por determinada ciudad
Actores:
Por establecer
Precondiciones: acceder al sistema por medio de login y password.

Flujo Normal: verificar y consultar con el nombre de la ciudad la cantidad de


usuarios que posee la misma.

Flujo Alternativo:
<flujos alternativos de ejecución del caso de uso>
Post-condiciones:
Verificar la cantidad de usuarios que posee determinada ciudad.

Nombre: INGRESO DE ENVÍOS A DESPACHAR POR PARTE DE USUARIOS

Autor: Por establecer

Fecha: a convenir

Descripción:
ingresar los envíos de los usuarios en las ciudades de origen a otros destinos.
Actores:
Por establecer
Precondiciones: acceder al sistema por medio de login y password, consultar usuario
y ciudad de origen, montar envió de pedido.
Flujo Normal: consultar usuario y agregar pedido con destino a ciudad diferente a la
de origen.
Flujo Alternativo:
<flujos alternativos de ejecución del caso de uso>
Post-condiciones:
Verificar la orden de pedido, usuario y destino.

Nombre: REPORTES

Autor: Por establecer

Fecha: a convenir

Descripción:
Generar reportes sobre los envíos despachados a otras ciudades desde cada ciudad.
Actores:
Por establecer
Precondiciones: acceder al sistema por medio de login y password, consultar usuario
y ciudad de origen por medio del número de identificación o ciudad de origen.
Flujo Normal: consultar usuario y pedidos.

Flujo Alternativo:
<flujos alternativos de ejecución del caso de uso>
Post-condiciones:
Generar reporte.

Requisitos NO Funcionales

S-ar putea să vă placă și