sábado, 20 de noviembre de 2010

INTERFACES DE PRPGRAMACION

Las interfaces de programación denotan el proceso de acceso y manipulación de los datos a una base de datos, partiendo de la aplicación. El siguiente esquema muestra 4 niveles o interfaces:

 Interfaces de Programación para el acceso a datos.

La primera interfaz corresponde a la de Aplicación, la cual abarca y/o corresponde a cada uno de los programas clientes.
La Interfaz de Objetos de Acceso a Datos, se encuentra como punto medio entre las aplicaciones y las API's que llegan a ser necesarias para el acceso a las bases de datos. Entre las tecnologías que pertenecen a la Interfaz de Objetos de Acceso de Datos encontramos: DAO (Data Access Objects), ADO (ActiveX Data Objects), RDO (Remote Data Object), RDS (Remote Data Service) y MIDAS (Middle-tier Distributed Application Service). Su función es encapsular los componentes que se encuentran en la interfaz que corresponde a la de API's, con la finalidad de reducir el desarrollo de la aplicación y los costos de mantenimiento y deben situarse en todos los equipos que ejecuten la aplicación, ya que se encuentran casi de manera conjunta con la aplicación.
Por su parte, la Interfaz de Programación de Aplicaciones (Application Programming Interface, API), se encarga de mantener el diálogo con la base de datos, para poder llevar a cabo el acceso y manipulación de los datos. Algunos de los componentes que forman parte de esta interfaz son los siguientes:
  •  OLE DB, ODBC (Open Database Connectivity), JDBC (Java Data Base Connectivity), ISAPI (Internet Server Application Programming Interface) y CGI (Common Gateway Interface).

La función que tienen las API's, es la de ser una interfaz entre las aplicaciones y las bases de datos, llevando ésta tarea unas veces a través de los clientes y otros a través del servidor de base de datos. Esto quiere decir, que puede darse el caso de que el cliente conste de las tres primeras interfaces o niveles, o que se encuentren las dos últimas en el servidor. La interfaz correspondiente a la base de datos, es donde se encontrará el servidor y toda la información depositada en él.
Para poder accesar y manipular la información de una base de datos, es necesario llevar a cabo la instalación de ciertos API's o controladores, que son indispensables para efectuar la conectividad de los datos externos, y vincularlos a la aplicación para su correcta y adecuada utilización.


  • Las API's que se describen a continuación, son un claro ejemplo del proceso correspondiente a la conectividad de datos.
  •  ODBC (Open Data Base Connectivity): Esta tecnología proporciona una interfaz común para tener acceso a bases de datos SQL heterogéneas. ODBC está basado en SQL (Structured Query Language) como un estándar para tener acceso a datos. ODBC permite la conexión fácil desde varios lenguajes de programación y se utiliza mucho en el entorno Windows. Sobre ODBD Microsoft ha construido sus extensiones OLE DB y ADO. 



  • Los OCBD se pueden clasificar en 3 categorías:
  •  Los ODBC's que permitan la realización de consultas y actualizaciones.
  •  Los ODBC's que mediante ellos se pueda llegar a la creación de tablas en la base de datos.
  • Los ODBC's propios de los DBMS, los cuales se pueden llegar a manipular ciertas herramientas de administración.
.El acceso a los datos se puede realizar mediante distintas tecnologías Web, entre las que destacan:
  • CGI (Common Gateway Interface): es una de las soluciones que se está utilizando más para la creación de interfaces Web/DBMS. Entre las ventajas de la programación CGI, destaca la sencillez, ya que es muy fácil de entender, además de ser un lenguaje de programación independiente, ya que los escritos CGI pueden elaborarse en varios lenguajes. También es un estándar para usarse en todos los servidores Web, y funcionar bajo una arquitectura independiente, ya que ha sido creado para trabajar con cualquier arquitectura de servidor Web. Como la aplicación CGI se encuentra funcionando de forma independiente, no pone en peligro al servidor, en cuanto al cumplimiento de todas las tareas que éste se encuentre realizando, o al acceso del estado interno del mismo. Pero el CGI presenta cierta desventaja en su eficiencia, debido al que el servidor Web tiene que cargar el programa CGI y conectar y desconectar con la base de datos cada vez que se recibe una requisición. Además, no existe un registro del estado del servidor, sino que todo hay que hacerlo manualmente.
  •  ISAPI (Internet Server Application Programming Interface): Es la interfaz propuesta por Microsoft como una alternativa más rápida que el CGI, y está incluida en el Servidor Microsoft Internet Information (IIS). Así como los escritos CGI, los programas escritos usando ISAPI habilitan un usuario remoto para ejecutar un programa, busca información dentro de una base de datos, o intercambia información como otro software localizado en el servidor. 
  • NSPAI:es la API propuesta por Netscape para extender la funcionalidad de sus servidores.
  •  DBI (PERL): Perl es uno de los lenguajes más utilizados para programación en la Web y proporciona su propia interfaz de acceso a datos, llamada DBI (DataBase Interface). Es especialmente utilizado bajo plataformas Linux/Unix, solucionando las complejidades de ODBC en estos sistemas. DBI actúa como una abstracción para un conjunto de módulos DBD (DataBase Driver). Cada módulo DBD actúa como manejador de un sistema gestor de base de datos distinto. Existen módulos para prácticamente cualquier SGBD (OracleInformixMySQL, etc.) y puentes hacia otras tecnologías como ADO, JDBC ...


  • FUENTES: http://es.wikipedia.org/wiki/Interfaz_de_programaci%C3%B3n_de_aplicaciones
  •                   http://www.hipertexto.info/documentos/b_datos.htm

Compañeros aqui les dejo otro tema mas visto en clase e investigue algo de informacion mas detallada para ustedes.

Un cordial Saludo :)

1 comentario: