Que es un paradigmaQue es un paradigma
El Paradigma de programación es una forma deEl Paradigma de programación es una for...
Programación orientadaProgramación orientada
a eventosa eventos
 La programación por eventos, consiste en que, en lugar d...
Métodos para la P.O.EMétodos para la P.O.E
 LosLos métodosmétodos son funciones que también son llamadasson funciones que...
Administración deAdministración de
concurrenciaconcurrencia
 Los eventos son procesados en orden, obteniéndolos de laLos ...
APIAPI
 Una API (Application Programming Interface o Interfase deUna API (Application Programming Interface o Interfase d...
APIAPI
 Una API detalla solamente la forma de llamar a cada funciónUna API detalla solamente la forma de llamar a cada fu...
Detalles técnicosDetalles técnicos
 Un API es un conjunto de reglas para escribirUn API es un conjunto de reglas para esc...
Detalles técnicosDetalles técnicos
Las API ofrecen distintos tipos de diálogos con el proveedor paraLas API ofrecen distin...
Detalles técnicosDetalles técnicos
 Una API puede combinar recuperación de errores, traducciónUna API puede combinar recu...
Detalles técnicosDetalles técnicos
 La API toma la información y hace que todo el trabajoLa API toma la información y hac...
Tipos de APIsTipos de APIs
 Remote Procedure Calls (RPCs) o Llamadas a Procedimientos RemotosRemote Procedure Calls (RPCs...
APIsAPIs
 Se pueden desarrollarse para cualquier plataforma y sistemaSe pueden desarrollarse para cualquier plataforma y ...
CaracterísticasCaracterísticas
 Una interfaz de programación representa una interfaz deUna interfaz de programación repre...
EjemploEjemplo
 se puede ver la tarea de escribir "se puede ver la tarea de escribir "Hola MundoHola Mundo" sobre la pant...
EjemploEjemplo
 Como se puede ver, la primera opción requiere másComo se puede ver, la primera opción requiere más
pasos,...
APIAPI
 Una API ofrece al programador un cierto nivel de abstracción queUna API ofrece al programador un cierto nivel de ...
Próxima SlideShare
Cargando en…5
×

Que es un paradigma y api

616 visualizaciones

Publicado el

Publicado en: Empresariales, Tecnología
0 comentarios
0 recomendaciones
Estadísticas
Notas
  • Sé el primero en comentar

  • Sé el primero en recomendar esto

Sin descargas
Visualizaciones
Visualizaciones totales
616
En SlideShare
0
De insertados
0
Número de insertados
9
Acciones
Compartido
0
Descargas
13
Comentarios
0
Recomendaciones
0
Insertados 0
No insertados

No hay notas en la diapositiva.

Que es un paradigma y api

  1. 1. Que es un paradigmaQue es un paradigma El Paradigma de programación es una forma deEl Paradigma de programación es una forma de representar y manipular el conocimiento. Representanrepresentar y manipular el conocimiento. Representan un enfoque particular o filosofía para la construcciónun enfoque particular o filosofía para la construcción del software. Cada uno tiene ventajas y desventajas.del software. Cada uno tiene ventajas y desventajas. También hay situaciones donde un paradigma resultaTambién hay situaciones donde un paradigma resulta más apropiado que otro.más apropiado que otro.
  2. 2. Programación orientadaProgramación orientada a eventosa eventos  La programación por eventos, consiste en que, en lugar deLa programación por eventos, consiste en que, en lugar de que el usuario espere al programa, el programa espera alque el usuario espere al programa, el programa espera al usuario. Ahora el sistema espera la ocurrencia de eventos yusuario. Ahora el sistema espera la ocurrencia de eventos y actúa en consecuencia. Esto quiere decir, el programa debeactúa en consecuencia. Esto quiere decir, el programa debe saber cómo manejar los objetos disponibles y responder a lossaber cómo manejar los objetos disponibles y responder a los estímulos que vienen del usuario.estímulos que vienen del usuario. Un claro ejemplo de esto lo podemos ver en Word que alUn claro ejemplo de esto lo podemos ver en Word que al arrancar el programa este se queda en esperando lasarrancar el programa este se queda en esperando las ordenes o eventos realizados por el usuario, entre estosordenes o eventos realizados por el usuario, entre estos están para abrir y modificar un archivo, o bien comenzar aestán para abrir y modificar un archivo, o bien comenzar a crearlo desde el principio.crearlo desde el principio.
  3. 3. Métodos para la P.O.EMétodos para la P.O.E  LosLos métodosmétodos son funciones que también son llamadasson funciones que también son llamadas desde programa, pero a diferencia de los procedimientosdesde programa, pero a diferencia de los procedimientos vienen ya pre-programadas con el lenguaje. Los métodosvienen ya pre-programadas con el lenguaje. Los métodos realizan tareas típicas, previsibles y comunes para todasrealizan tareas típicas, previsibles y comunes para todas las aplicaciones.las aplicaciones.  En general solo pueden ser ejecutados en tiempos deEn general solo pueden ser ejecutados en tiempos de ejecución no en tiempo de diseño.ejecución no en tiempo de diseño.  Las aplicaciones se inician creando la pantalla principal eLas aplicaciones se inician creando la pantalla principal e iniciando la cola de eventos.iniciando la cola de eventos.
  4. 4. Administración deAdministración de concurrenciaconcurrencia  Los eventos son procesados en orden, obteniéndolos de laLos eventos son procesados en orden, obteniéndolos de la cola de eventos, y el proceso de cada evento implicacola de eventos, y el proceso de cada evento implica despacharlo al componente correcto.despacharlo al componente correcto.  No se controla el orden en que se producen los eventos, esNo se controla el orden en que se producen los eventos, es importante que responda con prontitud.importante que responda con prontitud.
  5. 5. APIAPI  Una API (Application Programming Interface o Interfase deUna API (Application Programming Interface o Interfase de Programación de Aplicaciones) es un conjunto de funcionesProgramación de Aplicaciones) es un conjunto de funciones que facilitan el intercambio de mensajes o datos entre dosque facilitan el intercambio de mensajes o datos entre dos aplicaciones. Es una forma de que dos aplicaciones queaplicaciones. Es una forma de que dos aplicaciones que trabajan al mismo tiempo.trabajan al mismo tiempo.  En Internet, una API permite que un sitio web brindeEn Internet, una API permite que un sitio web brinde determinado servicio a otro, a través dedeterminado servicio a otro, a través de llamadas allamadas a funciones documentadas y publicadasfunciones documentadas y publicadas , facilitando de, facilitando de esta manera el “mash-up” o mezcla de servicios.esta manera el “mash-up” o mezcla de servicios.  Por ejemplo, hoy es posible que desde un blog personal sePor ejemplo, hoy es posible que desde un blog personal se puedan publicar noticias del sitio de un famoso periódico,puedan publicar noticias del sitio de un famoso periódico, mezcladas con fotos que ya están alojadas en un sitio demezcladas con fotos que ya están alojadas en un sitio de fotografías, a través defotografías, a través de llamadas a la APIllamadas a la API de estos dosde estos dos servicios.servicios.
  6. 6. APIAPI  Una API detalla solamente la forma de llamar a cada funciónUna API detalla solamente la forma de llamar a cada función y lay la tarea que esta desempeña, sin importar cómo se lleva a cabotarea que esta desempeña, sin importar cómo se lleva a cabo dicha tarea.dicha tarea.
  7. 7. Detalles técnicosDetalles técnicos  Un API es un conjunto de reglas para escribirUn API es un conjunto de reglas para escribir funciones ofunciones o hacer llamados a subrutinas y acceder a otrashacer llamados a subrutinas y acceder a otras funciones en una librería.funciones en una librería. Los programas que usan estasLos programas que usan estas reglas o funciones en sus llamadas API pueden comunicarsereglas o funciones en sus llamadas API pueden comunicarse con cualquiera que use dicha API.con cualquiera que use dicha API.
  8. 8. Detalles técnicosDetalles técnicos Las API ofrecen distintos tipos de diálogos con el proveedor paraLas API ofrecen distintos tipos de diálogos con el proveedor para actualizar información en el mismo, como son:actualizar información en el mismo, como son:  Acceso a bases de datosAcceso a bases de datos  Comunicación cliente/servidorComunicación cliente/servidor  Comunicación peer-to-peerComunicación peer-to-peer  Comunicación en tiempo realComunicación en tiempo real  Event-driven (orientada a eventos)Event-driven (orientada a eventos)  Store and forwardStore and forward  Procesamiento de transaccionesProcesamiento de transacciones
  9. 9. Detalles técnicosDetalles técnicos  Una API puede combinar recuperación de errores, traducciónUna API puede combinar recuperación de errores, traducción de datos, seguridad, manejo de colas y nomenclatura con unade datos, seguridad, manejo de colas y nomenclatura con una interfase fácil de asimilar, que comprende acciones yinterfase fácil de asimilar, que comprende acciones y comandos simples pero con muchas opciones.comandos simples pero con muchas opciones.  Para invocar una API, el programa debe llamar a una funciónPara invocar una API, el programa debe llamar a una función tipo “send”, especificando parámetros para el nombre detipo “send”, especificando parámetros para el nombre de destino, indicadores de datos y opciones de confirmación.destino, indicadores de datos y opciones de confirmación.
  10. 10. Detalles técnicosDetalles técnicos  La API toma la información y hace que todo el trabajoLa API toma la información y hace que todo el trabajo específico de comunicación sea transparente para laespecífico de comunicación sea transparente para la aplicación. Hay cuatro tipos de APIs que posibilitan elaplicación. Hay cuatro tipos de APIs que posibilitan el intercambio de datos entre diferentes aplicaciones deintercambio de datos entre diferentes aplicaciones de software en plataformas individuales o distribuidas:software en plataformas individuales o distribuidas:
  11. 11. Tipos de APIsTipos de APIs  Remote Procedure Calls (RPCs) o Llamadas a Procedimientos RemotosRemote Procedure Calls (RPCs) o Llamadas a Procedimientos Remotos Con las RPCs, los programas pueden comunicarse a través deCon las RPCs, los programas pueden comunicarse a través de procedimientos (o tareas) que actúan en buffers compartidos deprocedimientos (o tareas) que actúan en buffers compartidos de información.información.  Standard Query Language (SQL)Standard Query Language (SQL) Un lenguaje de acceso de datos sin procedimientos que permite elUn lenguaje de acceso de datos sin procedimientos que permite el intercambio de datos entre aplicaciones, accediendo a bases de datosintercambio de datos entre aplicaciones, accediendo a bases de datos comunes.comunes.  Transferencia de archivosTransferencia de archivos Habilita el intercambio de datos enviando archivos formateados entre aplicaciones.Habilita el intercambio de datos enviando archivos formateados entre aplicaciones.  Envío de mensajesEnvío de mensajes Provee el intercambio de datos por comunicaciones de interprogramaciónProvee el intercambio de datos por comunicaciones de interprogramación directa, a través de pequeños mensajes formateados entre aplicacionesdirecta, a través de pequeños mensajes formateados entre aplicaciones emparejadas.emparejadas.
  12. 12. APIsAPIs  Se pueden desarrollarse para cualquier plataforma y sistemaSe pueden desarrollarse para cualquier plataforma y sistema operativo. También desde hace unos años se vienenoperativo. También desde hace unos años se vienen desarrollando como forma dedesarrollando como forma de acceder a servicios webacceder a servicios web .. En este sentido, las API más conocidas son las de:En este sentido, las API más conocidas son las de:  UnaUna interfaz de programación de aplicacionesinterfaz de programación de aplicaciones oo APIAPI (del(del inglésinglés application programming interface) es el conjuntoapplication programming interface) es el conjunto dede funciones y procedimientosfunciones y procedimientos (o(o métodosmétodos, en la, en la programación orientada a objetosprogramación orientada a objetos) que ofrece cierta) que ofrece cierta bibliotecabiblioteca para ser utilizado por otro software como una capa depara ser utilizado por otro software como una capa de abstracción. Usados generalmente en las bibliotecas.abstracción. Usados generalmente en las bibliotecas.
  13. 13. CaracterísticasCaracterísticas  Una interfaz de programación representa una interfaz deUna interfaz de programación representa una interfaz de comunicación entre componentes decomunicación entre componentes de softwaresoftware. Se trata del. Se trata del conjunto de llamadas a ciertas bibliotecas que ofrecen accesoconjunto de llamadas a ciertas bibliotecas que ofrecen acceso a ciertos servicios desde los procesos y representa una ciertos servicios desde los procesos y representa un método para conseguirmétodo para conseguir abstracciónabstracción en laen la programaciónprogramación,, generalmente entre los niveles o capas inferiores y losgeneralmente entre los niveles o capas inferiores y los superiores del software. Uno de los principales propósitos desuperiores del software. Uno de los principales propósitos de una API consiste en proporcionar un conjunto deuna API consiste en proporcionar un conjunto de funcionesfunciones dede uso general, por ejemplo, para dibujaruso general, por ejemplo, para dibujar ventanasventanas oo iconosiconos enen lala pantallapantalla. De esta forma, los. De esta forma, los programadoresprogramadores se beneficianse benefician de las ventajas de la API haciendo uso de su funcionalidad,de las ventajas de la API haciendo uso de su funcionalidad, evitándose el trabajo de programar todo desde el principio.evitándose el trabajo de programar todo desde el principio.
  14. 14. EjemploEjemplo  se puede ver la tarea de escribir "se puede ver la tarea de escribir "Hola MundoHola Mundo" sobre la pantalla en diferentes niveles de" sobre la pantalla en diferentes niveles de abstracciónabstracción::  Haciendo todo el trabajo desde el principio:Haciendo todo el trabajo desde el principio: – Traza, sobreTraza, sobre papelpapel milimetrado, la forma de las letras (y espacio) "H,o, l, a,M,u, n,milimetrado, la forma de las letras (y espacio) "H,o, l, a,M,u, n, d, o".d, o". – Crea unaCrea una matrizmatriz dede cuadradoscuadrados negros y blancos que se asemeje a la sucesión denegros y blancos que se asemeje a la sucesión de letras.letras. – Mediante instrucciones enMediante instrucciones en ensambladorensamblador, escribe la información de la matriz en la, escribe la información de la matriz en la memoria intermediamemoria intermedia ("buffer") de pantalla.("buffer") de pantalla. – Mediante la instrucción adecuada, haz que laMediante la instrucción adecuada, haz que la tarjeta gráficatarjeta gráfica realice elrealice el volcadovolcado dede esa información sobre la pantalla.esa información sobre la pantalla.  Por medio de unPor medio de un sistema operativosistema operativo para hacer parte del trabajo:para hacer parte del trabajo: – Carga unaCarga una fuentefuente tipográfica proporcionada por el sistema operativo.tipográfica proporcionada por el sistema operativo. – Haz que el sistema operativo borre la pantalla.Haz que el sistema operativo borre la pantalla. – Haz que el sistema operativo dibuje el texto "Hola Mundo" usando la fuenteHaz que el sistema operativo dibuje el texto "Hola Mundo" usando la fuente cargada.cargada.  Usando unaUsando una aplicaciónaplicación (que a su vez usa el sistema operativo) para realizar la mayor(que a su vez usa el sistema operativo) para realizar la mayor parte del trabajo:parte del trabajo:  Escribe un documentoEscribe un documento HTMLHTML con las palabras "Hola Mundo" para que uncon las palabras "Hola Mundo" para que un navegador Webnavegador Web comocomo MozillaMozilla,, FirefoxFirefox, Opera o Internet Explorer pueda representarlo en, Opera o Internet Explorer pueda representarlo en el monitor.el monitor.
  15. 15. EjemploEjemplo  Como se puede ver, la primera opción requiere másComo se puede ver, la primera opción requiere más pasos, cada uno de los cuales es mucho más complicado quepasos, cada uno de los cuales es mucho más complicado que los pasos de las opciones siguientes. Además, no resultalos pasos de las opciones siguientes. Además, no resulta nada práctico usar el primer planteamiento para representarnada práctico usar el primer planteamiento para representar una gran cantidad de información, como un artículouna gran cantidad de información, como un artículo enciclopédico sobre la pantalla, mientras que el segundoenciclopédico sobre la pantalla, mientras que el segundo enfoque simplifica la tarea eliminando un paso y haciendo elenfoque simplifica la tarea eliminando un paso y haciendo el resto más sencillos y la tercera forma simplemente requiereresto más sencillos y la tercera forma simplemente requiere escribir "Hola Mundo". Sin embargo, las APIs de alto nivelescribir "Hola Mundo". Sin embargo, las APIs de alto nivel generalmente pierden flexibilidad; por ejemplo, resulta muchogeneralmente pierden flexibilidad; por ejemplo, resulta mucho más difícil en un navegador web hacer girar texto alrededormás difícil en un navegador web hacer girar texto alrededor de un punto con un contorno parpadeante que programarlo ade un punto con un contorno parpadeante que programarlo a bajo nivel. Al elegir usar una API se debe llegar a un ciertobajo nivel. Al elegir usar una API se debe llegar a un cierto equilibrio entre su potencia, simplicidad y pérdida deequilibrio entre su potencia, simplicidad y pérdida de flexibilidad.flexibilidad.
  16. 16. APIAPI  Una API ofrece al programador un cierto nivel de abstracción queUna API ofrece al programador un cierto nivel de abstracción que enmascara la complejidad de acceso a un sistema o aplicación,enmascara la complejidad de acceso a un sistema o aplicación, proponiéndole un conjunto de funciones de las cuales sólo seproponiéndole un conjunto de funciones de las cuales sólo se conocen los parámetros y los valores devueltos. Asimismo, porconocen los parámetros y los valores devueltos. Asimismo, por analogía con un automóvil, el conductor no necesita conocer laanalogía con un automóvil, el conductor no necesita conocer la mecánica del motor para conducir el automóvil. El conductor sólomecánica del motor para conducir el automóvil. El conductor sólo tiene acceso a la interfaz compuesta por el volante, los pedalestiene acceso a la interfaz compuesta por el volante, los pedales (acelerador, embrague, freno), los controles (indicadores, luces(acelerador, embrague, freno), los controles (indicadores, luces delanteras, caja de cambios), interruptores (luces de emergencia,delanteras, caja de cambios), interruptores (luces de emergencia, luces antiniebla, bocina, etc.). En cierta forma, es similar a la interfazluces antiniebla, bocina, etc.). En cierta forma, es similar a la interfaz presentada al usuario.presentada al usuario.  Gracias a las API, un desarrollador no necesita preocuparse deGracias a las API, un desarrollador no necesita preocuparse de cómo funciona una aplicación remota ni de la forma en que lascómo funciona una aplicación remota ni de la forma en que las funciones fueron implementadas, para poder utilizarla en unfunciones fueron implementadas, para poder utilizarla en un programa. Una API puede estar disponible para un lenguajeprograma. Una API puede estar disponible para un lenguaje específico o para diversos lenguajes de programaciónespecífico o para diversos lenguajes de programación

×