Common Object Request Broker Architecture (CORBA) es un estándar definido por Object Management Group (OMG) que permite que diversos componentes de software escritos en múltiples lenguajes de programación y que corren en diferentes computadoras, puedan trabajar juntos; es decir, facilita el desarrollo de aplicaciones distribuidas en entornos heterogéneos. IDL es un lenguaje de definición de interfaces que utiliza CORBA, el cual le permitirá definir las interfaces para los servicios que ofrecerá, de estas interfaces parten las implementaciones de la parte servidor y cliente en cualquiera de los diversos lenguajes que implementan CORBA (Ada, C, C++, Smalltalk, Java, Python, Perl).  Comenzamos con la implementación (El ejemplo es para realizar una… Continuar leyendo


Diseño de Programas Distribuidos: Diseño orientado a la comunicación (Prog. con sockets) –Diseñar primero el protocolo. –Construir programas acorde al protocolo. Diseño orientado a la Aplicación (RPC) –Construir aplicaciones. –Dividir los programas y añadir protocolos de comunicación. RPC (Remote Procedure Call) : En unix es posible tener en ejecución un programa en C con varias funciones que pueden ser llamadas desde otro programas. Estos otros programas pueden estar corriendo en otros ordenadores conectados en red. Supongamos, por ejemplo, que tenemos un ordenador muy potente en cálculo matemático y otro con un buen display para gráficos. Queremos hacer un programa con mucho cálculo… Continuar leyendo


Tuberías Una tubería (pipe, cauce o ‘|’) consiste en una cadena de procesos conectados de forma tal que la salida de cada elemento de la cadena es la entrada del próximo. Permiten la comunicación y sincronización entre procesos. Es común el uso de buffer de datos entre elementos consecutivos. Una tubería es unidireccional. La utilización de tuberías mediante el uso de la shell es “el pan nuestro de cada día”, cualquier administrador de sistemas medianamente preparado encadena comandos y comandos mediante tuberías de forma natural: cat /etc/passwd | grep bash | wc –lines Los comandos “cat”, “grep” y “wc” se… Continuar leyendo


CLASES  Las clases son lo más simple de Java. Todo en Java forma parte de una clase, es una clase o describe como funciona una clase. El conocimiento de las clases es fundamental para poder entender los programas Java. Todas las acciones de los programas Java se colocan dentro del bloque de una clase o un objeto. Todos los métodos se definen dentro del bloque de la clase, Java no soporta funciones o variables globales. Esto puede despistar a los programadores de C++, que pueden definir métodos fuera del bloque de la clase, pero esta posibilidad es más un intento… Continuar leyendo


El lenguaje Java tiene varias estructuras de control para bucles y bifurcaciones condicionales. El famoso Hola Mundo e ingreso de datos a través del programa en ejecución: Ahora entramos en la parte de las estructuras de control, antes de continuar, recomiendo ingresar a este link ya que no quiero volver a escribir todo sobre cada tipo de estructura, solo dejaré los ejemplos para Java. Ejemplo completo: Excepciones try-catch-throw try { sentencias; } catch( Exception ) { sentencias; } Java implementa excepciones para facilitar la construcción de código robusto. Cuando ocurre un error en un programa, el código que encuentra el error… Continuar leyendo


Operadores relacionales en Java: En ocasiones se desea que se ejecuten un conjunto de declaraciones si una condición es verdadera, y otro grupo si la condición es falsa. Es decir, deseamos que el programa tome decisiones y responda de acuerdo a ellas. Para que el programa tome una decisión, generalmente realiza algún tipo de prueba, una comparación. Para ello utilizará los llamados operadores relacionales: Operador          Relación ==           … igual a … !=             … distinto de … >              … mayor que … <              … menor que … >=           … mayor o igual que … <=           … menor o igual que … !                   … Continuar leyendo


Antes de continuar con el manual, recomiendo que lean las bases de la OO Este manual es ideal para aprender a programar en el lenguaje Java. Nivel de dificultad: Básico. Si tienen alguna duda, pueden dejar comentarios en los artículos, que con gusto los responderé. El manual todavía está en proceso de construcción!!! Java – Introducción Operadores relacionales y tipos de datos en Java Estructuras de control en Java Clases – Variables y métodos de instancia en Java


¿Qué es Java? Hacia 1990, James Gosling, quien trabaja para Sun Microsystems, fue el encargado de crear programas para controlar aparatos electrónicos domésticos. Originalmente Gosling y suequipo empezaron el diseño de su software usando C++, debido a su orientación a objetos. Sin embargo, se dieron cuenta que C++ no satisfacía los proyectos que se tenían en mente; encontraron dificultades con aspectos complicados de C++ como la herencia múltiple de clases, errores de programación (bugs) relacionados con huecos de memoria. De esta manera Gosling decidió que tenía que empezar por escribir un lenguaje simplificado que le evitara todos los problemas que… Continuar leyendo


En este ejemplo vamos a abrir un servidor y un cliente. El cliente enviará un fichero y el nombre del fichero al servidor. El servidor guardará el fichero recibido en el directorio donde se esté ejecutando. La idea es, por tanto, ver cómo enviamos un fichero por un socket, sin liar la forma de pedir el fichero, ni hacer hilos para atender muchos clientes y muchas peticiones ni nada de eso. Solo leer el fichero y enviarlo por el socket. El protocolo de transporte usado es TCP, para así garantizar que la transferencia se realice satisfactoriamente. Servidor: Cliente: Espero que les sirva el ejemplo,… Continuar leyendo