sábado, 10 de septiembre de 2011

Visual Basic


INTRODUCCIÓN


Visual Basic 6.0 realiza un  gran  número  de  tareas    sin  escribir  código,  simplemente con 
operaciones gráficas realizadas con el ratón sobre la pantalla. 
Es un programa basado en objetos, aunque no orientado a objetos como 
C++ o Java. La diferencia está en que Visual Basic 6.0 utiliza objetos con propiedades y métodos, 
pero  carece  de  los mecanismos  de  herencia  y  polimorfismo  propios  de  los  verdaderos  lenguajes 
orientados a objetos como Java y C++. 

PROGRAMAS SECUENCIALES, INTERACTIVOS Y ORIENTADOS A EVENTOS 

Existen  distintos  tipos  de  programas.
Tipo  secuencial :(también  llamados  tipo batch) es un programa que 
se  arranca,  lee  los  datos  que  necesita,  realiza  los  cálculos  e  imprime  o  guarda  en  el  disco  los 
resultados.  De  ordinario, mientras  un  programa  secuencial  está  ejecutándose  no  necesita  ninguna 
intervención  del  usuario.  A  este  tipo  de  programas  se  les  llama  también  programas  basados  u 
orientados a procedimientos o a algoritmos  (procedural  languages). 
Los  programas  interactivos  exigen  la  intervención  del  usuario  en  tiempo  de  ejecución,  bien para 
suministrar  datos,  bien  para  indicar  al  programa  lo  que  debe  hacer  por  medio  de  menús.  Los 
programas  interactivos  limitan y orientan  la acción del usuario.
los programas orientados a eventos son los programas típicos de Windows ,estos programas  pasan  la mayor parte  de  su  tiempo  esperando  las  acciones del 
usuario (eventos) y respondiendo a ellas. Las acciones que el usuario puede realizar en un momento 
determinado  son variadísimas, y exigen un  tipo especial de programación:  la programación orien- 
tada a eventos. 

PROGRAMAS PARA EL ENTORNO WINDOWS 

Visual Basic  6.0  está  orientado  a  la  realización  de  programas  para Windows, pudiendo  incorporar 
todos  los elementos de este entorno  informático: ventanas, botones, cajas de diálogo y de  texto, bo- 
tones de opción y de selección, barras de desplazamiento, gráficos, menús, etc. 
Prácticamente todos los elementos de interacción con el usuario de los que dispone Widows
95/98/NT/XP pueden ser programados en Visual Basic 6.0 de un modo muy sencillo.


MODO DE DISEÑO Y MODO DE EJECUCIÓN

la aplicación Visual Basic de Microsoft puede trabajar de dos modos distintos:
En modo  de  diseño  el  usuario  construye  interactivamente  la  aplicación, 
colocando controles en el  formulario, definiendo  sus propiedades, y desarrollando  funciones para 
gestionar los eventos. 

La aplicación se prueba en modo de ejecución. En ese caso el usuario actúa sobre el programa 
(introduce eventos) y prueba cómo responde el programa. Hay algunas propiedades de los controles 
que deben establecerse en modo de diseño, pero muchas otras pueden cambiarse en  tiempo de eje- 
cución  desde  el  programa  escrito  en  Visual Basic  6.0


FORMULARIOS Y CONTROLES

Cada uno de  los elementos gráficos que pueden formar parte de una aplicación  típica de Windows 
95/98/NT/XP es un  tipo de control:  los botones,  las cajas de diálogo y de  texto,  las cajas de selec- 
ción desplegables, los botones de opción y de selección, las barras de desplazamiento horizontales y 
verticales, los gráficos, los menús, y muchos otros tipos de elementos son controles para Visual Ba- 
sic  6.0. Cada  control  debe  tener  un  nombre  a  través  del  cual  se  puede  hacer  referencia  a  él  en  el 
programa. Visual Basic 6.0 proporciona nombres por defecto que el usuario puede modificar.

OBJETOS Y PROPIEDADES

los  formularios  y  los  distintos  tipos  de  controles  son  entidades  genéricas  de  las  que  puede  haber 
varios ejemplares concretos en cada programa. En programación orientada a objetos (más bien ba- 
sada en objetos, habría que decir) se  llama clase a estas entidades genéricas, mientras que se  llama 
objeto a cada ejemplar de una clase determinada. Por ejemplo, en un programa puede haber varios 
botones, cada uno de los cuales es un objeto del tipo de control command button, que sería la clase.
las  propiedades  de  un  objeto  son  datos  que  tienen  valores  lógicos  (True, False) o 
numéricos  concretos,  propios  de  ese  objeto  y  distintos  de  las  de  otros  objetos  de  su  clase. 
Se puede acceder a una propiedad de un objeto por medio del nombre del objeto a que perte- nece, 
seguido  de  un  punto  y  el  nombre  de  la  propiedad,  como  por  ejemplo  optColor.objName. En el 
siguiente apartado se estudiarán las reglas para dar nombres a los objetos. 


NOMBRES DE OBJETOS

Estos  nombres  por  defecto  hacen  refe- 
rencia al tipo de control  y van seguidos de un número que se incrementa a medida que se van intro- 
duciendo más controles de ese  tipo en el  formulario  (por ejemplo VScroll1, para una barra de des- 
plazamiento -scroll bar- vertical, HScroll1, para una barra horizontal, etc.). 
Los nombres por defecto no  son adecuados porque hacen  referencia al  tipo de control, pero no al 
uso  que  de  dicho  control  está  haciendo  el  programador. 
Existe  una  convención  ampliamente  aceptada  que  es  la  siguiente:  se  utilizan  siempre  tres  le-  tras 
minúsculas que  indican el  tipo de control, seguidas por otras  letras (la primera mayúscula, a modo 
de  separación)  libremente escogidas por el usuario, que  tienen que hacer  referencia al uso que  se 
va  a  dar  a  ese  control.  


Tabla . Abreviaturas para los controles más usuales. 
Abreviatura     Control                             Abreviatura     Control 
chk                     check box                          cbo                      combo y drop-list box 
cmd                    command button                dir                        dir list box 
drv                     drive list box                       fil                          file list box 
frm                      form                                  fra                         frame 
hsb                     horizontal scroll bar            img                        image 
lbl                      label                                   lin                          line 
lst                       list                                     mnu                        menu 
opt                     option button                     pct                         pictureBox 
shp                     shape                                txt                           text edit box 
tmr                     timer                                  vsb                       vertical scroll bar 

EVENTOS

las acciones del usuario sobre el programa se  llaman eventos.
on eventos  típicos el clicar sobre un botón, el hacer doble clic sobre el nombre de un fichero para abrirlo, el arras- 
trar un icono, el pulsar una tecla o combinación de teclas, el elegir una opción de un menú, el escri- 
bir en una caja de  texto, o simplemente mover el ratón. Más adelante se verán  los distintos  tipos de 
eventos reconocidos por Windows 95/98/NT/XP y por Visual Basic 6.0. 
Cada  vez  que  se  produce  un  evento arranca una determinada  función o procedimiento que  realiza  la acción programada por el usuario 
para ese evento concreto como  por  ejemplo 
txtBox_click, que es el nombre del procedimiento que se ocupará de responder al evento click en el 
objeto txtBox. 

MÉTODOS 

Los métodos son funciones que también son llamadas desde programa, pero a diferencia de los pro- 
cedimientos no son programadas por el usuario, sino que vienen ya pre-programadas con el  lengua- 
je.  Los métodos  realizan  tareas  típicas,  previsibles  y  comunes  para  todas  las  aplicaciones. De  ahí 
que vengan con el lenguaje y que se libere al usuario de la tarea de programarlos. Cada tipo de obje- 
to o de control tiene sus propios métodos. 
Por ejemplo,  los controles gráficos  tienen un método  llamado Line que se encarga de dibujar 
líneas  rectas.

PROYECTOS Y FICHEROS

Cada aplicación que se empieza a desarrollar en Visual Basic 6.0 es un nuevo proyecto. Un proyec- 
to comprende otras componentes más sencillas, como por ejemplo los formularios (que son las ven- 
tanas de la interface de usuario de la nueva aplicación) y los módulos (que son conjuntos de funcio- 
nes y procedimientos sin interface gráfica de usuario).
Un proyecto se compone siempre de varios fiche- 
ros (al menos de dos) y hay que preocuparse de guardar cada uno de ellos en el directorio adecuado y  con  el  nombre  adecuado.  Existe  siempre  un  fichero  con  extensión  *.vbp  (Visual
Basic Project) que se crea con el comando File/Save Project As. El fichero del proyecto
contiene toda la  informa- ción  de  conjunto. Además  hay  que  crear  un  fichero  por  cada
formulario  y  por  cada módulo  que tenga  el  proyecto.  Los  ficheros  de  los  formularios
se  crean  con   File/Save  Filename  As  teniendo como  extensión  *.frm.  Los  ficheros  de
código  o  módulos  se  guardan  también  con  el  comando  Fi-  le/Save  Filename  As  y
tienen  como  extensión *.bas  si  se  trata de un módulo  estándar o  *.cls  si se  trata de un
módulo de clase (class module). 
Clicando en el botón Save en la barra de herramientas se actualizan todos los ficheros del
pro- yecto. Si no  se habían guardado  todavía en el disco, Visual Basic 6.0 abre cajas de
diálogo Save As por cada uno de los ficheros que hay que guardar. 


sábado, 27 de agosto de 2011

PROGRAMACIÓN CON SISTEMAS GESTORES DE BD

SISTEMAS DE ARCHIVOS

Un sistema de archivos es un conjunto de programas que prestan servicio a los usuarios finales, donde cada programa define y maneja sus propios datos.
Los sistemas de archivos surgen de la necesidad de reemplazar el manejo de los archivos manuales para obtener acceso a los datos con mayor rapidez
Los sistemas de archivos presentan algunos inconvenientes que se atribuyen a que la definición de los datos se encuentra codificada dentro de los programas de aplicación, y no siendo almacenada de forma independiente a las aplicaciones.

BASE DE DATOS

Una base de datos es un conjunto de datos almacenados entre los que existen relaciones lógicas y ha sido diseñada para satisfacer los requerimientos de información de una organización, almacenando en ella su descripción.
Los sistemas de información separan la definición de la estructura de datos de los programas de aplicación y almacenan esta definición en la base de datos, 1o que permite que al añadir o modificar estructura de datos, los programas de aplicación no se ven afectados, ya que no dependen directamente de ello.


SISTEMA DE GESTIÓN DE BASE DE DATOS

Los SGBD es la aplicación que interactúa con los usuarios de los programas de aplicación y la base de datos.
Algunos de los SGBD más conocidos son: SQL, DBZ, SLQ/DS, ORACLE, INGRES, INFORMIX, SYBASE, PARADOX, DBASE, ACCESS, FOXPRO, R, RM/T Y RMjVZ.

OBJETIVOS DE UN SGBD

-Definir la Base de Datos mediante el Lenguaje de Definición de Datos.
-Separar la descripción y manipulación de la data, permitiendo un mayor entendimiento de los objetos, además de flexibilidad de consulta y actualización de los datos.
-Permitir la inserción, eliminación, actualización, consulta de los datos mediante el Lenguaje de Manejo de Datos. Existen dos tipos de programas de Manejo de Datos, los cuales se diferencian por la forma en que acceden a los datos.
Lenguajes procedurales. manipulan la base de datos registro a registro y se deben especificar las operaciones a realizar para obtener los datos resultado.
Lenguajes no procedurales. manipulan la base de datos en conjuntos de registros y se especifican qué datos deben obtenerse como resultado sin plantear las forma de hacerlo.
-Proporcionar acceso controlado a la base de datos.
Seguridad: los usuarios no autorizados no pueden acceder a la base de datos. Integridad: mantiene la integridad y consistencia de la base de datos.
Control de Recurrencia, permite el acceso compartido a la base de datos.
Control de Recuperación: restablece la base de datos después de producirse un fallo de software o hardware.
Diccionario de datos o Catálogo: contiene la descripción de los datos de la base de datos y es accesible por el usuario.
- Gestionar la estructura física de los datos y su almacenamiento, proporcionando eficiencia en las operaciones de la base de datos yel acceso al medio de almacenamiento.
-Proporcionar un mecanismo de vistas, que permita a cada usuario tener su propia vista o
-Sistemas de Gestión de Base de Datos
visión de la base de datos.
El lenguaje de definición nos permite definir las vistas como subconjuntos de la base de datos, permitiendo:
Proporcionar un nivel de seguridad excluyendo datos para que no sean vistos por determinados usuarios.
Permiten que los usuarios vean los datos en el formato deseado.
Una vista representa una imagen consistente y permanente de la base de datos, aún cuando a la base de datos se le hagan cambios en sus estructura.
-Eliminar la redundancia de datos
-Proveer interfaces procedimentales y no procedimentales, permitiendo la manipulación por usuarios interactivos y programadores.
- Independizar la estructura de la organización lógica de los datos.
- Independizar la descripción lógica de la Base de datos y las descripciones particulares de los diferentes puntos de vistas de los usuarios.
-Permitir una fácil administración de los datos.

ACTORES EN EL ENTORNO DE UNA BASE DE DATOS

-Administrador de la base de datos: se encarga del diseño físico de la base de datos y de su implementación, realiza el control de la seguridad y de la concurrencia, mantiene el sistema para que siempre se encuentre operativo y se encarga de que los usuarios y las aplicaciones obtengan buenas prestaciones. El diseñador de la base de datos debe implicar en el desarrollo del modelo de datos a todos los usuarios de la base de datos, tan pronto como sea posible. -El diseño lógico de la base de datos realizan el diseño lógico de la base de datos, debiendo identificar los datos, las relaciones entre datos y las restricciones sobre los datos y sus relaciones,es independiente del SGBD concreto que se vaya a utilizar, es independiente de los programas de aplicación, de los lenguajes de programación y de cualquier otra consideración física.
-Programadores de aplicaciones: se encargan de implementar los programas de aplicación que servirán a los usuarios finales. Estos programas de aplicación son los que permiten consultar datos, insertarlos, actualizarlos y eliminarlos. Estos programas se escriben

VENTAJAS DE LOS SGBD

-Control sobre la redundancia de datos: Los sistemas de archivos almacenan varias copias de los mismos datos en archivos distintos.
-Consistencia de datos: Eliminando o controlando las redundancias de datos se reduce en gran medida el riesgo de que haya inconsistencias.
-Más información sobre la misma cantidad de datos: Al estar todos los datos integrados, se puede extraer información adicional sobre los mismos.
-Compartición de datos: En los sistemas de archivos, los archivos pertenecen a las personas o a los departamentos que los utilizan.
-Mantenimiento de estándares: Gracias a la integración es más fácil respetar los estándares necesarios, tanto los establecidos a nivel de la empresa como los nacionales e internacionales.


EXISTENCIA DE LOS SGBD

-Mejora en la integridad de datos: La integridad de la base de datos se refiere a la validez y la consistencia de los datos almacenados.
-Mejora en la seguridad: Los SGBD permiten mantener la seguridad mediante el establecimiento de claves para identificar al personal autorizado a utilizar la base de datos.
-Mejora en la accesibilidad a los datos: Muchos SGBD proporcionan lenguajes de consultas o generadores de informes que permiten al usuario hacer cualquier tipo de consulta sobre los datos
-Mejora en la productividad: A nivel básico. el SGBD proporciona todas las rutinas de manejo de archivos típicas de los programas de aplicación.
-Mejora en el mantenimiento gracias a la independencia de datos: Los SGBD separan las descripciones de los datos de las aplicaciones.
-Aumento de la concurrencia: La mayoría de los SGBD gestionan el acceso concurrente a la base de datos y garantizan que no ocurran problemas en el acceso de múltiples usuanos.
-Mejora en los servicios de copias de seguridad y de recuperación ante fallos: Los SGBD actuales funcionan de modo que se minimiza la cantidad de trabajo perdido cuando se produce un fallo.

INCONVENIENTES DE LOS SGBD

Complejidad: Los SGBD son conjuntos de programas muy complejos con una gran funcionalidad
Tamaño: Los SGBD son programas complejos y muy extensos que requieren una gran cantidad de espacio en disco y de memoria para trabajar de forma eficiente.
Coste económico del SGBO: El coste de un SGBD varía dependiendo del entorno y de la funcionalidad que ofrece.
Costo del equipamiento adicional. Tanto el SGBD. como la propia base de datos. pueden hacer que sea necesario adquirir más espacio de almacenamiento
Costo de la conversión: En algunas ocasiones. el costo del SGBD y el costo del equipo informático que sea necesario adquirir para su buen funcionamiento
Prestaciones: Los SGBD están escritos para ser más generales y ser útiles en muchas aplicaciones, 1o que puede hacer que algunas de ellas no sean tan rápidas como en los sistemas de archivos
Vulnerable a los fallos: El hecho de que todo esté centralizado en el SGBD hace que el sistema sea más vulnerable ante los fallos que puedan producirse

ARQUITECTURA DE TRES NIVELES

La arquitectura de tres niveles es un método de gran aceptación para explicar el funcionamiento de los sistemas de bases de datos fue formalizado en 1975 Y mejorado en 1978
Los tres niveles de la arquitectura son: Interno, Conceptual y Externo.
1. El nivel interno: tiene un esquema interno, el cual describe la estructura de almacenamiento físico de la Base de Datos. El esquema interno utiliza un modelo físico de data y describe los detalles completos de almacenamiento de data y el acceso a los caminos de la BD.
2. El nivel conceptual. tiene un esquema conceptual el cual describe la estructura de todas las Bases de Datos para una comunidad de usuarios. El esquema conceptual es una descripción global de la BD que oculta los detalles de las estructuras de almacenamiento físico y se concentra en describir las entidades, los tipos de data, las relaciones y constantes.
3. El nivel externo: o nivel de vista incluye un número de esquemas externos o vistas de usuario. Cada esquema externo describe la vista de la BD de un grupo o de los usuarios de la BD. Cada vista típicamente describe la parte de la BD en la cual un grupo de usuarios en particular
esta interesado y oculta el resto de la BD para otros grupos de usuario.

MÓDULOS DE LOS DBMS

- Un módulo de administración de datos almacenados de alto nivel ( sto red data manager)
- El compilador DDL (DDL compiler) procesa las definiciones de esquema especificadas en el DDL y almacena la descripción de los esquemas en el catálogo del DBMS
- El procesador en tiempo real (runtime processor] de la BD maneja el acceso a la BD en tiempo real. este recibe las operaciones de obtención y actualización y las lleva a la BD para su ejecución
- El procesador de consultas (query prossesor] maneja las consultas de alto nivel que son ingresadas interactivamente.
- El precompilador (precompiler) extrae los comandos del DML de un programa de aplicación escrito en un lenguaje de programación host.
- Estos comandos son enviados al compilador DML para su compilación en código objeto para el acceso de la BD.

DISEÑO DE UNA BASE DE DATOS

El diseño de una base de datos es un proceso complejo que abarca decisiones en distintos niveles. La complejidad se controla mejor si se descompone el problema en subproblemas y se resuelve cada uno de éstos de manera independientemente, utilizando técnicas específicas. Así, el diseño de una base de datos se descompone en diseño conceptual, diseño lógico y diseño físico.



DISEÑO CONCEPTUAL

El diseño conceptual se refiere a la etapa donde se debe construir un esquema de la información a partir de los requerimientos y resultados de usuario, independientemente de cualquier consideración física, como aspectos de implementación, DBMS a utilizar, hardware disponible, entre otras. Al construir el esquema, los diseñadores descubren la semántica de los datos, encontrando entidades, atributos y relaciones. Elobjetivo es comprender:
La perspectiva que cada usuario tiene de los datos.
La naturaleza de los datos, independientemente de su representación física. El uso de los datos a través de las áreas de aplicación.

DISEÑO LÓGICO

El diseño lógico es el proceso de construir un esquema de la información, basándose en un modelo de base de datos específico independiente del DBMS y de cualquier otra consideración física. En otras palabras, se transforma el esquema conceptual en un esquema lógico que utilizará las estructuras de datos del modelo de base de datos en el que se basa el DBMS a utilizar, como puede ser el modelo relacional, el modelo de red, el modelo jerárquico o el modelo orientado a objetos.
El esquema lógico es una fuente de información para el diseño físico. Además, juega un papel importante durante la etapa de mantenimiento del sistema, ya que permite que los futuros cambios que se realicen sobre los programas de aplicación o sobre los datos, se representen correctamente en la base de datos

DISEÑO FÍSICO

El diseño físico es el proceso de producir la descripción de la implementación de la base de datos en memoria secundaria, donde las estructuras de almacenamiento y los métodos de acceso garanticen un acceso eficiente a los datos.
En general, el propósito del diseño físico es describir cómo se va a implementar físicamente el esquema lógico obtenido en la fase anterior. Por ejemplo, en el modelo relacional, esto consiste en:
Obtener un conjunto de relaciones (tablas) y las restricciones que se deben cumplir sobre ellas.
Determinar las estructuras de almacenamiento y los métodos de acceso que se van a utilizar para conseguir unas prestaciones óptimas.
Diseñar el modelo de seguridad del sistema.

BIBLIOGRAFÍA

Elmasri, R. Y Navathe, S. [1997] "Sistemas de Bases de Datos conceptos y fundamentos" http://www.bd.cesma.usb.ve/orac1e9i/index.htm
[visitada el día 20/02/2005]
http,f /www.la.unm.edu/ ~ostic/ct20 l/outline.html
[visitada el día 22/02/2005]
http.r/csc.noctrl.edu/f/kwt/Géü/
[visitada el día 22/02/2005] http://www.profc.udec.c1/~gabriel/tutoriales/giswbJvol1/contents.htm [visitada el día 23/02/2005] http://philip.greenspun.com/panda/databases-choosing
[visitada el día 23/02/2005] http.f/www.monografias.com/trabajos11/basda/basda.shtml#d [visitada el día 23/02/2005] http://miporta1.uacj.mx/miscursos/c1aroline/work/work.php
[visitada el día 23/02/2005] http://maimm.1inst.ac.uk/kamp/uib/webprog/db/dbms.html
[visitada el día 23/02/2005]
http,f /wwwdi.ujaen.es/ +mcdiaz/docencia/curú-l _ 05 /fi! [visitada el día 23/02/2005] http://usuarios.1ycos.es/cursosgbd/UD4.htm.
[visitada el día 25/02/2005]
http,f /www3.uji.es/~mmarques/f4 7/apun/apun.html.
[visitada el día 25/02/2005] http://www.profc.udec.c1/~gabriel/tutoriales/giswbJvol1/contents.htm. [visitada el día 25/02/2005]