Semana Nro. 01 - 9no

  • Published on
    17-Dec-2015

  • View
    5

  • Download
    1

Embed Size (px)

DESCRIPTION

nhnnnnnnmm

Transcript

SEMANA NRO

SEMANA Nro. 01

ARQUITECTURA CLIENTE SERVIDOR

Trmino usado para describir un modelo para el desarrollo de sistemas computacionales.

Las funciones que realiza son: Cliente y Servidor

Ambas son procesos independientes y autnomos.

CLIENTE.- Proceso que solicita servicios especficos a los procesos de un servidor.

SERVIDOR.- Proceso que proporciona los servicios solicitados por los clientes.

CLIENTE y SERVIDOR pueden estar en la misma computadora o en diferentes equipos

conectados por una red.

El Servidor puede proporcionar servicios a mas de un cliente.

El cliente puede solicitar servicios a varios servidores en la red sin importar la ubicacin y las caractersticas fsicas de la computadora en la que reside el proceso servidor.

La red enlaza servidores y clientes y proporciona un medio de comunicacin para ambos.En una base de datos cliente servidor

El cliente solicita datos del servidor

El procesamiento de la solicitud (seleccin de registros) ocurre en la maquina servidora de la base de datos.

El servidor enva los registros al cliente a travs de la red.

El procesamiento de informacin incluso puede dividirse entre diferentes tipos de computadoras (servidoras) (Pentium, Power PC, RISC, minicomputadoras, mainframes).

Diferencias entre Cliente Servidor y Mainframe

La principal diferencia es la separacin de las tareas de procesamiento de datos:

En el mainframe. El proceso es centralizado. Las terminales no inteligentes solo despliegan datos y son solo apndices del mainframe.

En el cliente/servidor. La separacin de procesos servidor y cliente es autnoma . Existe una relacin muchos a muchos entre clientes y servidores.

Clasificacin de Clientes y Servidores

Segn el grado que comparte el procesamiento entre el cliente y servidor, ambos pueden catalogarse como delgados (ligeros) o pesados.

Cliente Ligero o Servidor Ligero (Delgado).- Realiza el mnimo procesamiento.

Cliente Pesado o Servidor Pesado.- Soporta una porcin relativamente grande de la carga de procesamiento.

Clientes ligeros asociados con: Servidores pesados

Clientes pesados asociados con: Servidores ligeros

El Mainframe es una versin primitiva de Servidor Pesado / Cliente Delgado

Sistema Cliente/Servidor de 2 y 3 capas

En un sistema Cliente Servidor de 2 capas, el cliente solicita servicios directamente al servidor.

En un sistema Cliente Servidor de 3 capas las solicitudes del cliente son manejadas por

servidores intermedios los cuales coordinan la ejecucin de las solicitudes del cliente con otros servidores subordinados.

Evolucin de los sistemas Cliente/Servidor

1) Proceso centralizado Terminales tontas

2) PCs autnomas (sin comunicacin entre s, es decir, sin red)

3) Terminales inteligentes (Procesamiento instantneo)

4) Redes de rea local. Acceso a los datos por demanda. Acceso de lectura/escritura distribuido.

Componentes de la Arquitectura Cliente/Servidor

Cliente (Aplicacin frontal)

Servidor (Aplicacin dorsal servicios de fondo - ).

Middleware (Procesos de comunicacin transmisin de datos, control de informacin).

Caractersticas de un DBMS Cliente/Servidor

Proporcionar un acceso transparente a los datos mltiples y clientes heterogneos sin importar el hardware, software y la plataforma de red usados por el cliente.

Permitir solicitudes del cliente al servidor de la BDD (mediante solicitudes SQL) a travs de la red.

Procesar solicitudes de datos realizadas por los clientes en el servidor local.

Enviar solo los resultados SQL a los clientes a travs de la red.Qu es la Tecnologa JAVA?

La tecnologa Java es una revolucionaria plataforma informtica presentada por Sun Microsystems en 1995. Denominado originalmente OAK, el lenguaje de programacin fue rebautizado como Java en 1995.

La tecnologa Java despliega una multitud de emocionantes posibilidades para los usuarios, pues permite que prcticamente cualquier aplicacin (ya sean juegos, herramientas o programas de informacin y servicios) se ejecute en casi cualquier equipo o dispositivo. Desde equipos de sobremesa hasta dispositivos de mano y telfonos mviles, actualmente Java est en todas partes.

El lenguaje de programacin JavaPodemos empezar diciendo que el lenguaje Java es de alto nivel (*) y sus caractersticas ms importantes son:

Lenguaje orientado a objetos.

Java es un lenguaje sencillo.

Independiente de plataforma

Brinda un gran nivel de seguridad

Capacidad multihilo

Gran rendimiento

Creacin de aplicaciones distribuidas

Su robustez o lo integrado que tiene el protocolo TCP/IP lo que lo hace un lenguaje ideal para Internet.

Tradicionalmente se han dividido los lenguajes en compilados e interpretados. Los primeros necesitan ser traducidos por un programa llamado compilador al lenguaje mquina, que es el que entiende el ordenador. Como ejemplo de estos lenguajes podramos citar a C, C++, Visual Basic, Clipper, etc. Los interpretados, en cambio, son traducidos mientras se ejecutan, por ejemplo HTML, WML o XML, por lo cual no necesitan ser compilados.

As pues la diferencia entre estos lenguajes radica en la manera de ejecutarlos. Mientras que los compilados slo se compilan una vez y lo hacen pasando todo el programa a cdigo mquina (si da un error aunque sea en la ultima lnea no podramos ejecutar nada de nada), en el momento que lo hemos compilado correctamente se genera un archivo .exe que se puede ejecutar tantas veces como queramos sin tener que volver a compilar. Los interpretados en cambio, cada vez que los queramos ejecutar tendremos que interpretarlos lnea a lnea, es ms lento, pero puede ocurrir un error en la ultima lnea y a diferencia de los compilados, el programa se ejecuta justo hasta la lnea que produce el error.

Java est diseado para que un programa escrito en este lenguaje sea ejecutado independientemente de la plataforma (hardware, software y sistema operativo) en la que se est actuando. Esta portabilidad se consigue haciendo de Java un lenguaje medio interpretado medio compilado. Cmo se come esto? Pues se coge el cdigo fuente, se compila a un lenguaje intermedio cercano al lenguaje mquina pero independiente del ordenador y el sistema operativo en que se ejecuta (llamado en el mundo Java bytecodes).La plataforma JavaCon plataforma nos referimos al ambiente de hardware y software en donde el programa se ejecuta, por ejemplo, plataformas como Linux, Solaris, Windows 2003 y MacOS. En casi todos los casos las plataformas son descritas como la combinacin del sistema operativo y el hardware. La plataforma Java se diferencia de estas plataformas, es que es una plataforma slo de software y se ejecuta sobre las otras plataformas de hardware.

La plataforma Java tiene 2 componentes:

La mquina virtual de Java (JVM)

El Java API (Application Programming Interface)

Ya hemos visto algo de la mquina virtual de Java (JVM); es la base de la plataforma Java y es llevada a diferentes plataformas de hardware.

El Java API es una gran coleccin de componentes de software que proporcionan muchas utilidades para el programador, por ejemplo, los APIs para las interfases grficas. Los APIs de Java estn agrupados en libreras de ciertas Clases e interfaces, estas libreras son conocidas como paquetes.

Plataforma JavaBill Venners en su libro Inside the Virtual Java Machine afirma que Java est formado por cuatro piezas diferentes: una especificacin de un lenguaje de programacin; una especificacin de un formato binario, los bytecodes; una especificacin de una mquina virtual, encargada de interpretar los bytecodes; y un conjunto de libreras estndar. Sin duda estos cuatro elementos definen el lenguaje de programacin Java. Sin embargo, si Java ha alcanzado tanto xito y difusin no es slo gracias al lenguaje, sino tambin al resto de la plataforma, que integra mltiples tecnologas en su seno: tecnologas para el desarrollo de aplicaciones Web (Servlets, JSP, portlets, etc.), aplicaciones empresariales (EJB, JTA, JCA, JMS, etc.), aplicaciones para telefona mvil (CLCD, CDC, OpenGL ES, etc.), tarjetas inteligentes (JavaCard), y un inmenso sinfn de tecnologas que hicieron a Java nico, hasta hace tan slo un par de aos, cuando apareci .NET. La plataforma Java est compuesta por un conjunto de especificaciones, que definen todas y cada una de las partes de la plataforma, y una serie de implementaciones de estas especificaciones. Sin duda, por ser la base sobre la cual se edifica el resto de la plataforma, las especificaciones del lenguaje, bytecode, mquina virtual, y de las libreras estndar juegan un papel protagonista, pero no son las nicas.Recursos que ofrece para el desarrolloJava

El JRE (Java Runtime Environment, o Entorno en Tiempo de Ejecucin de Java) es el software necesario para ejecutar cualquier aplicacin desarrollada para la plataforma Java. El usuario final usa el JRE como parte de paquetes software o plugins (o conectores) en un navegador Web. Sun ofrece tambin el SDK de Java 2, o JDK (Java Development Kit) en cuyo seno reside el JRE.

Sun define tres plataformas en un intento por cubrir distintos entornos de aplicacin. As, ha distribuido muchas de sus APIs (Application Program Interface) de forma que pertenezcan a cada una de las plataformas:

Java ME (Java Platform, Micro Edition) o J2ME orientada a entornos de limitados recursos, como telfonos mviles, PDAs, etc. Java SE (Java Platform, Standard Edition) o J2SE para entornos de gama media y estaciones de trabajo. Aqu se sita al usuario medio en un PC de escritorio.

Java EE (Java Platform, Enterprise Edition) o J2EE orientada a entornos distribuidos empresariales o de Internet.Ides Un IDE (Entorno de Desarrollo Integrado) es un programa compuesto por un conjunto de herramientas para un programador. Existen disponibles varios de stos en lnea, tanto comerciales y gratuitos, por mencionar algunos: NetBeans IDE y plataforma base para aplicaciones ricas de escritorio (Rich Apps) gratuito de cdigo abierto desarrollado por NetBeans.org. Eclipse libre y de cdigo abierto, Eclipse es desarrollado por la Fundacin Eclipse. JBuilder software comercial (existe una versin gratuita). JBuilder es desarrollado por Borland. JCreator software comercial (existe una versin gratuita) desarrollado por Xinox. JDeveloper: Es un entorno de desarrollo integrado desarrollado por Oracle Corporation para lenguaje Java, HTML, XML, SQL, PL/SQL, Javascript, PHP, Oracle ADF, UML y otros. Es un software propietario pero gratuito desde 2005. Las primeras versiones de 1998 estaban basadas en el entorno JBuilder de Borland, pero desde la versin 9i de 2001 est basado en Java, no estando ya relacionado con el cdigo anterior de JBuilder, construido en Java para el desarrollo de proyectos Java. El ciclo de desarrollo es completamente atendido, o sea, en JDeveloper es posible modelar(UML), codificar, debugar, testear y deployar. El est preparado para el desarrollo en Web, XML, Web Services, SQL, J2EE y Oracle ADF. Provee funcionalidades nativas para las herramientas y frameworks abiertos mas populares, como: Struts, Ant, JUnit e CVS. Segn Oracle, el JDeveloper es la herramienta seleccionada por los clientes de Forms, Reports y Designer, esto porque el JDeveloper utiliza un modelo de desarrollo similar.

Corporacin Oracle1. (Oracle Corporation). Una de las compaas ms grandes desarrolladoras de SGBD, herramientas para bases de datos, entre otros productos.

2. Oracle fue fundada en 1977, emplea a ms de 50 mil personas en todo el mundo (2005) y tiene oficinas en ms de 145 pases.Que es oracle

Oracle es bsicamente una herramienta cliente/servidor para la gestin de Bases de Datos. Es un producto vendido a nivel mundial, aunque la gran potencia que tiene y su elevado precio hace que slo se vea en empresas muy grandes y multinacionales, por norma general, aunque actualmente existen versiones mas asequibles a entornos de gestin mas modestos. En el desarrollo de pginas web pasa lo mismo: como es un sistema muy caro no est tan extendido como otras bases de datos, por ejemplo, Access, MySQL, SQL Server, etc.

Funcionamiento de Oracle y la programacin sobre Oracle

Oracle como antes he mencionado se basa en la tecnologa cliente/servidor, pues bien, para su utilizacin primero sera necesario la instalacin de la herramienta servidor (Oracle 10g) y posteriormente podramos acceder a la base de datos desde otros equipos con herramientas de desarrollo como Oracle JDeveloper, que es la herramienta bsica de programacin sobre oracle.

Es posible lgicamente acceder a la base de datos a travs del SQL plus incorporado en el paquete de programas Oracle para poder realizar consultas, utilizando el lenguaje SQL.

El JDeveloper es una herramienta que nos permite crear formularios en local, es decir, mediante esta herramienta nosotros podemos crear formularios, compilarlos y ejecutarlos, pero si queremos que los otros trabajen sobre este formulario deberemos copiarlo regularmente en una carpeta compartida para todos, de modo que, cuando quieran realizar un cambio, debern copiarlo de dicha carpeta y luego volverlo a subir a la carpeta. Este sistema como podemos observar es bastante engorroso y poco fiable pues es bastante normal que las versiones se pierdan y se machaquen con frecuencia. La principal ventaja de esta herramienta es que es bastante intuitiva y dispone de un modo que nos permite componer el formulario, tal y como lo haramos en Visual Basic o en Visual C.