lunes, 22 de noviembre de 2010

Peer-to-peer (P2P)






Peer-to-peer

Es una red de computadoras en la que todos o algunos aspectos funcionan sin clientes ni servidores fijos, sino una serie de nodos que se comportan como iguales entre sí. Es decir, actúan simultáneamente como clientes y servidores respecto a los demás nodos de la red. Las redes P2P permiten el intercambio directo de información, en cualquier formato, entre los ordenadores interconectados.

Las redes peer-to-peer aprovechan, administran y optimizan el uso del ancho de banda de los demás usuarios de la red por medio de la conectividad entre los mismos, y obtienen así más rendimiento en las conexiones y transferencias que con algunos métodos centralizados convencionales, donde una cantidad relativamente pequeña de servidores provee el total del ancho de banda y recursos compartidos para un servicio o aplicación.

La eficacia de los nodos en el enlace y transmisión de datos puede variar según su configuración local (cortafuegos, NAT, ruteadores, etc.), velocidad de proceso, disponibilidad de ancho de banda de su conexión a la red y capacidad de almacenamiento en disco.

Desde el surgimiento de Napster en 1999 las redes P2P están en boca de todos. Uno de los motivos es que es el medio por el cual se comparten y bajan archivos protegidos por derechos de propiedad intelectual, principalmente canciones.

Existen muchos servicios más que usan (o usaron si ya no existen) este tipo de redes: Ares Galaxy, Kazaa, eMule, BitTorrent.

Cómo funcionan las redes y cómo se organizan

A grandes rasgos una red se compone de una serie de computadoras interconectadas. Esos equipos pueden cumplir dos funciones: ser servidores y ser clientes. Los clientes se utilizan para acceder a la información contenida en el servidor. Los servidores por su parte proveen diferentes servicios a los clientes.

Un ejemplo típico de red, es un sitio web. En ese caso tenemos muchos clientes (los usuarios) que acceden a un servidor (la página web) para solicitar información (el contenido del sitio).

Las redes pueden organizarse de diferentes maneras según los propósitos para los que sean diseñados:



Un ejemplo de red centralizada es un sitio web. Un ejemplo de red descentralizada es Internet, donde existen muchos clientes y muchos servidores que se interconectan entre sí. Las redes Peer-2-Peer (P2P) son del tipo distribuida.

Ejemplo de la conección de las redes P2P.


Las ventaja es que el ancho de banda se distribuye entre todos. Si muchos toman el contenido de una pequeña minoría, ésta debería tener un ancho de banda suficiente para abastecer a todos, lo cual implica para ella un costo mayor. A medida que crece el número de usuarios que comparten información, los pedidos de ese contenido se pueden distirbuir entre varios usuarios, con lo que cada uno necesita menos ancho de banda para ofrecer la misma velocidad de bajada.

Existen muchos clientes para las redes P2P mi favorito es Aresgalaxy pero no esta disponible para ubuntu asi que aqui les dejo unas muy buenas alternativas para clientes en ubuntu ya que son en mi opinión los mejores clientes P2P que hay para ubuntu.

Frostwire

$ sudo apt-get install frostwire

aMule

$ sudo aptitude -y install amule

Y si aun prefieren Ares aquí les dejo un manual de como instalar Ares en Ubuntu.


Fuentes:


Saludos...

Errores HTTP


Errores HTTP

A quien no le a aparecido los tipicos errores en Internet.


Ve aqui aque se deben este tipo de errores.

Errores del cliente

Estos son típicamente los códigos de respuesta de error más comúnmente encontrados.
400 Solicitud incorrecta
La solicitud contiene sintaxis errónea y no debería repetirse.
401 No autorizado
Similar al 403 Forbidden, pero específicamente para su uso cuando la autentificación es posible pero ha fallado o aún no ha sido provista. Vea autentificación HTTP básica y Digest access authentication.
402 Pago requerido
La intención original era que este código pudiese ser usado como parte de alguna forma o esquema de Dinero electrónico o micropagos, pero eso no sucedió, y este código nunca se utilizó.
403 Prohibido
La solicitud fue legal, pero el servidor se rehúsa a responderla. En contraste a una respuesta 401 No autorizado, la autentificación no haría la diferencia.
404 No encontrado
Recurso no encontrado. Se utiliza cuando el servidor web no encuentra la página o recurso solicitado.
405 Método no permitido
Una petición fue hecha a una URI utilizando un método de solicitud no soportado por dicha URI; por ejemplo, cuando se utiliza GET en una forma que requiere que los datos sean presentados vía POST, o utilizando PUT en un recurso de sólo lectura.
406 No aceptable
407 Autenticación Proxy requerida
408 Tiempo de espera agotado
El cliente falló al continuar la petición - excepto durante la ejecución de videos Adobe Flash cuando solo significa que el usuario cerró la ventana de video o se movió a otro. ref
409 Conflicto
410 Ya no disponible
Indica que el recurso solicitado ya no está disponible y no lo estará de nuevo. Este código debería ser utilizado cuando un recurso haya sido quitado intencionalmente; sin embargo, en la práctica, un código 404 No encontrado es expedido en su lugar.
411 Requiere longitud
412 Falló precondición
413 Solicitud demasiado larga
414 URI demasiado larga
415 Tipo de medio no soportado
416 Rango solicitado no disponible
El cliente ha preguntado por una parte de un archivo, pero el servidor no puede proporcionar esa parte, por ejemplo, si el cliente preguntó por una parte de un archivo que está más allá de los límites del fin del archivo.
417 Falló expectativa
421 Hay muchas conexiones desde esta dirección de internet
422 Entidad no procesable (WebDAV - RFC 4918)
La solicitud está bien formada pero fue imposible seguirla debido a errores semánticos.
423 Bloqueado (WebDAV - RFC 4918)
El recurso al que se está teniendo acceso está bloqueado.
424 Falló dependencia (WebDAV) (RFC 4918)
La solicitud falló debido a una falla en la solicitud previa.
425 Colección sin ordenar
Definido en los drafts de WebDav Advanced Collections, pero no está presente en "Web Distributed Authoring and Versioning (WebDAV) Ordered Collections Protocol" (RFC 3648).
426 Actualización requerida (RFC 2817)
El cliente debería cambiarse a TLS/1.0.
449 Reintente con
Una extensión de Microsoft: La petición debería ser reintentada después de hacer la acción apropiada.

Errores de servidor

500 Error interno
Es un código comúnmente emitido por aplicaciones empotradas en servidores web, mismas que generan contenido dinámicamente, por ejemplo aplicaciones montadas en IIS o Tomcat, cuando se encuentran con situaciones de error ajenas a la naturaleza del servidor web.
501 No implementado
502 Pasarela incorrecta
503 Servicio no disponible
504 Tiempo de espera de la pasarela agotado
505 Versión de HTTP no soportada
506 Variante también negocia (RFC 2295)
507 Almacenamiento insuficiente (WebDAV - RFC 4918)
509 Límite de ancho de banda excedido
Este código de estatus, mientras que es utilizado por muchos servidores, no es oficial.
510 No extendido (RFC 2774)

Fuente

http://es.wikipedia.org/wiki/Anexo:C%C3%B3digos_de_estado_HTTP

Saludos...

MySQL



MySQL

MySQL es un sistema de gestión de base de datos relacional, multihilo y multiusuario con más de seis millones de instalaciones. MySQL AB —desde enero de 2008 una subsidiaria de Sun Microsystems y ésta a su vez de Oracle Corporation desde abril de 2009— desarrolla MySQL como software libre en un esquema de licenciamiento dual.

Por un lado se ofrece bajo la GNU GPL para cualquier uso compatible con esta licencia, pero para aquellas empresas que quieran incorporarlo en productos privativos deben comprar a la empresa una licencia específica que les permita este uso. Está desarrollado en su mayor parte en ANSI C.

Al contrario de proyectos como Apache, donde el software es desarrollado por una comunidad pública y el copyright del código está en poder del autor individual, MySQL es patrocinado por una empresa privada, que posee el copyright de la mayor parte del código.
Esto es lo que posibilita el esquema de licenciamiento anteriormente mencionado. Además de la venta de licencias privativas, la compañía ofrece soporte y servicios. Para sus operaciones contratan trabajadores alrededor del mundo que colaboran vía Internet. MySQL AB fue fundado por David Axmark, Allan Larsson y Michael Widenius.a


Existen varias APIs que permiten, a aplicaciones escritas en diversos lenguajes de programación, acceder a las bases de datos MySQL, incluyendo C, C++, C#, Pascal, Delphi (via dbExpress), Eiffel, Smalltalk, Java (con una implementación nativa del driver de Java), Lisp, Perl, PHP, Python, Ruby,Gambas, REALbasic (Mac y Linux), (x)Harbour (Eagle1), FreeBASIC, y Tcl; cada uno de estos utiliza una API específica. También existe una interfaz ODBC, llamado MyODBC que permite a cualquier lenguaje de programación que soporte ODBC comunicarse con las bases de datos MySQL. También se puede acceder desde el sistema SAP, lenguaje ABAP.
Fuente

http://es.wikipedia.org/wiki/MySQL

Saludoss...

Oracle



Oracle

Oracle es un sistema de gestión de base de datos relacional
(o RDBMS por el acrónimo en inglés de Relational Data Base Management System), desarrollado por Oracle Corporation.
Se considera a Oracle como uno de los sistemas de bases de datos más completos destacando:

soporte de transacciones,
estabilidad,
escalabilidad y
Soporte multiplataforma.

Su dominio en el mercado de servidores empresariales ha sido casi total hasta hace poco, recientemente sufre la competencia del Microsoft SQL Server de Microsoft y de la oferta de otros RDBMS con licencia libre como PostgreSQL, MySql o Firebird. Las últimas versiones de Oracle han sido certificadas para poder trabajar bajo GNU/Linux.

La siguiente imagen es de un diagrama de como funciona una base de datos en Oracle.

Fuente

http://es.wikipedia.org/wiki/Oracle

Saludos...

Multipurpose Internet Mail Extensions (MIME)



Multipurpose Internet Mail Extensions

Multipurpose Internet Mail Extensions o MIME es una serie de convenciones o especificaciones dirigidas al intercambio a través de Internet de todo tipo de archivos (texto, audio, vídeo, etc.) de forma transparente para el usuario. Una parte importante del MIME está dedicada a mejorar las posibilidades de transferencia de texto en distintos idiomas y alfabetos. En sentido general las extensiones de MIME van encaminadas a soportar:

Texto en conjuntos de caracteres distintos de US-ASCII;
adjuntos que no son de tipo texto;
cuerpos de mensajes con múltiples partes (multi-part);
información de encabezados con conjuntos de caracteres distintos de ASCII.
Prácticamente todos los mensajes de correo electrónico escritos por personas en Internet y una proporción considerable de estos mensajes generados automáticamente son transmitidos en formato MIME a través de SMTP. Los mensajes de correo electrónico en Internet están tan cercanamente asociados con el SMTP y MIME que usualmente se les llama mensaje SMTP/MIME.



Por ejemplo

El API JavaMail sólo proporcionan servicios generales electrónico para la lectura y
el envío de correo. Estas API requieren que los proveedores de servicios para aplicar la
protocolos.

Los proveedores de servicios implementar protocolos específicos. Por ejemplo, Simple Mail
Transfer Protocol (SMTP) es un protocolo de transporte para el envío de correo electrónico. Mensaje
Protocolo de oficina de correos 3 (POP3) es el protocolo estándar para la recepción de correo electrónico.
Internet Message Access Protocol (IMAP) es un protocolo alternativo a
POP3.

Además de los proveedores de servicios, JavaMail requiere la JavaBeans
Activación Marco (JAF) para manejar el contenido de correo que no es texto sin formato.
Por ejemplo, esto incluye MIME (Multipurpose Internet Mail Extensions),
URL (Uniform Resource Locator) páginas y archivos adjuntos.

Los tipos de contenido definidos por el estándar MIME tienen gran importancia también fuera del contexto de los mensajes electrónicos. Ejemplo de esto son algunos protocolos de red tales como HTTP de la Web. HTTP requiere que los datos sean transmitidos en un contexto de mensajes tipo e-mail aunque los datos pueden no ser un e-mail propiamente dicho.
En la actualidad ningún programa de correo electrónico o navegador de Internet puede considerarse completo si no acepta MIME en sus diferentes facetas (texto y formatos de archivo).

Fuente

http://publib.boulder.ibm.com/infocenter/iseries/v5r4/index.jsp?topic=/rzamy/50/program/jmluse.htm
http://es.wikipedia.org/wiki/MIME

Saludos...

SQL






SQL

El lenguaje de consulta estructurado o SQL es un lenguaje declarativo de acceso a bases de datos relacionales que permite especificar diversos tipos de operaciones en éstas. Una de sus características es el manejo del álgebra y el cálculo relacional permitiendo efectuar consultas con el fin de recuperar -de una forma sencilla- información de interés de una base de datos, así como también hacer cambios sobre ella. Es un lenguaje informático de cuarta generación (4GL).

El SQL es un lenguaje de acceso a bases de datos que explota la flexibilidad y potencia de los sistemas relacionales permitiendo gran variedad de operaciones en éstos últimos.
Es un lenguaje declarativo de "alto nivel" o "de no procedimiento", que gracias a su fuerte base teórica y su orientación al manejo de conjuntos de registros, y no a registros individuales, permite una alta productividad en codificación y la orientación a objetos. De esta forma una sola sentencia puede equivaler a uno o más programas que se utilizarían en un lenguaje de bajo nivel orientado a registros.

En la siguiente imagen se puede ver la forma de encriptación de un server de SQL.


El orden de ejecución interno de una sentencia puede afectar gravemente a la eficiencia del SGBD, por lo que se hace necesario que éste lleve a cabo una optimización antes de su ejecución. Muchas veces, el uso de índices acelera una instrucción de consulta, pero ralentiza la actualización de los datos. Dependiendo del uso de la aplicación, se priorizará el acceso indexado o una rápida actualización de la información. La optimización difiere sensiblemente en cada motor de base de datos y depende de muchos factores.

Tutorial online de SQL


Fuente

http://es.wikipedia.org/wiki/SQL

Saludos...

Web 2.0



Web 2.0

El término Web 2.0 (2004–presente) está comunmente asociado con un fenómeno social, basado en la interacción que se logra a partir de diferentes aplicaciones en la web, que facilitan el compartir información, la interoperabilidad, el diseño centrado en el usuario o D.C.U. y la colaboración en la World Wide Web. Ejemplos de la Web 2.0 son las comunidades web, los servicios web, las aplicaciones Web, los servicios de red social, los servicios de alojamiento de videos, las wikis, blogs, mashups y folcsonomías. Un sitio Web 2.0 permite a sus usuarios interactuar con otros usuarios o cambiar contenido del sitio web, en contraste a sitios web no-interactivos donde los usuarios se limitan a la visualización pasiva de información que se les proporciona.
La Web 2.0 esta asociada estrechamente con (Tim O'Reilly), debido a la conferencia sobre la Web 2.0 de O'Reilly Media en 2004. Aunque el término sugiere una nueva versión de la World Wide Web, no se refiere a una actualización de las especificaciones técnicas de la web, sino más bien a cambios acumulativos en la forma en la que desarrolladores de software y usuarios finales utilizan la Web. El hecho de que la Web 2.0 es cualitativamente diferente de las tecnologías web anteriores ha sido cuestionado por el creador de la World Wide Web Tim Berners-Lee, quien calificó al término como "tan sólo una jerga"- precisamente porque tenía la intención de que la Web incorporase estos valores en el primer lugar.


Para compartir en la Web 2.0 se utilizan una serie de herramientas, entre las que se pueden destacar:
Blogs: La blogosfera es el conjunto de blogs que hay en Internet. Un blog es un espacio web personal en el que su autor (puede haber varios autores autorizados) puede escribir cronológicamente artículos, noticias...(con imágenes y enlaces), pero además es un espacio colaborativo donde los lectores también pueden escribir sus comentarios a cada uno de los artículos (entradas/post) que ha realizado el autor. Hay diversos servidores de weblog gratuitos como por ejemplo:
Blogger.
Wordpress.
Wikis: En hawaiano "wikiwiki " significa: rápido, informal. Una wiki es un espacio web corporativo, organizado mediante una estructura hipertextual de páginas (referenciadas en un menú lateral), donde varias personas autorizadas elaboran contenidos de manera asíncrona. Basta pulsar el botón "editar" para acceder a los contenidos y modificarlos. Suelen mantener un archivo histórico de las versiones anteriores y facilitan la realización de copias de seguridad de los contenidos. Hay diversos servidores de wiki gratuitos:
Wikia.
Wetpaint.
Wikipedia, es el ejemplo más conocido de wiki y de creación colaborativa del conocimiento.
Entornos para compartir recursos: Todos estos entornos nos permiten almacenar recursos en Internet, compartirlos y visualizarlos cuando nos convenga desde Internet. Constituyen una inmensa fuente de recursos y lugares donde publicar materiales para su difusión mundial.
Documentos: podemos subir nuestros documentos y compartirlos, embebiéndolos en un Blog o Wiki, enviándolos por correo o enlazándolos a facebook, twiter, etc.
Scribd Sencillo y con recursos muy interesantes.
Calameo
Issuu Con una presentación magnífica.
Vídeos: lugares donde compartimos nuestros vídeos.
Youtube
Universia.tv
MediaCampus (UNAM)
Presentaciones: existen lugares como Youtube pero para subir y compartir tus presentaciones.
Slideshare
Photopeach Más para presentaciones de fotos con música.
Fotos de la web 2.0
Flickr
Plataformas educativas:
Moodle
Webquest: Unidades didácticas interactivas y muy fáciles de crear.
Redes Sociales:
Facebook y Twiter: Redes sociales muy fáciles de usar en el que los usuarios participan, actualizan y comparten información.


Fuente

http://es.wikipedia.org/wiki/Web_2.0

Saludos...

Navegadores Web




Navegadores Web

Un navegador o navegador web (del inglés, web browser) es un programa que permite ver la información que contiene una página web (ya se encuentre ésta alojada en un servidor dentro de la World Wide Web o en un servidor local).
El navegador interpreta el código, HTML generalmente, en el que está escrita la página web y lo presenta en pantalla permitiendo al usuario interactuar con su contenido y navegar hacia otros lugares de la red mediante enlaces o hipervínculos.
La funcionalidad básica de un navegador web es permitir la visualización de documentos de texto, posiblemente con recursos multimedia incrustados. Los documentos pueden estar ubicados en la computadora en donde está el usuario, pero también pueden estar en cualquier otro dispositivo que esté conectado a la computadora del usuario o a través de Internet, y que tenga los recursos necesarios para la transmisión de los documentos (un software servidor web).
Tales documentos, comúnmente denominados páginas web, poseen hipervínculos que enlazan una porción de texto o una imagen a otro documento, normalmente relacionado con el texto o la imagen.
El seguimiento de enlaces de una página a otra, ubicada en cualquier computadora conectada a la Internet, se llama navegación, de donde se origina el nombre navegador (aplicado tanto para el programa como para la persona que lo utiliza, a la cual también se le llama cibernauta). Por otro lado, hojeador es una traducción literal del original en inglés, browser, aunque su uso es minoritario.

Funcionamiento

La comunicación entre el servidor web y el navegador se realiza mediante el protocolo HTTP, aunque la mayoría de los hojeadores soportan otros protocolos como FTP, Gopher, y HTTPS (una versión cifrada de HTTP basada en Secure Socket Layer o Capa de Conexión Segura (SSL)).
La función principal del navegador es descargar documentos HTML y mostrarlos en pantalla. En la actualidad, no solamente descargan este tipo de documentos sino que muestran con el documento sus imágenes, sonidos e incluso vídeos streaming en diferentes formatos y protocolos. Además, permiten almacenar la información en el disco o crear marcadores (bookmarks) de las páginas más visitadas.
Algunos de los navegadores web más populares se inclu
yen en lo que se denomina una Suite. Estas Suite disponen de varios programas integrados para leer noticias de Usenet y correo electrónico mediante los protocolos NNTP, IMAP y POP.
Los primeros navegadores web sólo soportaban una versión muy simple de HTML. El rápido desarrollo de los navegadores web propietarios condujo al desarrollo de dialectos no estándares de HTML y a problemas de interoperabilidad en la web. Los más modernos (como Google Chrome, Amaya, Mozilla, Netscape, Opera e Internet Explorer 8.0) soportan los estándares HTML y XHTML (comenzando con HTML 4.01, los cuales deberían visualizarse de la misma manera en todos ellos).
Los estándares web son publicados por el World Wide Web Consortium.

También les dejo una imagen con estadísticas de los navegadores web mas usados y sistemas operativos.


Fuente

http://es.wikipedia.org/wiki/Navegador_web

Saludos...

Base de datos



Base de datos

Una base de datos o banco de datos (en ocasiones abreviada B.D.D.) es un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemáticamente para su posterior uso. En este sentido, una biblioteca puede considerarse una base de datos compuesta en su mayoría por documentos y textos impresos en papel e indexados para su consulta. En la actualidad, y debido al desarrollo tecnológico de campos como la informática y la electrónica, la mayoría de las bases de datos están en formato digital (electrónico), que ofrece un amplio rango de soluciones al problema de almacenar datos.

Existen programas denominados sistemas gestores de bases de datos, abreviado SGBD, que permiten almacenar y posteriormente acceder a los datos de forma rápida y estructurada. Las propiedades de estos SGBD, así como su utilización y administración, se estudian dentro del ámbito de la informática.
Las aplicaciones más usuales son para la gestión de empresas e instituciones públicas. También son ampliamente utilizadas en entornos científicos con el objeto de almacenar la información experimental.

Aunque las bases de datos pueden contener muchos tipos de datos, algunos de ellos se encuentran protegidos por las leyes de varios países. Por ejemplo, en España los datos personales se encuentran protegidos por la Ley Orgánica de Protección de Datos de Carácter Personal (LOPD).


Bases de datos estáticas
Éstas son bases de datos de sólo lectura, utilizadas primordialmente para almacenar datos históricos que posteriormente se pueden utilizar para estudiar el comportamiento de un conjunto de datos a través del tiempo, realizar proyecciones y tomar decisiones.

Bases de datos dinámicas
Éstas son bases de datos donde la información almacenada se modifica con el tiempo, permitiendo operaciones como actualización, borrado y adición de datos, además de las operaciones fundamentales de consulta. Un ejemplo de esto puede ser la base de datos utilizada en un sistema de información de una tienda de abarrotes, una farmacia, un videoclub.

Base de datos de red

Éste es un modelo ligeramente distinto del jerárquico; su diferencia fundamental es la modificación del concepto de nodo: se permite que un mismo nodo tenga varios padres (posibilidad no permitida en el modelo jerárquico).
Fue una gran mejora con respecto al modelo jerárquico, ya que ofrecía una solución eficiente al problema de redundancia de datos; pero, aun así, la dificultad que significa administrar la información en una base de datos de red ha significado que sea un modelo utilizado en su mayoría por programadores más que por usuarios finales.

Bases de datos transaccionales

Son bases de datos cuyo único fin es el envío y recepción de datos a grandes velocidades, estas bases son muy poco comunes y están dirigidas por lo general al entorno de análisis de calidad, datos de producción e industrial, es importante entender que su fin único es recolectar y recuperar los datos a la mayor velocidad posible, por lo tanto la redundancia y duplicación de información no es un problema como con las demás bases de datos, por lo general para poderlas aprovechar al máximo permiten algún tipo de conectividad a bases de datos relacionales.

Bases de datos multidimensionales

Son bases de datos ideadas para desarrollar aplicaciones muy concretas, como creación de Cubos OLAP. Básicamente no se diferencian demasiado de las bases de datos relacionales (una tabla en una base de datos relacional podría serlo también en una base de datos multidimensional), la diferencia está más bien a nivel conceptual; en las bases de datos multidimensionales los campos o atributos de una tabla pueden ser de dos tipos, o bien representan dimensiones de la tabla, o bien representan métricas que se desean estudiar.

Bases de datos orientadas a objetos

Este modelo, bastante reciente, y propio de los modelos informáticos orientados a objetos, trata de almacenar en la base de datos los objetos completos (estado y comportamiento).
Una base de datos orientada a objetos es una base de datos que incorpora todos los conceptos importantes del paradigma de objetos:
Encapsulación - Propiedad que permite ocultar la información al resto de los objetos, impidiendo así accesos incorrectos o conflictos.
Herencia - Propiedad a través de la cual los objetos heredan comportamiento dentro de una jerarquía de clases.
Polimorfismo - Propiedad de una operación mediante la cual puede ser aplicada a distintos tipos de objetos.

En bases de datos orientadas a objetos, los usuarios pueden definir operaciones sobre los datos como parte de la definición de la base de datos. Una operación (llamada función) se especifica en dos partes. La interfaz (o signatura) de una operación incluye el nombre de la operación y los tipos de datos de sus argumentos (o parámetros). La implementación (o método) de la operación se especifica separadamente y puede modificarse sin afectar la interfaz. Los programas de aplicación de los usuarios pueden operar sobre los datos invocando a dichas operaciones a través de sus nombres y argumentos, sea cual sea la forma en la que se han implementado. Esto podría denominarse independencia entre programas y operaciones.
SQL:2003, es el estándar de SQL92 ampliado, soporta los conceptos orientados a objetos y mantiene la compatibilidad con SQL92.

Fuente

http://es.wikipedia.org/wiki/Base_de_datos

Saludos...

Javascript



Javascript

JavaScript es un lenguaje de scripting orientado a objetos, basado en prototipos, sin tipo y liviano, utilizado para acceder a objetos en aplicaciones. Principalmente, se utiliza integrado en un navegador web permitiendo el desarrollo de interfaces de usuario mejoradas y páginas web dinámicas. JavaScript es un dialecto de ECMAScript y se caracteriza por ser un lenguaje basado en prototipos, con entrada dinámica y con funciones de primera clase. JavaScript ha tenido influencia de múltiples lenguajes y se diseñó con una sintaxis similar al lenguaje de programación Java, aunque más fácil de utilizar para personas que no programan.
Todos los navegadores modernos interpretan el código JavaScript integrado dentro de las páginas web. Para interactuar con una página web se provee al lenguaje JavaScript de una implementación del Document Object Model (DOM).
El lenguaje fue inventado por Brendan Eich en la empresa Netscape Communications, la que desarrolló los primeros navegadores web comerciales. Apareció por primera vez en el producto de Netscape llamado Netscape Navigator 2.0.
Tradicionalmente, se venía utilizando en páginas web
HTML, para realizar operaciones y en el marco de la aplicación cliente, sin acceso a funciones del servidor. JavaScript se ejecuta en el agente de usuario, al mismo tiempo que las sentencias van descargándose junto con el código HTML.

La siguiente imagen es un alert mandando un dialogo en Javascript.

Aquí les dejo un tutorial


Fuente

http://es.wikipedia.org/wiki/JavaScript

Saludos...

PHP


PHP

Es un lenguaje de programación interpretado, diseñado originalmente para la creación de páginas web dinámicas. Es usado principalmente en interpretación del lado del servidor (server-side scripting) pero actualmente puede ser utilizado desde una interfaz de línea de comandos o en la creación de otros tipos de programas incluyendo aplicaciones con interfaz gráfica usando las bibliotecas Qt o GTK+.

Características.

Es un lenguaje multiplataforma.
Completamente orientado al desarrollo de aplicaciones web dinámicas con acceso a información almacenada en una Base de Datos.
El código fuente escrito en PHP es invisible al navegador y al cliente ya que es el servidor el que se encarga de ejecutar el código y enviar su resultado HTML al navegador. Esto hace que la programación en PHP sea segura y confiable.
Capacidad de conexión con la mayoría de los motores de base de datos que se utilizan en la actualidad, destaca su conectividad con MySQL y PostgreSQL.
Capacidad de expandir su potencial utilizando la enorme cantidad de módulos (llamados ext's o extensiones).
Posee una amplia documentación en su página oficial ([4]), entre la cual se destaca que todas las funciones del sistema están explicadas y ejemplificadas en un único archivo de ayuda.
Es libre, por lo que se presenta como una alternativa de fácil acceso para todos.
Permite aplicar técnicas de programación orientada a objetos.
Biblioteca nativa de funciones sumamente amplia e incluida.
No requiere definición de tipos de variables aunque sus variables se pueden evaluar también por el tipo que estén manejando en tiempo de ejecución.
Tiene manejo de excepciones (desde PHP5).
Si bien PHP no obliga a quien lo usa a seguir una determinada metodología a la hora de programar (muchos otros lenguajes tampoco lo hacen), aun estando dirigido a alguna en particular, el programador puede aplicar en su trabajo cualquier técnica de programación y/o desarrollo que le permita escribir código ordenado, estructurado y manejable. Un ejemplo de esto son los desarrollos que en PHP se han hecho del patrón de diseño Modelo Vista Controlador (o MVC), que permiten separar el tratamiento y acceso a los datos, la lógica de control y la interfaz de usuario en tres componentes independientes (ver más abajo Frameworks en PHP).



Tutorial online


Fuentes

http://es.wikipedia.org/wiki/PHP

Saludos...

Búsqueda en Internet


Búsqueda en Internet

Un motor de búsqueda es un sistema informático que busca archivos almacenados en servidores web gracias a su spider
(o Web crawler). Un ejemplo son los buscadores de Internet (algunos buscan sólo en la Web pero otros buscan además en noticias, servicios como Gopher, FTP, etc.) cuando se pide información sobre algún tema. Las búsquedas se hacen con palabras clave o con árboles jerárquicos por temas; el resultado de la búsqueda es un listado de direcciones Web en los que se mencionan temas relacionados con las palabras clave buscadas.
Como operan en forma autom
ática, los motores de búsqueda contienen generalmente más información que los directorios. Sin embargo, estos últimos también han de construirse a partir de búsquedas (no automatizadas) o bien a partir de avisos dados por los creadores de páginas (lo cual puede ser muy limitante). Los buenos directorios combinan ambos sistemas. Hoy en día Internet se ha convertido en una herramienta, para la búsqueda de información, rápida, para ello han surgido los buscadores que son un motor de búsqueda que nos facilita encontrar información rápida de cualquier tema de interés, en cualquier área de las ciencias, y de cualquier parte del mundo.

Araña web

Una araña web (o araña de la web) es un programa que inspecciona las páginas del World Wide Web de forma metódica y automatizada. Uno de los usos más frecuentes que se les da consiste en crear una copia de todas las páginas web
visitadas para su procesado posterior por un motor de búsqueda que indexa las páginas proporcionando un sistema de búsquedas rápido. Las arañas web suelen ser bots (el tipo más usado de éstos).
Las arañas web comienzan visitando una lista de URLs, identifica los hiperenlaces en dichas páginas y los añade a la lista de URLs a visitar de manera recurrente de acuerdo a determinado conjunto de reglas. La operación normal es que se le da al programa un grupo de direcciones iniciales, la araña descarga estas direcciones, analiza las páginas y busca enlaces a páginas nuevas. Luego descarga estas páginas nuevas, analiza sus enlaces, y así sucesivamente.

Entre las tareas más comunes de las arañas de la web tenemos:
Crear el índice de una máquina de búsqueda.
Analizar los enlaces de un sitio para buscar links rotos.
Recolectar información de un cierto tipo, como precios de productos para recopilar un catálogo.

Directorios

Una tecnología barata, ampliamente utilizada por gran cantidad de scripts en el mercado. No se requieren muchos recursos de informática. En cambio, se requiere más soporte humano y mantenimiento.
Los algoritmos son mucho más sencillos, presentando la información sobre los sitios registrados como una colección de directorios. No recorren los sitios web ni almacenan sus contenidos. Solo registran algunos de los datos de nuestra página, como el título y la descripción que se introduzcan al momento de registrar el sitio en el directorio.
Los resultados de la búsqueda, estarán determinados por la información que se haya suministrado al directorio cuando se registra el sitio. En cambio, a diferencia de los motores, son revisadas por operadores humanos, y clasificadas según categorías, de forma que es más fácil encontrar páginas del tema de nuestro interés.
Más que buscar información sobre contenidos de la página, los resultados serán presentados haciendo referencia a los contenidos y temática del sitio.
Su tecnología es muy barata y sencilla.
Ejemplos de directorios: Antiguos directorios, Open Directory Project, Yahoo!, Terra (antiguo Olé). Ahora, ambos utilizan tecnología de búsqueda jerárquica, y Yahoo! conserva su directorio. Buscar Portal, es un directorio, y la mayoría de motores hispanos son directorios

Como aparecer en los buscadores (Referente a Google).

Directriz de diseño y contenido:
Cree un sitio con una jerarquía y vínculos de texto claros. Se debe poder acceder a todas las páginas desde al menos un vínculo de texto estático.
Ofrezca a los usuarios un mapa del sitio con vínculos que apunten a las secciones importantes de su sitio. Si el mapa del sitio contiene más de 100 vínculos, puede dividirlo en varias páginas.
Cree un sitio útil con mucha información y escriba páginas que describan su contenido claramente y con exactitud.
Determine las palabras que los usuarios escribirían para encontrar sus páginas y asegúrese de que su sitio realmente las incluya.
Intente utilizar texto en lugar de imágenes para mostrar nombres, contenido o vínculos importantes. El rastreador de Google no reconoce texto incorporado dentro de las imágenes.
Asegúrese de que los códigos TITLE y ALT sean descriptivos y precisos.
Compruebe que n
o haya vínculos rotos o código HTML incorrecto.
Si decide utilizar páginas dinámicas, (p. ej., una URL que contenga un carácter '?'), tenga en cuenta que no todos los motores de búsqueda rastrean páginas dinámicas, además de páginas estáticas. Esto ayuda a mantener parámetros cortos y un número reducido de los mismos.
Mantenga los vínculos de una página dada en un número razonable (menos de 100).

Directriz técnica:
Utilice un navegador de texto como Lynx para examinar su sitio, ya que la mayoría de las arañas de los motores de búsqueda ven su sitio de la misma manera que lo haría Lynx. Si las funciones avanzadas como Javascript, cookies, ID de sesión, marcos, DHTML o Flash impiden la visualización de todo su sitio en un navegador de texto, es posible que las arañas de los motores de búsqueda tengan problemas para rastrear el mismo.
Permita que
los robots de búsqueda rastreen sus sitios sin ID de sesión o argumentos que hacen un seguimiento de su ruta a lo largo del sitio. Estas técnicas son de gran utilidad para el seguimiento del comportamiento de un usuario individual, pero el patrón de acceso de los robots es completamente distinto. El uso de estas técnicas puede llevar a una indexación incompleta de su sitio, ya que es posible que los robots no puedan eliminar las URL que tengan un aspecto distinto pero que en realidad apuntan a la misma página.
Asegúrese de que su servidor Web admite la cabecera HTTP "If-Modified-Since". Esta función permite que su servidor Web avise a Google si su contenido ha cambiado desde la última vez que rastreamos su sitio. La compatibilidad con esta función le ahorra ancho de banda y gastos generales.
Utilice el archivo robots.txt en su servidor Web. Este archivo comunica a los rastreadores qué directorios pueden o no rastrearse. Asegúrese de que el archivo está actualizado para su sitio de modo que no bloquee accidentalmente el rastreador Googlebot. Visite http://www.robotstxt.org/wc/faq.html (sólo disponible en inglés) para obtener respuestas a las preguntas más frecuentes sobre los robots y cómo controlarlos cuando visiten su sitio.
Si su compañía adquiere un sistema de administración de contenido, asegúrese de que éste pueda exportar el contenido de modo que las arañas de los motores de búsqueda puedan rastrear su sitio.

Fuentes

http://es.wikipedia.org/wiki/Motor_de_b%C3%BAsqueda
http://www.sitiosespana.com/notas/junio-2005/APARECER-GOOGLE.htm

Saludos...

domingo, 21 de noviembre de 2010

Cookie




Cookie

Es un fragmento de información que se almacena en el disco duro del visitante de una página web a través de su navegador, a petición del servidor de la página. Esta información puede ser luego recuperada por el servidor en posteriores visitas. En ocasiones también se le llama "huella". Las inventó Lou Montulli, un antiguo empleado de Netscape Communications.
Al ser el protocolo HTTP incapaz de mantener información por sí mismo, para que se pueda conservar información entre una página vista y otra (como login de usuario, preferencias de colores, etc), ésta debe ser almacenada, ya sea en la URL de la página, en el propio servidor, o en una cookie en el ordenador del visitante.

De esta forma, los usos más frecuentes de las cookies son:

Llevar el control de usuarios: cuando un usuario introduce su nombre de usuario y contraseña, se almacena una cookie para que no tenga que estar introduciéndolas para cada página del servidor. Sin embargo una cookie no identifica a una persona, sino a una combinación de computador-navegador-usuario.

Conseguir información sobre los hábitos de navegación del usuario, e intentos de spyware, por parte de agencias de publicidad y otros. Esto puede causar problemas de privacidad y es una de las razones por la que las cookies tienen sus detractores.

Originalmente, sólo podían ser almacenadas por petición de un CGI desde el servidor, pero Netscape dio a su lenguaje Javascript la capacidad de introducirlas directamente desde el cliente, sin necesidad de CGIs. En un principio, debido a errores del navegador, esto dio algunos problemas de seguridad. Las cookies pueden ser borradas, aceptadas o bloqueadas según desee, para esto sólo debe configurar convenientemente el navegador web.

Bueno como la cookie es un nombre / valor asociados a un sitio web, que se guardan en el ordenador del visitante. Una vez colocada la cookie siempre que accedamos a la página ésta podrá leer la cookie y personalizarlos la experiencia. Los sitios web sólo pueden acceder a sus propias y cookies y no a las que hayan guardarlo otros, por lo que es cómodo para guardar información de tipo personal.

Veamos como funciona una cookie en PHP.



1º un navegador va a una página que tiene un script en php en el que hay una llamada la función setCookie()

2º El navegador recibe la página solicitada, con el encabezamiento HTTP setcookie que contiene el nombre (por ejemplo: micookie) y el valor que tiene la cookie.

3º Al recibir este encabezamiento, el navegador crea y guarda el valor especificado como una cookie con el nombre mycookie

4º A partir de ahí todas las peticiones de páginas en ese Site contendrán en el encabezado un HTTP cookie que enviará al servidor la cookie como nombre=valor (micookie=valor)

5º Al recibir una página con una cookie PHP crea una variable con el nombre de la cookie $micookie y con su valor.

En otras palabras, la función setcookie() te permite establecer una variable que estará automáticamente presente en todas las páginas que solicite un navgador. Vamos a ver cómo funciona.

setCookie(nombre [,valor [, expira [, path [, dominio [, seguro ])
Esta función añade un encabezamiento http a la página por lo que hay que llamarla antes de que aparezca cualquier contenido. Si haces la llamada a la cookie después se producirá un mensaje de error.


El único parámetro obligatorio de las cookies es el nombre, que especifica el nombre de la cookie. Llamar a una cookie que sólo tenga el parámetro nombre de hecho borrará la cookie que haya guardada si es que hay una. El parámetro Valor te permite crear una nueva cookie o modificar el valor que haya guardado.

Por defecto las cookies siguen guardadas en el navegador (y por lo tanto se mandarán junto con las solicitudes de páginas al servidor) hasta que el usuario cierre el navegador. Para que la cookie persista una vez que el usuario cierre el navegador hay que establecer una fecha de expiración utilizando la función time()

La función time() devuelve el número de segundos desde el 1 de Enero de 1970. Supongamos que queremos crear una cookie que dure un año:

1.- Obtenemos el número de segundos transcurridos desde 1970.
2.- Calculamos cuánto es un año en segundos. 1 día = 80.400 segundos (60 segundos * 60 minutos * 24 horas)
3.- Añadimos el número de segundos desde el 1 de enero de 1970 al número de segundos que va a durar la cookie.

En la siguiente imagen se observa como son las peticiones de las cookies.


Fuentes

http://es.wikipedia.org/wiki/Cookie
http://www.wikilearning.com/curso_gratis/php_y_mysql_para_gentes_de_letras-cookies/10115-6

Gestalt





Gestalt

Gestalt es un término alemán, sin traducción directa al castellano, pero que aproximadamente significa "forma", "totalidad", "configuración". La forma o configuración de cualquier cosa está compuesta de una "figura" y un "fondo". Por ejemplo, en este momento para usted. que lee este texto, las letras constituyen la figura y los espacios en blanco forman el fondo; aunque esta situación puede invertirse y lo que es figura puede pasar a convertirse en fondo.

El fenómeno descrito, que se ubica en el plano de la percepción, también involucra a todos los aspectos de la experiencia. Es así como algunas situaciones que nos preocupan y se ubican en el momento actual en el status de figura, pueden convertirse en otros momentos, cuando el problema o la necesidad que la hizo surgir desaparecen, en situaciones poco significativas, pasando entonces al fondo. Esto ocurre especialmente cuando se logra "cerrar" o concluir una Gestalt; entonces ésta se retira de nuestra atención hacia el fondo, y de dicho fondo surge una nueva Gestalt motivada por alguna nueva necesidad. Este ciclo de abrir y cerrar Gestalts (o Gestalten, como se dice en alemán) es un proceso permanente, que se produce a lo largo de toda nuestra existencia.

Imágenes Gestalt




El Enfoque Gestáltico (EG) es un enfoque holístico; es decir, que percibe a los objetos, y en especial a los seres vivos, como totalidades. En Gestalt decimos que "el todo es más que la suma de las partes". Todo existe y adquiere un significado al interior de un contexto específico nada existe por sí solo, aislado.

El EG es esencialmente una forma de vivir la vida con los pies bien puestos en la tierra. No pretende encaminar al individuo por el camino de lo esotérico o de la iluminación. Es un modo de llegar a estar en este mundo en forma plena, libre y abierta; aceptando y responsabilizándonos por lo que somos, sin usar más recursos que apreciar lo obvio, lo que ES.

El EG es en sí mismo un estilo de vida; de allí que sea más adecuado denominarlo "enfoque", que es un término más amplio, en lugar de "terapia", que restringe sus posibilidades de aplicación a lo clínico.

Aquí les dejo un video con varias imágenes.


Fuente

http://www.psicologia-online.com/colaboradores/cvasquez/gestalt.shtml

Saludos...

Interacción Humano-Computadora




Interacción Humano-Computadora

La palabra Interacción, sencillamente, refiere a un sistema previo que puede organizarse de manera formal o informal y por ello, se menciona que la interacción, en dicho sistema, realiza procesos de intercambio en sentido amplio.

En el tema que ocupa, la Interacción, es un término que se refiere a una relación dada entre el ser humano o la persona y la máquina a través de una interface. Nuestra definición está configurada en la comprensión que lleva al ser humano a realizar una extensión de sus capacidades. Por la extensión de nuestras capacidades por medio de las máquinas, se entiende las ventajas que dan al ser humano para realizar otras tareas concomitantes, dejando las rutinarias o de tipo autómata a las máquinas. Además por extensión se comprende la posibilidad de realizar tareas que comprendas a las máquinas como interface para la comunicación directa o indirecta con otros seres humanos.

En esta relación de hombres o personas y máquinas, se comprende que las interaccciones en sí, se relacionan con los procesos internos automáticos del ser humano. Estos procesos internos son rutinas de procesamientos de la información,así las máquinas llevan en sí algoritmos que procuran mejorar el desempeño de la persona y aumentar su inteligencia, como asimismo sus niveles de conciencia, dado que las personas utilizan las máquinas para su uso personal.

Introducción

En la Interacción Humano-Computador (HCI: Human-Computer Interaction), el diseño de la Interfaz Gráfica de Usuario cumple un rol imperante en la mediación de las distintas relaciones cognitivas que establece el usuario cuando interactúa con cualquier tipo de dispositivo tecnológico. La comprensión e identificación de los modelos asociados al diseño y desarrollo de estas interfaces nos posibilitará un acercamiento a la lógica del usuario y a cómo facilitar la consecución de sus objetivos.

Las distintas teorías y modelos asociados al diseño de interfaces gráficas han llevado a confusiones acerca de qué sucede durante la interacción y cómo llevar a cabo este diseño orientado al usuario. Los actuales enfoques no dan cuenta de la realidad epistemológica que la conforma, pues se limitan a establecer una visión genérica de la interfaz desde su perspectiva estética, cuando en realidad corresponde más a la dimensión de la Comunicación Visual, como soporte de la articulación verbo-icónica de los distintos elementos gráficos que cumplen un objetivo completamente funcional.

En este trabajo se presenta un nuevo modelo o planteamiento teórico que se define como Comunicabilidad. Este constructo funciona de manera paralela y se relaciona sinérgicamente con la Usabilidad. Pero, mientras que la Usabilidad responde a los objetivos de construcción y modelado de la información desde una perspectiva de la interacción, la Comunicabilidad responde a la arquitectura de la información como base de los layout visuales que facilitarán el reconocimiento de dicha interacción.


Aqui les dejo una presentación de introducción Humano-Computadora.



Esto está principalmente relacionado con la comprensión de como la gente y los ordenadores pueden interactivamente realizar tareas, y como tales sistemas interactivos son diseñados." De esta manera decimos que la HMI, tiene como finalidad estudiar:
1.- El hardware, el software ambos en función de la interacción
2.- Como lo establecen Lewis y Reiman (1993): el diseño está en relación al usuario y no a la máquina (user-centered design)

3.- Los modelos mentales de los usuarios con relación al modelo del sistema

4.- Las tareas realizables por el sistema y su adaptación a las necesidades del usuario
5.- El impacto en las organizaciones.
Por ello, para analizar la interacción con los sistemas, tanto estructural, como funcionalmente hace falta:

1ro.- comprender los factores relacionados con los mecanismos psicológicos, ergonómicos, de las organizaciones y su modo de estructuración en relación a como se desarrollan tareas y se hace uso de las computadoras, de modo que con ello se infiere un método, para:

2do.- desarrollar herramientas y técnicas que colaboren con los diseñadores para conseguir que los sistemas computacionales sean los correctos para las necesidades que se desean rea-lizar, y de ese modo:3ro.- la interacción humano-computadora sea eficiente, efectiva, segura, tanto a nivel de la persona como del grupo implicado (Preece, 1994).

Modelo de la relación mediada por la interfaz, entre usuario y computador


No pretendemos lograr una definición unívoca de Interfaz Gráfica de Usuario, pero sí inferir que existe un acercamiento conceptual respecto de las distintas relaciones interactivas que se suceden en este encuentro comunicacional. Si especificamos más estas relaciones en el contexto HCI, claramente podemos establecer que existen comunicaciones bidireccionales entre el humano y el computador, ya que el dispositivo visual nos comunica el estado del sistema y su funcionalidad, y por su parte el humano responde a los distintos estímulos generados por la mediación comunicacional de la interfaz a partir de una preconcepción mental de los objetivos estratégicos de acción. Esta interacción humano-computador se produce sobre la base de un campo semiótico, donde los principios de la percepción son fundamentales para generar un estado de disposición positiva en la recepción y comunicación de la información del sistema.


Representación del modelo de Comunicabilidad en el proceso de desarrollo de una Interfaz Gráfica de Usuario

La comunicabilidad surge a partir de la ausencia de un concepto epistemológico que describa de forma integral los fenómenos teóricos que se suceden en el proceso de diseño de una interfaz gráfica de usuario. Las actuales definiciones sitúan el punto de encuentro humano-computador como una zona sin especificidad teórica, lo que deja la resolución de problemáticas de interacción mediadas por una interfaz a la libertad de las competencias del autor que las enfrenta en su desarrollo.

Los componentes visuales que participan en la comunicación con el usuario son parte de un proceso funcional que debe estar perfectamente concatenado y tratado de manera coherente para facilitar su interpretación, y conducir el estímulo en la percepción para provocar reacciones cognitivas positivas y efectivas.

Bueno aquí les dejo un video referente al tema


Fuentes

http://www.slideshare.net/Tzek/introduccin-a-la-interaccin-humano-computadora-presentation
http://www.nosolousabilidad.com/articulos/comunicabilidad.htm
http://interfacemindbraincomputer.wetpaint.com/page/2.A.1.-+Definicion+de+Interaccion+Humano+M%C3%A1quina+(Interaction-Interface)

Saludos...


Simple Object Access Protocol (SOAP)





Simple Object Access Protocol

Es un protocolo estándar que define cómo dos objetos en diferentes procesos pueden comunicarse por medio de intercambio de datos XML. Este protocolo deriva de un protocolo creado por David Winer en 1998, llamado XML-RPC. SOAP fue creado por Microsoft, IBM y otros y está actualmente bajo el auspicio de la W3C. Es uno de los protocolos utilizados en los servicios Web.

Que es SOAP

SOAP es un protocolo de comunicación.
SOAP es para comunicación entre aplicaciones.
SOAP es un formato para enviar mensajes.
SOAP esta diseñado para comunicarse por Internet.
SOAP es una plataforma independiente.
SOAP es basado en XML.
SOAP es simple y extensible.
SOAP permite estar alrededor de los Firewall.
SOAP sera desarrollado como un estándar por la W3C.

Por que SOAP

Es importante para el desarrollo de aplicaciones para permitir la comunicación entre los programas de Internet.

Las aplicaciones actuales se comunican mediante llamadas a procedimientos remotos (RPC) entre objetos como DCOM y CORBA, pero HTTP no fue diseñado para ello. RPC representa un problema de compatibilidad y de seguridad, firewalls y servidores proxy normalmente bloquear este tipo de tráfico.
Una mejor manera de comunicarse entre las aplicaciones es a través de HTTP, HTTP, porque es compatible con todos los navegadores de Internet y servidores. SOAP fue creado para lograr esto.

SOAP proporciona un modo de comunicación entre aplicaciones que se ejecutan en sistemas operativos diferentes, con diferentes tecnologías y lenguajes de programación.

Como funciona

SOAP utiliza principalmente la norma petición HTTP / modelo de respuesta.

El cliente se envuelve en una llamada al método SOAP / XML, que luego se envió a través de HTTP al servidor.

La solicitud XML se analiza para leer el nombre del método y parámetros que se pasan y delegado para su procesamiento. La respuesta XML va a ser enviado al cliente, que contiene el valor de retorno o de datos de error de la llamada al método. Por último, el cliente puede analizar el código XML de respuesta para hacer uso del valor de retorno.

El servidor utiliza un "oyente" para procesar las solicitudes SOAP.
El oyente es simplemente el código del servidor de la URL especificada para analizar la solicitud de XML, lo que hace la llamada al procedimiento, y envolviendo el resultado en XML para enviar como respuesta.


Pero HTTP no es el protocolo de transferencia único que soporta SOAP. En la versión 1.1 de SOAP, la especificación se ha ampliado para cubrir otros protocolos de transferencia como Simple Mail Transfer Protocol (SMTP), transferencia de archivos (FTP), o cualquier otro protocolo que se puede transferir texto.

Estos otros protocolos pueden utilizarse para realizar llamadas asincrónicas SOAP, es decir, la aplicación cliente puede invocar el servicio SOAP, pero no habría que esperar una respuesta del servidor.



Aquí les de un tutorial de SOAP


Fuentes


Saludos...

jueves, 18 de noviembre de 2010

Proyecto Final


Proyecto Final

Bueno yo decidí hacer una aplicación para facebook de un top 5 de canciones o artistas para compartirlo con tus amigos .

Bueno mi aplicación consiste en un pequeño formulario en HTML y la aplicación de facebook esta basada en iframe

Aquí les dejo una captura de pantalla de la aplicación.


Tuve problemas con el servidor por que no podia consualtar el documento donde se guardaba la lista de las canciones o grupos favoritos en el trascurso del dia de hoy tratare de arreglar eso con un servidor casero.

Espero que les aya gustado

Saludos...

martes, 16 de noviembre de 2010

Telnet



Telnet

Telnet (TELecommunication NETwork) es el nombre de un protocolo de red que sirve para acceder mediante una red a otra máquina para manejarla remotamente como si estuviéramos sentados delante de ella. También es el nombre del programa informático que implementa el cliente. Para que la conexión funcione, como en todos los servicios de Internet, la máquina a la que se acceda debe tener un programa especial que reciba y gestione las conexiones. El puerto que se utiliza generalmente es el 23.


Telnet sólo sirve para acceder en modo terminal, es decir, sin gráficos, pero fue una herramienta muy útil para arreglar fallos a distancia, sin necesidad de estar físicamente en el mismo sitio que la máquina que los tenía. También se usaba para consultar datos a distancia, como datos personales en máquinas accesibles por red, información bibliográfica, etc.

En la siguiente imagen se observa como con Telnet se puede conectar a un servidor consultar directorios etc.

En esta imagen se puede observar la consulta de correo electrónico mediante Telnet y el protocolo POP3.

El problema de Telnet es que viaja en texto plano y esto provoca que cualquiera pueda capturar el trafico de la red hasta capturar las contraseñas de un usuario como se muestra en la imagen.

Para conecciones seguras se recomienda usar SSH ya que la información viaja cifrada.

Para mayor información


Saludos...

Serie de Fibonacci en Java (GUI)



Serie de Fibonacci en Java (GUI)

Hola a todos me propuse a practicar un poco las GUI en java un poco aquí les dejo el código del programa.

Primero pide un numero hasta donde quieres llegar de la serie de Fibonacci.

Después despliega el ultimo numero de la serie que se consulto

Código



import javax.swing.JOptionPane;

public class Fibo {
public static void main(String []args){
String strNumero1;
int Numero1;
int serie = 0;
int b = 0, c = 1;

strNumero1 = JOptionPane.showInputDialog( "Hasta donde quiere llegar: ", "Escribe un numero");

Numero1 = Integer.parseInt( strNumero1 );

for (int n = 0; n < Numero1; n++) {
serie = b + c;
c = b;
b = serie;
System.out.println(serie);
}

JOptionPane.showMessageDialog(
null, "La serie es :" +serie , "Resultado",
JOptionPane.PLAIN_MESSAGE );
System.exit( 0 );
}
}

Saludos...


lunes, 15 de noviembre de 2010

IPv6 y IPv4



IPv6 y IPv4

Desde hace tiempo se viene hablando del agotamiento de las direcciones del actual protocolo de Internet, pero se veía como algo lejano, improbable, remoto.

Hace poco se anunció que sólo quedaban el 10% de las direcciones IPv4 disponibles, y se habló de la inminente aplicación de la IPv6, pero es hasta ahora que tenemos uque viene se acabarán las direcciones de Internet que conocemos.

El protocolo Internet versión 6 a(IPv6) es una nueva versión de IP (Internet Protocol), definida en el RFC 2460 y diseñada para reemplazar a la versión 4 (IPv4) RFC 791, que actualmente esta implementado en la gran mayoria de dispositivos que acceden a Internet.

Diseñado por Steve Deering de Xerox PARC y Craig Mudge, IPv6 está destinado a sustituir a IPv4, cuyo límite en el número de direcciones de red admisibles está empezando a restringir el crecimiento de Internet y su uso, especialmente en China, India, y otros países asiáticos densamente poblados. Pero el nuevo estándar mejorará el servicio globalmente; por ejemplo, proporcionará a futuras celdas telefónicas y dispositivos móviles sus direcciones propias y permanentes. Se calcula que, actualmente, las dos terceras partes de las direcciones que ofrece IPv4 ya están asignadas.

IPv4 posibilita 4.294.967.296 (232) direcciones de red diferentes, un número inadecuado para dar una dirección a cada persona del planeta, y mucho menos a cada vehículo, teléfono, PDA, etcétera. En cambio, IPv6 admite 340.282.366.920.938.463.463.374.607.431.768.211.456 (2128 o 340 sextillones de direcciones) —cerca de 3.4 × 1020 (340 trillones de direcciones) por cada pulgada cuadrada (6.7 × 1017 o 670 mil billones de direcciones/mm2) de la superficie de La Tierra.

La siguiente imagen es una comparación de IPv4 contra IPv6 y todo lo que abarca.



Para mayor información


Saludos...

Modelo OSI




Modelo OSI

El modelo de referencia de Interconexión de Sistemas Abiertos (OSI, Open System Interconnection) es el modelo de red descriptivo creado por la Organización Internacional para la Estandarización lanzado en 1984. Es decir, es un marco de referencia para la definición de arquitecturas de interconexión de sistemas de comunicaciones.

En la imagen se puede observa la pila del modelo OSI y mas abajo la descripción de cada una de las capas.


Capa física

Es la que se encarga de las conexiones físicas de la computadora hacia la red, tanto en lo que se refiere al medio físico como a la forma en la que se transmite la información.

Sus principales funciones se pueden resumir como:
Definir el medio o medios físicos por los que va a viajar la comunicación: cable de pares trenzados (o no, como en RS232/EIA232), coaxial, guías de onda, aire, fibra óptica.
Definir las características materiales (componentes y conectores mecánicos) y eléctricas (niveles de tensión) que se van a usar en la transmisión de los datos por los medios físicos.
Definir las características funcionales de la interfaz (establecimiento, mantenimiento y liberación del enlace físico).
Transmitir el flujo de bits a través del medio.
Manejar las señales eléctricas del medio de transmisión, polos en un enchufe, etc.
Garantizar la conexión (aunque no la fiabilidad de dicha conexión).

Capa de enlace de datos

Esta capa se ocupa del direccionamiento físico, de la topología de la red, del acceso a la red, de la notificación de errores, de la distribución ordenada de tramas y del control del flujo.
Como objetivo o tarea principal, la capa de enlace de datos se encarga de tomar una transmisión de datos ” cruda ” y transformarla en una abstracción libre de errores de transmisión para la capa de red.

Este proceso se lleva a cabo dividiendo los datos de entrada en marcos de datos (de unos cuantos cientos de bytes), transmite los marcos en forma secuencial, y procesa los marcos de estado que envía el nodo destino.

Capa de red

El objetivo de la capa de red es hacer que los datos lleguen desde el origen al destino, aún cuando ambos no estén conectados directamente. Los dispositivos que facilitan tal tarea se denominan encaminadores, aunque es más frecuente encontrar el nombre inglés routers y, en ocasiones enrutadores. Los routers trabajan en esta capa, aunque pueden actuar como switch de nivel 2 en determinados casos, dependiendo de la función que se le asigne. Los firewalls actúan sobre esta capa principalmente, para descartar direcciones de máquinas.
En este nivel se realiza el direccionamiento lógico y la determinación de la ruta de los datos hasta su receptor final.

Capa de transporte

Capa encargada de efectuar el transporte de los datos (que se encuentran dentro del paquete) de la máquina origen a la de destino, independizándolo del tipo de red física que se esté utilizando. La PDU de la capa 4 se llama Segmento o Datagrama, dependiendo de si corresponde a TCP o UDP. Sus protocolos son TCP y UDP; el primero orientado a conexión y el otro sin conexión.

Capa de sesión

Esta capa es la que se encarga de mantener y controlar el enlace establecido entre dos computadores que están transmitiendo datos de cualquier índole.
Por lo tanto, el servicio provisto por esta capa es la capacidad de asegurar que, dada una sesión establecida entre dos máquinas, la misma se pueda efectuar para las operaciones definidas de principio a fin, reanudándolas en caso de interrupción. En muchos casos, los servicios de la capa de sesión son parcial o totalmente prescindibles.

Capa de presentación

El objetivo es encargarse de la representación de la información, de manera que aunque distintos equipos puedan tener diferentes representaciones internas de caracteres los datos lleguen de manera reconocible.
Esta capa es la primera en trabajar más el contenido de la comunicación que el cómo se establece la misma. En ella se tratan aspectos tales como la semántica y la sintaxis de los datos transmitidos, ya que distintas computadoras pueden tener diferentes formas de manejarlas.
Esta capa también permite cifrar los datos y comprimirlos. En pocas palabras es un traductor.

Capa de aplicación

Ofrece a las aplicaciones la posibilidad de acceder a los servicios de las demás capas y define los protocolos que utilizan las aplicaciones para intercambiar datos, como correo electrónico (POP y SMTP), gestores de bases de datos y servidor de ficheros (FTP), por UDP pueden viajar (DNS y RIP). Hay tantos protocolos como aplicaciones distintas y puesto que continuamente se desarrollan nuevas aplicaciones el número de protocolos crece sin parar.
Cabe aclarar que el usuario normalmente no interactúa directamente con el nivel de aplicación. Suele interactuar con programas que a su vez interactúan con el nivel de aplicación pero ocultando la complejidad subyacente.

En la siguiente imagen es una animación en gif de como funciona el modelo gif que encontre en internet.


Aquí les dejo un video de como funciona el modelo OSI


Para mayor información


Saludos...