El post que buscas se encuentra eliminado, pero este también te puede interesar

Genexus Curso Modulo 1

Anuncios

Genexus Curso Modulo 1

ProgramacionSi te gustan mis aportes,Seguimeapps

SentenciasSi tenes dudas sobre el post u otra cosa,mandame un MPgenexus

DBMSSi te gusto el post,comenta!modelo de datos

Genexus Curso Modulo 1


Programacion


¿Que es Genexus y para que sirve?


GeneXus es una herramienta de desarrollo de software ágil, multiplataforma, orientada principalmente a aplicaciones web empresariales, plataformas Windows y dispositivos móviles o inteligentes. Es el producto principal de la compañía uruguaya Artech. El desarrollador describe sus aplicaciones en alto nivel, de manera mayormente declarativa, a partir de lo cual GeneXus genera código para múltiples plataformas (Windows, iSeries, Web, dispositivos móviles).1

GeneXus incluye un módulo de normalización de base de datos (en 3ª forma normal), que crea y mantiene la base de datos óptima (estructura y contenido) basada en las visiones de la realidad descritas por los usuarios utilizando un lenguaje declarativo.

GeneXus genera código para múltiples lenguajes, incluyendo: Cobol, RPG, Visual Basic, Visual FoxPro, Ruby, C#, Java para múltiples plataformas móviles, incluyendo Android o Blackberry, y Objective-C para dispositivos Apple. Los DBMSs más populares son soportados, como Microsoft SQL Server, Oracle, IBM DB2, Informix, PostgreSQL y MySQL.

GeneXus se comercializa en más de 45 países, incluyendo toda Latinoamérica y varios países del Caribe, Canadá, Estados Unidos, países de Europa occidental como España, Italia, Francia y Portugal y, en Asia, China y Japón. Cuenta con más de 6.000 clientes y una comunidad de 85.000 desarrolladores en todo el mundo.


apps


En este curso les voy a enseñar a manejar genexus,el curso se va a dividir en modulos,este modulo va a tratar un poco sobre lo que son las BD(base de datos) y los DBMS(data base manegment system)...Si bien genexus se va a encargar por nosotros de realizar la base de datos y dejarla en 3 normalizada,es bueno tener algunos conocimientos previos,en caso de eventualidades



Introduccion a las BD

1. DEFINICIÓN DE BASE DE DATOS (tomada en base a la Wikipedia):
Una base de datos o banco de datos (en ocasiones abreviada con la sigla BD o con la abreviatura b. d. o DB = database) es un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemáticamente para su posterior uso.
De esta definición resaltamos: •
El conjunto de datos pertenece a un mismo contexto, o sea que los datos tienen relación entre sí. • Están almacenados sistemáticamente.
2. EJEMPLOS DE BASES DE DATOS: •
La agenda telefónica • Base de datos del censo nacional • Base de datos de pacientes e historias clínicas en un hospital • Base de datos de productos, con su stock y precio en un comercio
3. ALGUNAS PROPIEDADES DE UNA BASE DE DATOS (BD): •
Representa algún aspecto del mundo real, o tiene significado para alguien en el mundo real. • Los datos están ordenados sistemáticamente, o sea en forma lógica coherente, con cierto significado inherente. Una colección aleatoria (por ejemplo recortes de noticias al azar) no se considera una BD. • Toda BD se diseña, construye y prueba con datos para un propósito específico

Por ejemplo: llevar el control de stock de mercadería, llevar la contabilidad de una empresa, controlar las garantías de productos vendidos, manejar los datos de contacto de los clientes y proveedores fácilmente • Las bases de datos almacenadas en forma digital son por definición, también software


4. DBMS: Sistema de administración de bases de datos
Las bases de datos informáticas pueden ser de cualquier tamaño y presentar diverso grado de complejidad. Para manejar grandes cantidades de datos, en forma sencilla y asegurando la integridad de dichos datos se ha desarrollado software especializado en el manejo de bases de datos, los DBMS (por sus siglas en inglés: DATABASE MANAGEMENT SYSTEM).
Un DBMS es entonces una aplicación (software) que se encarga de manejar en forma clara, sencilla y ordenada los datos, facilitando los procesos de: •
Definición de la base de datos (tipos de datos, estructuras, restricciones sobre los datos) • Construcción (almacenamiento de datos) • Manipulación (modificación, borrado, agregar nuevos datos, buscar)
5. OBJETIVOS DE UNA DBMS (tomado en base a Wikipedia): •
Abstracción de la información. Los DBMS ahorran a los usuarios detalles acerca del almacenamiento físico de los datos. Da lo mismo si una base de datos ocupa uno o cientos de archivos, este hecho se hace transparente al usuario. Así, se definen varios niveles de abstracción. •
Independencia. La independencia de los datos consiste en la capacidad de modificar el esquema (físico o lógico) de una base de datos sin tener que realizar cambios en las aplicaciones (programas) que se sirven de ella. •
Consistencia. Los DBMS tienen la posibilidad de programar reglas que nos aseguren la consistencia de los datos.

Por ejemplo, si modificamos la descripción de un producto dicha descripción se modificará en todos los lugares donde se haga referencia a ese producto en toda la base de datos.

Se pueden programar reglas para evitar información duplicada (por ejemplo que no existan dos personas con el mismo número de cédula de identidad).

También se pueden programar reglas más complejas, que aseguren por ejemplo que no vendemos productos que tienen stock en cero. •
Manejo de transacciones. Los DBMS proveen mecanismos para manejar transacciones.

Una transacción es un conjunto de instrucciones que se ejecuta como una sola operación, y se completan todas sus instrucciones o en caso contrario la base de datos queda en el estado anterior al que estaba antes de iniciarse la transacción (por ejemplo si el sistema falla antes que la transacción se complete). Por ejemplo: Una transacción para el pago de una factura puede implicar: actualizar dinero en caja / hacer asiento contable / actualizar saldo de cuenta corriente del cliente. Todas estas operaciones deberían realizarse en conjunto o no realizarse ninguna, ya que de otra forma entraría dinero a caja sin actualizar el saldo del cliente.
Seguridad. La información almacenada en una base de datos puede llegar a tener un gran valor. Los DBMS deben garantizar que esta información se encuentra segura de permisos a usuarios y grupos de usuarios, que permiten otorgar diversas categorías de permisos. •
Tiempo de respuesta. Un DBMS minimiza el tiempo de demora en proporcionar la información solicitada y en almacenar los cambios realizados (si la BD está bien diseñada).


RESUMEN FINAL:
Las bases de datos (BD) son la parte del software donde guardamos los datos que serán manipulados (guardados, modificados, borrados o consultados) por los programas.
No cualquier conjunto de datos es una base de datos, para serlo tienen que ser datos que guarden relación entre sí dentro de un contexto, estar organizados en forma sistemática y tener un uso específico.
Las bases de datos se acceden y manipulan con un software especializado: el DBMS.
El DBMS provee mecanismos para interactuar con la base de datos independientemente de cómo esté implementada física o lógicamente.
Además provee mecanismos para indexar (crear índices para acceder más rápidamente a los datos), brindar seguridad de acceso a los datos, asegurar la consistencia e integridad de los datos.


Sentencias


Tema2: MODELO DE DATOS


DEFINICIÓN DE MODELO DE DATOS:
Un MODELO DE DATOS es una forma de representar los elementos de la realidad que intervienen en un problema dado y las relaciones entre estos elementos.
Hay varios MODELOS DE DATOS y cada uno de ellos utiliza una forma distinta de representar la realidad. Además cada modelo usa un lenguaje, diagramas y reglas propios.
De esta forma al conocer cómo se representa la realidad en un modelo de datos podemos entender los modelos de datos que han desarrollado otras personas
.


UNA CLASIFICACIÓN DE MODELOS DE DATOS:
Una opción bastante usada a la hora de clasificar los modelos de datos es hacerlo de acuerdo al nivel de abstracción que presentan:
-Modelos de Datos Conceptuales
Están orientados a describir los elementos que intervienen en la realidad y las relaciones entre los mismos. Este tipo de modelo se usa fundamentalmente en la etapa de análisis. De esta categoría veremos el Modelo Entidad-Relación (o MER).
- Modelos de Datos Lógicos
Están orientados más a las operaciones sobre los datos (crear, agregar, modificar, borrar) que a la descripción de una realidad. Usualmente están implementados en algún DBMS. El ejemplo más típico es el Modelo Relacional que veremos más adelante.
-Modelos de Datos Físicos
Son estructuras de datos a bajo nivel implementadas dentro del propio DBMS. Estas estructuras implementan la forma en cómo se almacenan y organizan los datos ya dentro del DBMS. Como programadores esto es transparente para nosotros ya que es parte de la implementación del DBMS, que como habíamos dicho en la lección anterior, nos permite trabajar sin tener que conocer los detalles de cómo almacena los datos.


MODELO ENTIDAD-RELACIÓN (MER)
:
Representa en forma gráfica un esquema de base de datos mediante entidades y relaciones entre dichas entidades, indicando además las propiedades de estas entidades y de las relaciones, así como también las restricciones que las mismas cumplen.
Un ejemplo de un MER que representa la realidad de un Cliente que Realiza Pedidos, los cuales Se componen por Artículos sería el siguiente:


genexus


ELEMENTOS DE UN MER


Entidades
Representan cosas u objetos del mundo real, casi siempre cosas que existen físicamente, con existencia independiente (es decir, que se diferencia unívocamente ese objeto o cosa u otro objeto o cosa, incluso siendo del mismo tipo o clase).
Una entidad puede ser un objeto con existencia física como: una persona, un animal, una casa (entidades concretas); o un objeto con existencia conceptual como: un puesto de trabajo, una asignatura de clases (entidades abstractas).
Las entidades son las que tienen hechos asociados. Rara vez los procesos son entidades.

Ejemplo de entidades:
Una persona (Se diferencia de cualquier otra persona, incluso siendo gemelos) Un automóvil. (Aunque sean de la misma marca y mismo modelo, tendrán atributos diferentes, por ejemplo, el número de chasis o de matrícula) Una casa (Aunque sea exactamente igual a otra, aún se diferenciará en su dirección) Departamento (Cada departamento es único y podemos identificarlo)
Decíamos que los procesos casi nunca son entidades, así por ejemplo:
La recepción de un pedido NO es una entidad. El proceso de pagar la patente NO es una entidad. La inscripción a un examen NO es una entidad.
Las descripciones de los tipos de entidades deben ser lo más extensas posible en el desarrollo del modelo, de forma tal que tanto usuarios como programadores entiendan bien de qué están hablando y existan confusiones en la interpretación de los términos (y por consecuencia en el modelo).


Atributos


Los atributos son datos o propiedades asociadas a un tipo de entidad.
En la realidad una entidad puede tener muchos atributos (por ejemplo la entidad “Empleado” puede tener como atributos un “Número”, “Fecha de nacimiento”, “Teléfono”, “Dirección”, “Color de cabello”, “Comida favorita”) pero sólo representaremos en el modelo aquellas que sean relevantes para el sistema (así por ejemplo si queremos programar una red social los últimos atributos sean importantes pero no si estamos programando el sistema de liquidación de sueldos.
Ejemplo de atributos para la entidad “Empleado”:
Número de CI - Nombre - Fecha de Nacimiento- Fecha de ingreso a la empresa - Teléfono - Dirección
Según la convención que se utilice en el MER esto se puede representar de una de las siguientes formas:


DBMS


Claves
Las claves son un conjunto de atributos (puede ser un solo atributo) que identifica de forma unívoca a un elemento de una entidad.
Por ejemplo podrían ser claves:
Entidad: Empleado – Atributos clave: Número de CI Entidad: Automóvil – Atributos clave: Número de chasis Entidad: País – Atributos clave: Nombre Entidad: Factura – Atributos clave: Número de factura Entidad: Ciudad – Atributos clave: País + Departamento + Nombre de ciudad Entidad: Curso – Atributos clave: Nombre de curso + Fecha de inicio
En el diagrama las claves pueden subrayarse, o marcarse al lado con un asterisco (*) o indicar al lado entre paréntesis que es una clave primaria, en inglés “primary key”: (pk)
Relaciones
Las relaciones describen las interacciones, dependencias o asociaciones que ocurren entre las entidades.
Por ejemplo:
La entidad “Empleado” se relaciona con la entidad “Empresa” por la relación “Trabaja en” La entidad “Estudiante” se relaciona con la entidad “Próximos exámenes” por la relación “Está inscripto en”
En el diagrama del MER las relaciones se dibujan como rombos.
Las relaciones también pueden tener atributos.
Por ejemplo, en un videoclub un “Socio” (entidad) puede “Alquilar” (relación) una “Película” (otra entidad). En dicho caso el atributo “Fecha de alquiler” no es una característica o propiedad del socio, ni de la película, sino que es una propiedad de la relación “Alquilar”:


modelo de datos


MÁS CONCEPTOS: DOMINIOS, CARDINALIDAD
- Dominios
Un dominio es el tipo de datos (numérico, caracteres, fechas) o conjunto de valores posibles que puede tomar un atributo.
Por ejemplo:
- Atributo: Edad - Dominio: 0 a 120 - Atributo: Nombre - Dominio: Cadena de caracteres alfabéticos - Atributo: Fecha de nacimiento - Dominio: Fecha válida - Atributo: Departamento - Dominio: Lista de los 19 departamentos del Uruguay - Atributo: Género (de película) - Dominio: {Drama, Acción, Comedia, Terror, Thriller} -Atributo: Mayor de edad - Dominio: {Sí, No}
NOTA: En algunos casos, cuando no se conoce o aún no está determinado el valor de un atributo se puede permitir el valor NULO (o NULL). Esta es una decisión de diseño (por ejemplo, se podría permitir el valor NULL para el atributo “Número de fax” (no todo mundo tiene un número de fax). Para los campos clave NO se permite el valor NULL (por ejemplo si la clave fuese “Número de CI” entonces no podría estar en NULL.
-


Cardinalidad
Dado una relación la cardinalidad indica el número de entidades con las que puede estar relacionada una entidad dada:


Genexus Curso Modulo 1



RESUMEN FINAL:
Para diseñar un sistema o programa debemos diseñar los datos.
Esto se hace a partir de la información que nos cuentan los usuarios, la cual debemos tratar que sea lo más completa posible y sin ambigüedades, de forma tal que luego el sistema solucione lo que el usuario quiere hacer de la forma que él quiere hacerlo.
Con esta información creamos MODELOS DE DATOS. Para poder diseñar el sistema lo más adecuado es trabajar con un modelo como el MODELO ENTIDAD-RELACIÓN, ya que gráficamente se pueden ver los datos y las relaciones entre éstos, y es entendible también por el usuario.
Los elementos de un MER son ENTIDADES, ATRIBUTOS y RELACIONES.
Los ATRIBUTOS tienen un DOMINIO que es el conjunto de valores válidos que puede tomar el atributo.
Si un atributo o conjunto de atributos identifican unívocamente a un elemento de la entidad o relación a la que pertenece el atributo, entonces ese atributo o conjunto de atributos son una CLAVE.
Las relaciones tienen CARDINALIDAD, que indica cuántos elementos de una entidad pueden estar relacionados a la vez con un elemento de la otra entidad con que se relacionan.



Bueno hasta aca lo de hoy,quizas estaa un poco entreverado,pero manden mp si tienen dudas,en el siguiente post,seguimos con este modulo... pero abarcamos MOdelos de Datos relacionales y comenzamos con las sentencias SQLelete,Select,Update,e Insert



SALUDOS Y NO SE OLVIDEN DE RECOMENDAR!

Anuncios

2 comentarios - Genexus Curso Modulo 1

NooManhattan +3
Genexusss noooo ! ! ! ! ! entidades N:N noooooooooooo! ! programadores vagos (?)