• No se han encontrado resultados

DESARROLLO DE APLICACIONES I

N/A
N/A
Protected

Academic year: 2021

Share "DESARROLLO DE APLICACIONES I"

Copied!
70
0
0

Texto completo

(1)

DESARROLLO DE APLICACIONES I

Cuatrimestre Mayo - Agosto

MSC Indelfonso Rodríguez Espinoza

Tecnologías de la Información y la Comunicación

(2)

UNIDADES TEMATICAS

I Paradigmas de la programación

II Ambiente de desarrollo

III Diseño y desarrollo de aplicaciones

IV Desarrollo de aplicaciones con conexión a

base de datos.

(3)

OBJETIVO

El alumno identificará los principales paradigmas de la programación para diferenciar su ámbito de aplicación.

Paradigmas de

Programación

DESARROLLO DE APLICACIONES I

MATERIA

(4)

Paradigma de programación estructurada

La programación estructurada es una forma

de escribir programas de ordenador (programación de computadora) de manera

clara. Para ello utiliza únicamente tres

estructuras: secuencia, selección e iteración; siendo innecesario el uso de la instrucción o instrucciones de transferencia incondicional (GOTO, EXIT FUNCTION, EXIT SUB o múltiples RETURN).

DESARROLLO DE APLICACIONES I

(5)

Paradigma de programación estructurada

• El teorema del programa estructurado,

demostrado por Böhm-Jacopini, demuestra que todo programa puede escribirse utilizando únicamente las tres instrucciones de control siguientes:

Secuencia

Instrucción condicional.

Iteración (bucle de instrucciones) con condición

al principio.

(6)

Paradigma de programación estructurada

• Solamente con estas tres estructuras se pueden

escribir todos los programas y aplicaciones posibles. Si bien los lenguajes de programación tienen un mayor repertorio de estructuras de control, éstas pueden ser construidas mediante las tres básicas.

DESARROLLO DE APLICACIONES I

(7)

Paradigma de programación estructurada

• I Paradigmas de programación

Estructura Iterativo Estructura Selección Estructura Secuencial Estructura Selectiva

(8)

Paradigma de POO

La programación orientada a objetos o

POO es un paradigma de programación que usa

objetos y sus interacciones, para diseñar aplicaciones y programas informáticos. Está basado en varias técnicas, incluyendo herencia, abstracción, polimorfismo y encapsulamiento. Su uso se popularizó a principios de la década de los años 1990. En la actualidad, existe variedad de lenguajes de programación que soportan la orientación a objetos.

DESARROLLO DE APLICACIONES I

(9)

Paradigma de POO

Los objetos son entidades que combinan estado

(atributo), comportamiento (método) e identidad:

El estado está compuesto de datos, será uno o varios atributos a los que se habrán asignado unos valores concretos (datos).

▫ El comportamiento está definido por los

procedimientos o métodos con que puede operar dicho objeto, es decir, qué operaciones se pueden realizar con él.

La identidad es una propiedad de un objeto que lo diferencia del resto, dicho con otras palabras, es su identificador (concepto análogo al de identificador de una variable o una constante).

(10)

Paradigma de POO

• Un objeto contiene toda la información que permite definirlo e identificarlo frente a otros objetos pertenecientes a otras clases e incluso frente a objetos de una misma clase, al poder tener valores bien diferenciados en sus atributos.

Los métodos (comportamiento) y atributos

(estado) están estrechamente relacionados por la

propiedad de conjunto. Esta propiedad destaca que una clase requiere de métodos para poder tratar los atributos con los que cuenta.

DESARROLLO DE APLICACIONES I

(11)

Paradigma de POO

• La POO difiere de la programación estructurada tradicional, en la que los datos y los procedimientos están separados y sin relación, ya que lo único que se busca es el procesamiento de unos datos de entrada para obtener otros de salida.

(12)

OBJETIVO

El alumno operará las funciones de un entorno de desarrollo para generar una aplicación.

Ambiente de

desarrollo

UNIDAD TEMATICA

II

DESARROLLO DE APLICACIONES I

MATERIA

(13)

Generalidades de la herramienta de

desarrollo

• Las herramientas de desarrollo son aquellos programas o aplicaciones que tengan cierta importancia en el desarrollo de un programa (programación). Pueden ser de importancia vital (como un ensamblador, un compilador o un editor) o de importancia secundaria, como una IDE (Integrated Development Environment -Entorno de Desarrollo Integrado).

(14)

Características de la interfaz de

desarrollo

Un entorno de desarrollo integrado es un programa informático compuesto por un conjunto de herramientas de programación. Puede dedicarse en exclusiva a un sólo lenguaje de programación o bien, poder utilizarse para varios.

• Un IDE es un entorno de programación que ha sido empaquetado como un programa de aplicación, es decir, consiste en un editor de código, un compilador, un depurador y un constructor de interfaz gráfica (GUI). Los IDEs pueden ser aplicaciones por sí solas o pueden ser parte de aplicaciones existentes. El lenguaje Visual Basic, por ejemplo, puede ser usado dentro de las aplicaciones de Microsoft Office, lo que hace posible escribir sentencias Visual Basic en forma de macros para Microsoft Word.

DESARROLLO DE APLICACIONES I

(15)

Identificar las funciones principales

(16)

Identificar las funciones principales

DESARROLLO DE APLICACIONES I

(17)

Identificar las funciones principales

(18)

OBJETIVO

El alumno creará

interfaces gráficas usando controles (componentes), manejo de excepciones y múltiples formas para elaborar aplicaciones visuales.

Diseño y desarrollo

de Aplicaciones

UNIDAD TEMATICA

III

DESARROLLO DE APLICACIONES I

(19)

Controles

• son objetos contenidos en objetos de formulario. Cada tipo de control tiene su propio conjunto de propiedades, métodos y eventos que lo hacen adecuado para un propósito en particular. Puede manipular los controles en el diseñador y escribir código para agregar controles dinámicamente, en tiempo de ejecución.

(20)

Uso de controles (componentes) básicos.

• Los controles que se agregan a los formularios Windows Forms tienen propiedades y métodos que permiten a los usuarios especificar en mayor medida la forma de utilizarlos.

• La personalización de la interfaz de usuario para que se ajuste a las necesidades del usuario es muy importante para el buen diseño de las aplicaciones para Windows.

DESARROLLO DE APLICACIONES I

(21)

Uso de controles (componentes) básicos.

(22)

Cuadro de dialogo

• Los cuadros de diálogo se utilizan para obtener datos de entrada de los usuarios. Puede crear sus propios cuadros de diálogo o utilizar los cuadros de diálogo integrados, como openFileDialog y

saveFileDialog

DESARROLLO DE APLICACIONES I

(23)

Cuadro de dialogo

(24)

Cuadro de dialogo

DESARROLLO DE APLICACIONES I

(25)

Proyecto de formularios Múltiples

• Un formulario MDI es un formulario (llamado "Padre" o "Parent") que puede contener otros formularios (llamados "Hijos" o "Child"). Para trabajar con este tipo de formularios se ejecuta el Visual C# y se crea un nuevo proyecto del tipo "Windows Application". De forma automàtica se crea un formulario con nombre "Form1". En la ventana Propiedades, se busca la propiedad "IsMDIContainer" y se cambia a "True".

(26)

Propiedad que determina que el

Formulario es un MDI padre

IsMDIContainer

DESARROLLO DE APLICACIONES I

(27)

MDI hijo

NombreFormulario UnAlias = new NombreFormulario(); UnAlias.MdiParent = this;

UnAlias.Show();

(28)

7/12/2016 Programacion 2Q - 2R

IRE

DESARROLLO DE APLICACIONES I

• III Diseño y Desarrollo de Aplicaciones

(29)

this

.LayoutMdi(MdiLayout.Cascade);

(30)

this

.LayoutMdi(MdiLayout.TileVertical);

DESARROLLO DE APLICACIONES I

(31)

Manejo de Excepciones

• C# proporciona soporte integrado para el manejo de excepciones o de una forma más formal situaciones anómalas de funcionamiento, las cuales pueden ocurrir en cualquier momento durante la ejecución del programa y son manejadas por el código que se encuentra fuera del flujo normal de control.

(32)

Manejo de Excepciones

• C#

DESARROLLO DE APLICACIONES I

(33)

Controles creados por el usuario

• Los controles de usuario proporcionan un medio para crear y reutilizar interfaces gráficas de usuario. Un control de usuario es esencialmente un componente con una representación visual. Como tal, puede constar de uno o más controles de formularios Windows Forms, componentes o bloques de código.

(34)

Creación de distribución

DESARROLLO DE APLICACIONES I

• III Diseño y Desarrollo de Aplicaciones

La aplicación constará de tres niveles lógicos:

 Datos, objeto comercial e interfaz de usuario.

 El nivel datos es una base de datos en SQL Server.

 El nivel de objeto comercial manejará el acceso a los datos y su distribución entre los clientes.

 El nivel de interfaz de usuario constará de una aplicación basada en Web y una aplicación de Windows tradicional.

(35)

Creación de distribución

• III Diseño y Desarrollo de Aplicaciones

(36)

OBJETIVO

El alumno desarrollará aplicaciones que permitan la conexión a BD, manipulación y generación de reportes utilizando asistentes para la administración y uso de la información.

Desarrollo de aplicaciones con conexión a Base de Datos Local.

UNIDAD TEMATICA

IV

DESARROLLO DE APLICACIONES I

(37)

Modos de conexión a Base de Datos

IV Desarrollo de Aplicaciones con

(38)

System.Data.SqlClient

(Espacio de nombres)

DESARROLLO DE APLICACIONES I

IV Desarrollo de Aplicaciones con conexión a Base de Datos

Representa una conexión abierta con una base de datos de SQL Server. Esta clase no se puede heredar.

SqlConnection

SqlCommand

Representa un procedimiento almacenado o una instrucción de Transact-SQL que se ejecuta en una base de datos de SQL Server. Esta clase no se puede heredar.

SqlDataAdapter Representa un conjunto de comandos de datos y unaconexión de base de datos que se utilizan para rellenar un

DataSet y actualizar una base de datos de SQL Server.

Esta clase no se puede heredar.

SqlDataReader Proporciona una forma de leer una secuencia de filas sólo hacia delante en una base de datos de SQL Server. Esta clase no se puede heredar.

(39)

Modos de conexión a Base de Datos Access

IV Desarrollo de Aplicaciones con

(40)

Modos de conexión a Base de Datos - Access

DESARROLLO DE APLICACIONES I

IV Desarrollo de Aplicaciones con

(41)

Modos de conexión a Base de Datos -- SQL

IV Desarrollo de Aplicaciones con

(42)

Grabar en la Base de datos

DESARROLLO DE APLICACIONES I

IV Desarrollo de Aplicaciones con

(43)

Actualizar en la Base de datos

IV Desarrollo de Aplicaciones con

(44)

Buscar en la Base de datos

DESARROLLO DE APLICACIONES I

IV Desarrollo de Aplicaciones con

(45)

Borrar en la Base de datos

IV Desarrollo de Aplicaciones con

(46)

Base de datos en un ComboBox

DESARROLLO DE APLICACIONES I

IV Desarrollo de Aplicaciones con

(47)

Validando USER y Password

IV Desarrollo de Aplicaciones con

(48)

Encriptación de Datos

DESARROLLO DE APLICACIONES I

IV Desarrollo de Aplicaciones con

(49)

Creación de reportes

IV Desarrollo de Aplicaciones con conexión a Base de Datos

 Generar reportes profesionales a un precio accesible.

 Permitir a los usuarios finales explorar los reportes mediante clasificaciones y parámetros en reportes.

 Minimizar los esfuerzos de TI y de desarrollo por medio de reportes interactivos.  Ahorrar tiempo valioso en el diseño del reporte.

 Incorporar reportes de aspecto profesional en aplicaciones Java y .NET.

 Personalizar su solución agregando las herramientas de visualización y administración de reportes.

(50)

Creación de reportes

DESARROLLO DE APLICACIONES I

IV Desarrollo de Aplicaciones con conexión a Base de Datos

Crystal Reports para Visual Studio .NET es la herramienta de elaboración de informes estándar para Visual Studio .NET. Permite crear contenido interactivo con calidad de presentación en la plataforma .NET.

Con Crystal Reports para Visual Studio .NET, puede almacenar informes en plataformas Windows y Web y publicar informes Crystal como servicios Web de informes en un servidor Web.

(51)

INSTALACION

IV Desarrollo de Aplicaciones con conexión a Base de Datos

(52)

Seguridad en las Aplicaciones

• La seguridad es un aspecto fundamental en todas las aplicaciones de C# y debe tenerse en cuenta en todas las fases del desarrollo:

▫ No sólo cuando se ha realizado el diseño y la implementación.

DESARROLLO DE APLICACIONES I

IV Desarrollo de Aplicaciones con conexión a Base de Datos

(53)

Seguridad en las Aplicaciones

• Ésta no es una lista exhaustiva de posibles problemas de seguridad. En ella se resaltan algunos problemas comunes sobre los que deben estar prevenidos los desarrolladores de C#.

▫ Utilice siempre el tipo de datos más restrictivo para los parámetros. Por ejemplo, al pasar un valor a un método que describe el tamaño de una estructura de datos, utilice el entero sin signo en lugar del entero.

IV Desarrollo de Aplicaciones con conexión a Base de Datos

(54)

Seguridad en las Aplicaciones

▫ No tome decisiones basadas en nombres de archivo. Los nombres de archivo se pueden expresar de muchas maneras diferentes y se podría omitir la comprobación de un archivo determinado.

▫ No incluya nunca contraseñas o información confidencial en el código de la aplicación.

▫ Valide siempre los datos de entrada que se utilicen para generar consultas SQL.

▫ Valide todas las entradas de los métodos.

DESARROLLO DE APLICACIONES I

IV Desarrollo de Aplicaciones con conexión a Base de Datos

(55)

Seguridad en las Aplicaciones

• No muestre información de excepciones: esto proporciona pistas valiosas a cualquier posible atacante.

• Asegúrese de que la aplicación funciona mientras se ejecuta con la menor cantidad de privilegios posibles. Pocas aplicaciones requieren que el usuario inicie sesión como administrador.

• Asigne nombres seguros a los ensamblados.

IV Desarrollo de Aplicaciones con conexión a Base de Datos

(56)

Seguridad en las Aplicaciones

• No almacene información confidencial en archivos XML o en otros archivos de configuración.

• Compruebe el código administrado que envuelve cuidadosamente el código nativo. Confirme que el código nativo sea seguro, sobre todo con respecto a las saturaciones del búfer.

• Actúe con precaución cuando utilice delegados pasados desde fuera de la aplicación.

DESARROLLO DE APLICACIONES I

IV Desarrollo de Aplicaciones con conexión a Base de Datos

(57)

Procedimiento Almacenado

Store Procedure: No es más que una

secuencia ordenada de instrucciones T-SQL, que pueden recibir y proporcionar parámetros provistos por el usuario y se pueden guardar en el servidor con un nombre, para posteriormente se invocados y ejecutados, por lo regular desde una aplicación (Escritorio o Web).

IV Desarrollo de Aplicaciones con conexión a Base de Datos

(58)

Procedimiento Almacenado

DESARROLLO DE APLICACIONES I

IV Desarrollo de Aplicaciones con conexión a Base de Datos

(59)

Procedimiento Almacenado

Ventajas

Compilación: La primera vez que se invoca un

SP, el motor lo compila y a partir de ahí, se sigue usando la versión compilada del mismo, hasta que se modifique o se reinicie el servicio de SQL. Esto significa que se tendrá un mejor rendimiento que las consultas directas que usan cadenas con las instrucciones T-SQL, que se compilan cada vez que se invocan.

Automatización: si tenemos un conjunto de

instrucciones T-SQL, las cuales queremos ejecutar de manera ordenada, un SP es la mejor manera de hacerlo.

IV Desarrollo de Aplicaciones con conexión a Base de Datos

(60)

Procedimiento Almacenado

Ventajas

Administración: cuando realizamos aplicaciones con

un gran numero de líneas de código, y queremos hacer cambios, solo implica modificar un SP y no toda la aplicación, lo que significa solo cambiamos los SP en el servidor y no tenemos que actualizar la aplicación en todos los equipos cliente.

Seguridad: una parte importante es que a los usuarios

de nuestra aplicación, solo les proporcionamos los permisos para ejecutar los procedimientos almacenados y no el acceso a todos los objetos de la base. Es decir, si en nuestra aplicación encuentran una vulnerabilidad como SLQ Injection no se podrá explotar ejecutando SQL directamente.

DESARROLLO DE APLICACIONES I

IV Desarrollo de Aplicaciones con conexión a Base de Datos

(61)

Procedimiento Almacenado

Ventajas

Programabilidad: Los SP admiten el uso de variables

y estructuras de control como IF, Bucles, Case, etc. además del manejo de transacción y permite controlar excepciones. Y cuando trabajamos con SP CLR podemos hacer uso de cualquier lenguaje .NET como lo son C# y VB.NET.

Trafico de Red: Pueden reducir el trafico de la red,

debido a que se trabaja sobre el motor (en el servidor), y si una operación incluye hacer un trabajo de lectura primero y en base a eso realizar algunas operaciones, esos datos que se obtienen no viajan por la red.

IV Desarrollo de Aplicaciones con conexión a Base de Datos

(62)

Triggers

• Es un tipo especial de procedimiento almacenado que se ejecuta automáticamente al intentarse efectuar una modificación de los datos, en la tabla a la que se encuentran asociados.

• Las operaciones que pueden “disparar” un trigger son las correspondientes a las instrucciones SQL, INSERT, UPDATE y DELETE.

DESARROLLO DE APLICACIONES I

IV Desarrollo de Aplicaciones con conexión a Base de Datos

(63)

Triggers

• Puede definirse un trigger para cada una de ellas, o bien definir un trigger asociado a una combinación de las mismas.

• La mayor utilidad que se confiere a un trigger, es la de asegurar la integridad referencial o el cumplimiento de las distintas reglas definidas, si bien estas son operaciones que pueden delegarse en el propio servidor, mediante las instrucciones y cláusulas de especificación de las reglas de integridad, definidas durante la creación de las tablas, o añadidas posteriormente

IV Desarrollo de Aplicaciones con conexión a Base de Datos

(64)

Por su atención . . . . .

(65)

Que debe CONTENER el sistema…..

10 de Julio de 2015 Revisión de Aplicación C# y cada una de los Form con acceso a la Base de Datos

(66)

Que debe CONTENER el sistema…..

(67)

Referencias Bibliográficas

• http://es.wikipedia.org/wiki/Programaci%C3% B3n_orientada_a_objetos • http://es.wikipedia.org/wiki/Programaci%C3% B3n_estructurada • http://msdn.microsoft.com/es-es/library/ms173195(v=vs.80).aspx

(68)

Proyecto

• Form Presentasion

▫ Los datos generales de la empresa ▫ Progressbar

• Form del Password

▫ Dos Botones (Acaptar - Cancelar) ▫ Un Combobox (usuario)

▫ Un TextBox (Clave de Acceso) • Menu

• Los form de Captura para cada Table

▫ Debe contener todos y cada uno de los campos de las tablas.

(69)
(70)

Referencias

Documento similar

DESARROLLO Y PROGRAMACIÓN DE APLICACIONES PARA ANDROID UNIDAD DIDÁCTICA 1.. ¿Qué

- Manual teórico 'Desarrollo de Componentes de Negocio con Tecnología Empresarial Java Beans' - Manual teórico 'Desarrollo y Programación de Aplicaciones para Android'.. -

En esta asignatura se aprenderá cómo desarrollar aplicaciones nativas para Android, una de las plataformas más utilizadas en el panorama de la programación de aplicaciones

Este CURSO ONLINE DE DESARROLLO DE APLICACIONES CON TECNOLOGÍAS WEB le prepara para conocer a fondo el ámbito de la programación y desarrollo web, adquiriendo las técnicas..

Este CURSO ONLINE DE DESARROLLO DE APLICACIONES CON TECNOLOGÍAS WEB le prepara para conocer a fondo el ámbito de la programación y desarrollo web, adquiriendo las técnicas..

- Manual teórico 'Desarrollo de Componentes de Negocio con Tecnología Empresarial Java Beans' - Manual teórico 'Desarrollo y Programación de Aplicaciones para Android'.. -

- Manual teórico 'Desarrollo de Componentes de Negocio con Tecnología Empresarial Java Beans' - Manual teórico 'Desarrollo y Programación de Aplicaciones para Android'...

Programa componentes de acceso a datos identificando las características que debe poseer un componente y utilizando herramientas de desarrollo.. b) Se han identificado herramientas