Anda di halaman 1dari 42

FACULTAD: Ingeniera ESCUELA ACADEMICA PROFECIONAL: Ingeniera de Sistemas CURSO: Introduccin a la Informtica y Sistemas TEMA: Lenguaje de Programacin y Base

de Datos DOCENTE: Ingeniero MEZA VILLANUEVA Beder CICLO: II ALUMNOS: ASENCIOS ROJAS Humberto Faustino HUACANCA GUIMAREY Richar Arcides

Introduccin a la Informtica y Sistemas

Introduccin a la Informtica y Sistemas

PRESENTACION Este trabajo monogrfico fue realizado con el objetivo de mencionar y describir los diferentes lenguajes de programacin para web y escritorio; tambin para mencionar los diferentes gestores de base de datos. La presente monografa est dividida en 2 Captulos. El capitulo 1, se refiere a los lenguajes de programacin para web y escritorio. Este captulo nos menciona las caractersticas y definiciones fundamentales de los lenguajes que puedan existir en el mundo de la informtica y como se clasifican segn sus datos en que se programan pueden ser de: Bajo nivel Son lenguajes totalmente dependientes de la mquina, es decir que el programa que se realiza con este tipo de lenguajes no se pueden migrar o utilizar en otras maquinas. Alto nivel Son aquellos que se encuentran ms cercanos al lenguaje natural que al lenguaje mquina. Estn dirigidos a solucionar problemas mediante el uso de EDD's. En el siguiente captulo mencionamos los diferentes gestores de base de datos. En el cual un gestor de base de datos nos permite guardar diferentes datos que podamos ingresar o mejor dicho archivar datos. La elaboracin de este trabajo monogrfico, es el producto de la experiencia de un estudiante de ingeniera de sistemas.

Introduccin a la Informtica y Sistemas

DEDICATORIA El trabajo de investigacin monogrfico lo dedicamos a nuestros padres; a quienes les debemos todo lo que tenemos en esta vida. A Dios, ya que gracias a l tenemos esos padres maravillosos, los cuales nos apoyan en nuestras derrotas y celebran nuestros triunfos

Introduccin a la Informtica y Sistemas

A nuestros profesores quienes son nuestros guas en el aprendizaje, dndonos los ltimos conocimientos para nuestro buen desenvolvimiento en la sociedad.

INTRODUCCION

LENGUAJES: Lenguaje es el empleo de notaciones, seales y vocales (voz, palabras) para expresar ideas, comunicarse, y establecer relaciones entre los seres humanos. Un lenguaje no slo consta de palabras, sino tambin de su pronunciacin y los mtodos para combinar las palabras en frases y oraciones; los lenguajes se forman mediante combinaciones de palabras definidas en un diccionario terminolgico previamente establecido. Las combinaciones posibles deben respetar un conjunto de reglas sintcticas establecidas, a ello se le conoce con El nombre de Sintaxis. Adems, las palabras deben tener determinado sentido, deben ser comprendidas por un grupo humano en un contexto dado, a ello se le denomina Semntica.

TIPOS DE LENGUAJES: Aunque existen muchas clasificaciones, en general se puede distinguir entre dos clases de lenguajes: los lenguajes naturales (ingles, alemn, espaol, etc.) y los lenguajes artificiales o formales (matemtico, lgico, computacional, etc.). Tanto el lenguaje natural como el lenguaje artificial son humanos. El primero es natural porque se aprende (o adquiere) inconsciente e involuntariamente. Por otra parte, los lenguajes artificiales s se aprenden de manera voluntaria y conscientemente. Un ejemplo de lenguaje artificial son los lenguajes de programacin utilizados para desarrollar programas informticos. QUE ES UN LENGUAJE DE PROGRAMACION? Un conjunto de sintaxis y reglas semnticas que definen los programas del computador. Es una tcnica estndar de comunicacin para entregarle instrucciones al computador. Un lenguaje le da la capacidad al programador de especificarle al computador, qu tipo de datos actan y que acciones tomar bajo una variada gama de circunstancias, utilizando un lenguaje relativamente prximo al lenguaje humano. Un programa escrito en un lenguaje de programacin necesita pasar por un proceso de compilacin, interpretacin o intermedio, es decir, ser traducido al lenguaje de mquina para que pueda ser ejecutado por el ordenador.
5

Introduccin a la Informtica y Sistemas

Qu ES UNA BASE DE DATOS? En la actualidad el enfoque de bases de datos es extensamente utilizado por ser la nica solucin posible para manejar grandes volmenes de datos, la complejidad de la extraccin de datos y la concurrencia de datos (accesos simultneos). Las bases de datos se han extendido por la disminucin de los costos de los servidores y las necesidades de exploracin de datos. Los sistemas integrados de gestin, paquetes contables o aplicaciones (como el SGB Sistema General de Bedelas y el Sistema de Recursos Humanos de la UdelaR) almacenan los datos en bases de datos.

LOS LENGUAJES DE PROGRAMACIN


Un Lenguaje de Programacin es un conjunto de reglas, notaciones, smbolos y/o caracteres que permiten a un programador poder expresar el procesamiento de datos y sus estructuras en la computadora. Cada lenguaje posee sus propias sintaxis. Tambin se puede decir que un programa es un conjunto de rdenes o instrucciones que resuelven un problema especfico basado en un Lenguaje de Programacin. Existen varias clasificaciones para los lenguajes de programacin. Para que un computador (hardware) funcione es necesario utilizar programas (software), los cuales le indican cul es la tarea que se tiene que hacer. Un lenguaje de programacin es el que se utiliza para escribir dichos programas. Posteriormente estos se introducirn en la memoria del computador y ste ltimo ejecutar todas las operaciones que se incluyen. Los lenguajes de programacin constan de: Un conjunto finito de smbolos, a partir del cual se define el lxico o vocabulario del lenguaje. Un conjunto finito de reglas, la gramtica del lenguaje, para la construccin de las sentencias correctas del lenguaje. (Sintaxis). Semntica, que asocia un significado (la accin que debe llevarse a cabo) a cada posible construccin del lenguaje. As, podemos decir que un lenguaje de programacin consta de un conjunto de smbolos y un conjunto de reglas vlidas para componerlos, de forma que formen un mensaje con significado para el computador. En este captulo se presenta una visin general de los distintos tipos de lenguajes de programacin de computadoras y sus caractersticas.
6

Introduccin a la Informtica y Sistemas

CLASIFICACION DE LOS LENGUAJES DE PROGRAMACION: Los programadores escriben instrucciones en diversos lenguajes de programacin. La computadora puede entender directamente algunos de ellos, pero otros requieren pasos de traduccin intermedios. Hoy da se utilizan cientos de lenguajes de computadora. Declarativos Se les conoce como lenguajes declarativos en ciencias computacionales aquellos lenguajes de programacin en los cuales se le indica a la computadora que es lo que se desea obtener o que es lo que se esta buscando, por ejemplo: Obtener los nombres de todos los empleados que tengan ms de 32 aos. Algunos ejemplos de lenguajes declarativos son el Datatrieve, SQL y las expresiones regulares. Siglas de Structured Query Language (Lenguaje Estructurado de Consultas). Es un lenguaje declarativo que ana caractersticas del lgebra y el Clculo Relacionales que nos permite lanzar consultas contra una Base de Datos para recuperar informacin de nuestro inters, almacenada en ella. Ejemplos de consultas SQL: SELECT Nombre From Tabl_fich_personales where Edad >=18; Muestra el Campo "Nombre" de todos los individuos mayores de 18 aos de la tabla "Tabl_fich_personales" El concepto de expresiones regulares (Regular expressions en ingls) se refiere a una familia de lenguajes compactos y potentes para la descripcin de conjuntos de cadenas de caracteres. Numerosos editores de texto y otras utilidades (especialmente en el sistema operativo UNIX), como por ejemplo sed y awk, utilizan estos lenguajes para buscar ciertas estructuras en el texto y, por ejemplo, remplazarlas con alguna otra cadena de caracteres. Imperativos En ciencias de la computacin se llama lenguajes imperativos a aquellos en los cuales se le ordena a la computadora cmo realizar una tarea siguiendo una serie de pasos o instrucciones, por ejemplo:

Paso Paso Paso Paso

1, 2, 3, 4,

solicitar nmero. multiplicar nmero por dos. imprimir resultado de la operacin. etc,

Algunos ejemplos de lenguajes imperativos son: BASIC, C, C++, Java, Clipper, Dbase, C# y Perl.
7

Introduccin a la Informtica y Sistemas

Los Lenguajes de Programacin pueden clasificarse de acuerdo con su uso en:


Lenguajes desarrollados para el clculo numrico. Tales como FORTRAN, Mathematica y Matlab. Lenguajes para sistemas. Como C, C++ y ensamblador. Lenguajes para aplicaciones de Inteligencia Artificial. Tales como Prolog, y Lisp.

CLASIFICACION DE LOS LENGUAJES DE PROGRAMACION SEGN SU NIVEL: Lenguaje de Maquina: El lenguaje mquina de una computadora consta de cadenas de nmeros binarios (ceros y unos) y es el nico que "entienden" directamente los procesadores. Todas las instrucciones preparadas en cualquier lenguaje de mquina tienen por lo menos dos partes. La primera es el comando u operacin, que dice a la computadora cul es la funcin que va a realizar. Todas las computadoras tienen un cdigo de operacin para cada una de sus funciones. La segunda parte de la instruccin es el operando, que indica a la computadora dnde hallar o almacenar los datos y otras instrucciones que se van a manipular; el nmero de operandos de una instruccin vara en las distintas computadoras. En una computadora de operando nico, el equivalente binario de "SUMAR 0814" podra hacer que se sume el valor que se encuentra en la localidad de almacenamiento o direccin 0814 al valor que se encuentra en la unidad aritmtica lgica. En una mquina de dos operandos, la representacin binaria de "SUMAR 0814 8672" podra hacer que se sume el valor que est en la localidad 8672 al valor que est en la direccin 0814. El formato de operando nico es popular en las microcomputadoras ms pequeas; la estructura de dos operandos se encuentra en casi todas las dems mquinas. Segn los estndares actuales, las primeras computadoras eran poco tolerantes. Los programadores tenan que traducir las instrucciones de manera directa a la forma de lenguaje de mquina que comprendan las computadoras. Por ejemplo, un programador que escribiera la instruccin "SUMAR 0814" para una de las primeras mquinas IBM hubiera escrito: 000100000000000000000000000010111000 Adems de recordar las docenas de cdigos numricos para los comandos del conjunto de instrucciones de la mquina, el programador tena que conocer las posiciones donde se almacenan los datos y las instrucciones. La codificacin inicial muchas veces requera meses, por lo que era costosa y era frecuente que originara errores. Revisar las instrucciones para localizar errores era casi tan tedioso como escribirlas por primera
8

Introduccin a la Informtica y Sistemas

vez. Adems, si era necesario modificar un programa posteriormente, la tarea poda llevarse meses. Lenguaje Ensamblador: A principios de la dcada de 1950, y con el fin de facilitar la labor de los programadores, se desarrollaron cdigos nemotcnicos para las operaciones y direcciones simblicas. La palabra nemotcnico se refiere a una ayuda para la memorizacin. Uno de los primeros pasos para mejorar el proceso de preparacin de programas fue sustituir los cdigos de operaciones numricos del lenguaje de mquina por smbolos alfabticos, que son los cdigos nemotcnicos. Todas las computadoras actuales tienen cdigos nemotcnicos aunque, naturalmente, los smbolos que se usan varan en las diferentes marcas y modelos. La computadora sigue utilizando el lenguaje de mquina para procesar los datos, pero los programas ensambladores traducen antes los smbolos de cdigo de operacin especificados a sus equivalentes en lenguaje de mquina. Este procedimiento prepar avances posteriores. Si la computadora era capaz de traducir smbolos convenientes en operaciones bsicas, por qu no hacer tambin que realizara otras funciones rutinarias de codificacin, como la asignacin de direcciones de almacenamiento a los datos? La tcnica de direccionamiento simblico permite expresar una direccin no en trminos de su localizacin numrica absoluta, sino en trminos de smbolos convenientes para el programador. Durante las primeras etapas del direccionamiento simblico, el programador asigna un nombre simblico y una direccin real a un dato. Por ejemplo, el programador podra asignar el valor total de mercanca adquirida durante un mes por un cliente de una tienda de departamentos a la direccin 0063, y darle el nombre simblico TOTAL. Se podra asignar el valor de la mercanca devuelta sin usar durante el mes a la direccin 2047 y drsele el nombre simblico CRDITO. As, durante el resto del programa, el programador se referir a los nombres simblicos, ms que a las direcciones, cuando fuera preciso procesar estos datos. Por ejemplo, se podra escribir la instruccin "S CRDITO TOTAL" para restar el valor de las mercancas devueltas del importa total de compras para obtener el importe de la factura mensual del cliente. A continuacin, el programa ensamblador traducira la instruccin simblica a esta cadena de bits:

Ms adelante se hizo otra mejora. Se dej a la computadora la tarea de asignar y recordar las direcciones de las instrucciones. Lo nico que tena que hacer el programador era indicar a la computadora la direccin de la primera instruccin, y el
9

Introduccin a la Informtica y Sistemas

programa ensamblador se encargaba de almacenar, de manera automtica, todas las dems en forma secuencial a partir de ese punto. As, si se agregaba ms tarde otra instruccin al programa, no era necesario modificar las direcciones de todas las instrucciones que seguan al punto de insercin (como tendra que hacerse en el caso de programas escritos en lenguaje de mquina). En vez de ello, el procesador ajustaba automticamente las localidades de memoria la prxima vez que se ejecutaba el programa. En la actualidad, los programadores no asignan nmeros de direccin reales a los datos simblicos, simplemente especifican dnde quieren que se coloque la primera localidad del programa, y el programa ensamblador se encarga de lo dems: asigna localidades tanto para las instrucciones como para los datos. Estos programas de ensamble, o ensamblador, tambin permite a la computadora convertir las instrucciones en lenguaje ensamblador del programador en su propio cdigo de mquina. Un programa de instrucciones escrito en lenguaje ensamblador por un programador se llama programa fuente. Despus de que el ensamblador convierte el programa fuente en cdigo de mquina a ste se le denomina programa objeto. Para los programadores es ms fcil escribir instrucciones en un lenguaje ensamblador que en cdigos de lenguajes de mquina, pero es posible que se requieran dos corridas de computadora antes de que se puedan utilizar las instrucciones del programa fuente para producir las salidas deseadas. Los lenguajes ensambladores tienen ventajas sobre los lenguajes de mquina. Ahorran tiempo y requieren menos atencin a detalles. Se incurren en menos errores y los que se cometen son ms fciles de localizar. Adems, los programas en lenguaje ensamblador son ms fciles de modificar que los programas en lenguaje de mquina. Pero existen limitaciones. La codificacin en lenguaje ensamblador es todava un proceso lento. Una desventaja importante de estos lenguajes es que tienen una orientacin a la mquina. Es decir, estn diseados para la marca y modelo especfico de procesador que se utiliza, y es probable que, para una mquina diferente, se tengan que volver a codificar los programas. Lenguaje Alto Nivel: Los primeros programas ensambladores producan slo una instruccin en lenguaje de mquina por cada instruccin del programa fuente. Para agilizar la codificacin, se desarrollaron programas ensambladores que podan producir una cantidad variable de instrucciones en lenguaje de mquina por cada instruccin del programa fuente. Dicho de otra manera, una sola macroinstruccin poda producir varias lneas de cdigo en lenguaje de mquina. Por ejemplo, el programador podra escribir "LEER ARCHIVO", y el programa traductor producira una serie detallada de instrucciones al lenguaje de mquina previamente preparadas, con lo que se copiara un registro del archivo que
10

Introduccin a la Informtica y Sistemas

estuviera leyendo el dispositivo de entrada a la memoria principal. As, el programador no se tena que ocupar de escribir una instruccin por cada operacin de mquina realizada. El desarrollo de las tcnicas nemotcnicas y las macroinstrucciones condujo, a su vez, al desarrollo de lenguajes de alto nivel que a menudo estn orientados hacia una clase determinada de problemas de proceso. Por ejemplo, se han diseado varios lenguajes para procesar problemas cientfico-matemtico, asimismo han aparecido otros lenguajes que hacen hincapi en las aplicaciones de proceso de archivos. A diferencia de los programas de ensamble, los programas en lenguaje de alto nivel se pueden utilizar con diferentes marcas de computadores sin tener que hacer modificaciones considerables. Esto permite reducir sustancialmente el costo de la reprogramacin cuando se adquiere equipo nuevo. Otras ventajas de los lenguajes de alto nivel son:

Son ms fciles de aprender que los lenguajes ensambladores. Se pueden escribir ms rpidamente. Permiten tener mejor documentacin. Son ms fciles de mantener. Un programador que sepa escribir programas en uno de estos lenguajes no est limitado a utilizar un solo tipo de mquina.

GENERACIONES SE LOS LENGUAJES: Los equipos de ordenador (el hardware) han pasado por cuatro generaciones, de las que las tres primeras (ordenadores con vlvulas, transistores y circuitos integrados) estn muy claras, la cuarta (circuitos integrados a gran escala) es ms discutible. Algo parecido ha ocurrido con la programacin de los ordenadores (el software), que se realiza en lenguajes que suelen clasificarse en cinco generaciones, de las que las tres primeras son evidentes, mientras no todo el mundo est de acuerdo en las otras dos. Estas generaciones no coincidieron exactamente en el tiempo con las de hardware, pero s de forma aproximada, y son las siguientes:
11

Introduccin a la Informtica y Sistemas

1. Primera generacin: Los primeros ordenadores se programaban directamente

en cdigo binario, que puede representarse mediante secuencias de ceros y unos sistema binario. Cada modelo de ordenador tiene su propio cdigo, por esa razn se llama lenguaje de mquina. 2. Segunda generacin: Los lenguajes simblicos, as mismo propios de la mquina, simplifican la escritura de las instrucciones y las hacen ms legibles. 3. Tercera generacin: Los lenguajes de alto nivel sustituyen las instrucciones simblicas por cdigos independientes de la mquina, parecidas al lenguaje humano o al de las Matemticas.
4. Cuarta generacin: se ha dado este nombre a ciertas herramientas que

permiten construir aplicaciones sencillas combinando piezas prefabricadas. Hoy se piensa que estas herramientas no son, propiamente hablando, lenguajes. Algunos proponen reservar el nombre de cuarta generacin para la programacin orientada a objetos. 5. Quinta generacin: se llama as a veces a los lenguajes de la inteligencia artificial, aunque con el fracaso del proyecto japons de la quinta generacin el nombre ha cado en desuso. LOS DIFERENTES LENGUAJES DE PROGRAMACION PARA WEB: Actualmente existen diferentes lenguajes de programacin para desarrollar en la web, estos han ido surgiendo debido a las tendencias y necesidades de las plataformas. En el presente artculo pretende mostrar las ventajas y desventajas de los lenguajes ms conocidos. Desde los inicios de Internet, fueron surgiendo diferentes demandas por los usuarios y se dieron soluciones mediante lenguajes estticos. A medida que paso el tiempo, las tecnologas fueron desarrollndose y surgieron nuevos problemas a dar solucin. Esto dio lugar a desarrollar lenguajes de programacin para la web dinmicos, que permitieran interactuar con los usuarios y utilizaran sistemas de Bases de Datos. A continuacin daremos una introduccin a los diferentes lenguajes de programacin para la web. Lenguaje HTML Desde el surgimiento de internet se han publicado sitios web gracias al lenguaje HTML. Es un lenguaje esttico para el desarrollo de sitios web (acrnimo en ingls de HyperText Markup Language, en espaol Lenguaje de Marcas Hipertextuales).
12

Introduccin a la Informtica y Sistemas

Desarrollado por el World Wide Web Consortium (W3C). Los archivos pueden tener las extensiones (htm, html). Sintaxis: <html> (Inicio del documento HTML) <head> ( Cabecera ) </head> <body> ( Cuerpo ) </body> </html> <b> </b> Negrita <p> </p> Definir parrafo <etiqueta> Apertura de la etiqueta </etiqueta> Cierre de la etiqueta Ventajas: 1. Sencillo que permite describir hipertexto. 2. Texto presentado de forma estructurada y agradable. 3. No necesita de grandes conocimientos cuando se cuenta con un editor de pginas web o WYSIWYG. 4. Archivos pequeos. 5. Despliegue rpido. 6. Lenguaje de fcil aprendizaje. 7. Lo admiten todos los exploradores. Desventajas:

1. Lenguaje esttico. 2. La interpretacin de cada navegador puede ser diferente. 3. Guarda muchas etiquetas que pueden convertirse en basura y dificultan la correccin. 4. El diseo es ms lento. 5. Las etiquetas son muy limitadas.

13

Introduccin a la Informtica y Sistemas

Lenguaje Javascript Este es un lenguaje interpretado, no requiere compilacin. Fue creado por Brendan Eich en la empresa Netscape Communications. Utilizado principalmente en pginas web. Es similar a Java, aunque no es un lenguaje orientado a objetos, el mismo no dispone de herencias. La mayora de los navegadores en sus ltimas versiones interpretan cdigo Javascript. El cdigo Javascript puede ser integrado dentro de nuestras pginas web. Para evitar incompatibilidades el World Wide Web Consortium (W3C) diseo un estndar denominado DOM (en ingls Document Object Model, en su traduccin al espaol Modelo de Objetos del Documento).

Sintaxis: <script type="text/javascript"> ... </script> Ventajas:

1. Lenguaje de scripting seguro y fiable. 2. Los script tienen capacidades limitadas, por razones de seguridad.
3. El cdigo Javascript se ejecuta en el cliente.

Desventajas:

1. Cdigo visible por cualquier usuario. 2. El cdigo debe descargarse completamente.

14

Introduccin a la Informtica y Sistemas

3. Puede poner en riesgo la seguridad del sitio, con el actual problema llamado XSS

(significa en ingls Cross Site Scripting renombrado a XSS por su similitud con las hojas de estilo CSS). Lenguaje PHP Es un lenguaje de programacin utilizado para la creacin de sitio web. PHP es un acrnimo recursivo que significa PHP Hypertext Pre-processor, (inicialmente se llam Personal Home Page). Surgi en 1995, desarrollado por PHP Group. PHP es un lenguaje de script interpretado en el lado del servidor utilizado para la generacin de pginas web dinmicas, embebidas en pginas HTML y ejecutadas en el servidor. PHP no necesita ser compilado para ejecutarse. Para su funcionamiento necesita tener instalado Apache o IIS con las libreras de PHP. La mayor parte de su sintaxis ha sido tomada de C, Java y Perl con algunas caractersticas especficas. Los archivos cuentan con la extensin (php). Sintaxis: La sintaxis utilizada para incorporar cdigo PHP es la siguiente: <? $mensaje = Hola; echo $mensaje; ?> Tambin puede usarse: <?php $mensaje = Hola; echo $mensaje; ?> Ventajas:

1. Muy fcil de aprender. 2. Se caracteriza por ser un lenguaje muy rpido. 3. Soporta en cierta medida la orientacin a objeto. Clases y herencia. 4. Es un lenguaje multiplataforma: Linux, Windows, entre otros.
5. Capacidad de conexin con la mayora de los manejadores de base de datos:

MysSQL, PostgreSQL, Oracle, MS SQL Server, entre otras. 6. Capacidad de expandir su potencial utilizando mdulos.
15

Introduccin a la Informtica y Sistemas

7. Posee documentacin en su pgina oficial la cual incluye descripcin y ejemplos de cada una de sus funciones. 8. Es libre, por lo que se presenta como una alternativa de fcil acceso para todos. 9. Incluye gran cantidad de funciones. 10.No requiere definicin de tipos de variables ni manejo detallado del bajo nivel. Desventajas:

1. Se necesita instalar un servidor web. 2. Todo el trabajo lo realiza el servidor y no delega al cliente. Por tanto puede ser ms ineficiente a medida que las solicitudes aumenten de nmero. 3. La legibilidad del cdigo puede verse afectada al mezclar sentencias HTML y PHP. 4. La programacin orientada a objetos es an muy deficiente para aplicaciones grandes.
5. Dificulta la modularizacin.

6. Dificulta la organizacin por capas de la aplicacin. Seguridad: PHP es un poderoso lenguaje e intrprete, ya sea incluido como parte de un servidor web en forma de mdulo o ejecutado como un binario CGI separado, es capaz de acceder a archivos, ejecutar comandos y abrir conexiones de red en el servidor. Estas propiedades hacen que cualquier cosa que sea ejecutada en un servidor web sea insegura por naturaleza. PHP est diseado especficamente para ser un lenguaje ms seguro para escribir programas CGI que Perl o C, y con la seleccin correcta de opciones de configuracin en tiempos de compilacin y ejecucin, y siguiendo algunas prcticas correctas de programacin. Lenguaje ASP Es una tecnologa del lado de servidor desarrollada por Microsoft para el desarrollo de sitio web dinmicos. ASP significa en ingls (Active Server Pages), fue liberado por Microsoft en 1996. Las pginas web desarrolladas bajo este lenguaje es necesario tener instalado Internet Information Server (IIS). ASP no necesita ser compilado para ejecutarse. Existen varios lenguajes que se pueden utilizar para crear pginas ASP. El ms utilizado es VBScript, nativo de Microsoft. ASP se puede hacer tambin en Perl and Jscript (no JavaScript). El
16

Introduccin a la Informtica y Sistemas

cdigo ASP puede ser insertado junto con el cdigo HTML. Los archivos cuentan con la extensin (asp). Sintaxis: <% %> Ventajas:

1. Usa Visual Basic Script, siendo fcil para los usuarios. 2. Comunicacin ptima con SQL Server.
3. Soporta el lenguaje JScript (Javascript de Microsoft).

Desventajas:

1. Cdigo desorganizado. 2. Se necesita escribir mucho cdigo para realizar funciones sencillas. 3. Tecnologa propietaria. 4. Hospedaje de sitios web costosos. Lenguaje ASP.NET Este es un lenguaje comercializado por Microsoft, y usado por programadores para desarrollar entre otras funciones, sitios web. ASP.NET es el sucesor de la tecnologa ASP, fue lanzada al mercado mediante una estrategia de mercado denominada .NET. El ASP.NET fue desarrollado para resolver las limitantes que brindaba tu antecesor ASP. Creado para desarrollar web sencillas o grandes aplicaciones. Para el desarrollo de ASP.NET se puede utilizar C#, VB.NET o J#. Los archivos cuentan con la extensin (aspx). Para su funcionamiento de las pginas se necesita tener instalado IIS con el Framework .Net. Microsft Windows 2003 incluye este framework, solo se necesitar instalarlo en versiones anteriores.

Ventajas:

1. Completamente orientado a objetos. 2. Controles de usuario y personalizados. 3. Divisin entre la capa de aplicacin o diseo y el cdigo. 4. Facilita el mantenimiento de grandes aplicaciones.
17

Introduccin a la Informtica y Sistemas

5. Incremento de velocidad de respuesta del servidor. 6. Mayor velocidad. 7. Mayor seguridad. Desventajas:

1. Mayor consumo de recursos. Lenguaje JSP Es un lenguaje para la creacin de sitios web dinmicos, acrnimo de Java Server Pages. Est orientado a desarrollar pginas web en Java. JSP es un lenguaje multiplataforma. Creado para ejecutarse del lado del servidor. JSP fue desarrollado por Sun Microsystems. Comparte ventajas similares a las de ASP.NET, desarrollado para la creacin de aplicaciones web potentes. Posee un motor de pginas basado en los servlets de Java. Para su funcionamiento se necesita tener instalado un servidor Tomcat. Sintaxis: <%= new java.util.Date() %> Caractersticas:

1. Cdigo separado de la lgica del programa. 2. Las pginas son compiladas en la primera peticin. 3. Permite separar la parte dinmica de la esttica en las pginas web.
4. Los archivos se encuentran con la extensin (jsp).

5. El cdigo JSP puede ser incrustado en cdigo HTML. Elementos de JSP Los elementos que pueden ser insertados en las pginas JSP son los siguientes:
1. Cdigo: se puede incrustar cdigo Java. 2. Directivas: permite controlar parmetros del servlet. 3. Acciones: permite alterar el flujo normal de ejecucin de una pgina.

18

Introduccin a la Informtica y Sistemas

Ventajas:

1. Ejecucin rpida del servlets.

2. Crear pginas del lado del servidor. 3. Multiplataforma. 4. Cdigo bien estructurado. 5. Integridad con los mdulos de Java. 6. La parte dinmica est escrita en Java.
7. Permite la utilizacin se servlets.

Desventajas:

1. Complejidad de aprendizaje.

Lenguaje Python

Es un lenguaje de programacin creado en el ao 1990 por Guido van Rossum, es el sucesor del lenguaje de programacin ABC. Python es comparado habitualmente con Perl. Los usuarios lo consideran como un lenguaje ms limpio
19

Introduccin a la Informtica y Sistemas

para programar. Permite la creacin de todo tipo de programas incluyendo los sitios web. Su cdigo no necesita ser compilado, por lo que se llama que el cdigo es interpretado. Es un lenguaje de programacin multiparadigma, lo cual fuerza a que los programadores adopten por un estilo de programacin particular: Programacin orientada a objetos. Programacin estructurada. Programacin funcional. Programacin orientada a aspectos. Sintaxis: Ejemplo de una clase en Phyton: def dibujar_muneco(opcion): if opcion == 1: C.create_line(580, 150, 580, 320, width=4, fill="blue") C.create_oval(510, 150, 560, 200, width=2, fill='PeachPuff') Ventajas:

1. Libre y fuente abierta. 2. Lenguaje de propsito general. 3. Gran cantidad de funciones y libreras. 4. Sencillo y rpido de programar. 5. Multiplataforma.
6. Licencia de cdigo abierto (Opensource).

7. Orientado a Objetos. 8. Portable. Desventajas:

1. Lentitud por ser un lenguaje interpretado. Lenguaje Ruby Es un lenguaje interpretado de muy alto nivel y orientado a objetos. Desarrollado en el 1993 por el programador japons Yukihiro Matz Matsumoto. Su sintaxis
20

Introduccin a la Informtica y Sistemas

est inspirada en Phyton, Perl. Es distribuido bajo licencia de software libre (Opensource). Ruby es un lenguaje dinmico para una programacin orientada a objetos rpida y sencilla. Para los que deseen iniciarse en este lenguaje pueden encontrar un tutorial interactivo de ruby. Se encuentra tambin a disposicin de estos usuarios un sitio con informaciones y cursos en espaol. Sintaxis: puts "hola" Caractersticas:

1. Existe diferencia entre maysculas y minsculas. 2. Mltiples expresiones por lneas, separadas por punto y coma ;. 3. Dispone de manejo de excepciones. 4. Ruby puede cargar libreras de extensiones dinmicamente si el (Sistema Operativo) lo permite. 5. Porttil. Ventajas:

1. Permite desarrollar soluciones a bajo Costo. 2. Software libre. 3. Multiplataforma. LOS DIFERENTES LENGUAJES DE PROGRAMACION PARA ESCRITORIO: Java

El un lenguaje desarrollado por Sun microsystems con una sintaxis basada en C+ +.


21

Introduccin a la Informtica y Sistemas

La principal novedad que Java aporta es que no se compila habitualmente en cdigo nativo sino en bytecode. La compilacin en cdigo nativo no se realiza hasta la ejecucin de la aplicacin a travs de la mquina virtual. Es un camino a medias entre la interpretacin y la compilacin. La estrategia de no compilar en cdigo nativo hasta la ejecucin de la aplicacin tiene el objetivo principal de mejorar la portabilidad de las aplicaciones desarrolladas en Java. De hecho el lema de Java es:

Write once run everywhere (Escrbelo una vez y ejectalo donde quieras) Java en sus comienzos tena una fama de lenguaje lento. Actualmente su rendimiento ha mejorado considerablemente, debido a la mejora de los compiladores JIT (Just in Time) que "compilan" en la memoria el cdigo al cargar partes de l.

Valoracin personal Concepto Productividad Sencillez Conexin a bases de datos Valoraci Comentarios n Bien Bien Muy Bien

Portabilidad en diferentes Muy sistemas operativos Bien Rendimiento Proteccin del cdigo Precio Popularidad Bien Mal Muy Bien Muy
22

La carga de la aplicacin puede ser lenta. Es fcil con ingeniera inversa extraer el cdigo fuente si no se usa un ofuscador Gratuito

Introduccin a la Informtica y Sistemas

Alta Software Libre C# S

C# (pronunciado C Sharp) es el lenguaje favorito dentro de la plataforma .NET para Microsoft y la mayora de los programadores. C#, J# Visual Basic.NET son prcticamente equivalentes en cuanto a funcionamiento, aunque la sintaxis es ligeramente diferente.

Entorno de (C#,VB, etc)

Visual

Studio

Una ventaja de C# es que no tiene las connotaciones negativas que tiene Visual Basic para el mbito profesional. C

El C (junto con Assembler) es uno de los lenguajes ms conocidos y utilizados en toda la historia de la programacin. Sistemas operativos como Windows o Linux han sido programados casi enteramente en este lenguaje. Fue el lenguaje de programacin idneo para utilizar el conjunto de bibliotecas de funciones estndar de Windows (Win32 API). Ha sido lentamente desplazado por las nuevas bibliotecas y lenguajes como son MFC y C++, aunque muchos programadores opinan que MFC no es ms que un "wrapper" orientado a objetos de Windows API, ya que no disminuye mucho la complejidad y, en algunos casos, incluso la aumenta. Antes de existir C++ era el lenguaje ms utilizado para todo tipo de aplicaciones, debido a su versatilidad y rendimiento. An hoy no es un lenguaje que est olvidado. Al buscar en Internet se pueden encontrar muchsimos
23

Introduccin a la Informtica y Sistemas

proyectos (en SourgeForge, por ejemplo) que an utilizan C como lenguaje. La programacin orientada a objetos, a pesar de lo que digan sus defensores, no es para todo tipo de aplicaciones (o gustos). No es un lenguaje limitado tampoco. Prcticamente cualquier programa que se quiera se puede hacer con l, desde bases de datos, programas con una interfaz de usuario complicada, software de oficina, cientfico, multimedia, de inteligencia artificial, robtica, etc. La curva de aprendizaje de C con respecto a Visual Basic es mucho mayor, sin embargo, no es tanto como se piensa. Como con todo, algo puede parecer difcil si no se conoce a fondo. Es particularmente til en el campo de los videojuegos o en software que requiera explotar los recursos del computador en tiempo real. Assembler y C han sido los nicos lenguajes posibles en el mundo de las consolas de entretenimiento. El Atari 2600, el Nintendo, el Super Nintendo se programaban principalmente en Assembler. A partir de las nuevas versiones de Gameboy (en el mundo de Nintendo) se comenz a utilizar el C (y ltimamente el C++, despus del Game Boy Color) para programar los videojuegos. Los videojuegos siempre han sido un asunto de "bajo nivel", aunque las herramientas han evolucionado bastante. Las consolas modernas se programan con C/C++, principalmente. Las plataformas Xbox y Xbox 360 utilizan C/C++ y una versin especial de DirectX (de ah el nombre de la consola, viene de DirectX Box), por lo que no es un lenguaje del pasado, es algo an vivo. Est basado completamente en el paradigma de programacin estructurada. Sin embargo, puede usar elementos de la orientacin a objetos, simulndolos con apuntadores y tablas virtuales de funciones (que es bsicamente como funciona C++), por lo que es verstil. Genera cdigo directamente ejecutable, es un lenguaje compilado y no interpretado. Tiene algunos problemas, que se pueden subsanar con la experiencia. En particular, los errores de "Access violation" debido al uso indebido de apuntadores, carece de un tipo de datos "string" por lo que se tiene que usar el "char *", la falta de un sistema de memoria de reciclado (garbage collection),
24

Introduccin a la Informtica y Sistemas

entre otros. Sin embargo, cuando se tiene experiencia, estas desventajas se pueden sortear y prueba de ello es software robusto como Linux y las innumerables aplicaciones hechas con este lenguaje. C++

El C++ es uno de los lenguajes ms utilizados. La programacin se realiza a bajo nivel, lo que significa que se tiene un mayor control de la aplicacin y un mejor rendimiento, pero esto implica un importante incremento de la dificultad y una disminucin de la productividad. Es desaconsejable para iniciarse en la programacin por su dificultad. C++ genera cdigo nativo en la compilacin que es directamente ejecutable por el sistema operativo sin necesidad de una mquina virtual. Cuando fue construido, se quiso que fuera compatible con el C ANSI, por lo que tiene 2 paradigmas: programacin estructurada (heredada de C) y programacin orientada a objetos. Estos 2 paradigmas pueden ser mezclados en el mismo programa Por tanto C++ no es puramente orientado a objetos como puede ser el C# o Java, lenguajes construidos de cero hace unos pocos aos. Es muy famosa la cita de Alan Kay: Yo invent el trmino "Orientado a Objetos", y te puedo asegurar que C++ no era en lo que estaba pensando.[6] El C++ es un estndar abierto del que existen multitud que compiladores de diferentes fabricantes (Microsoft, Borland, etc.) La dificultad del C++ no son las instrucciones o la sintaxis (aadir un "if"). Sino las llamadas a las libreras, declaracin de eventos, visualizacin, punteros, control de la memoria, etc. Programar en C++ bajo MS-DOS no es demasiado es difcil, pero hacerlo bajo Windows es bastante ms farragoso.

Campo de actuacin: ptimo para aplicaciones comerciales de escritorio. (tipo Office) En el entorno Web cuando se necesita un rendimiento muy elevado (por ejemplo el buscador Google est programado en C++)
25

Introduccin a la Informtica y Sistemas

Valoracin personal de C++

Concepto Productividad Sencillez

Valoraci Comentarios n Mal Mal

Conexin a bases de Regular datos Portabilidad en diferentes sistemas Regular operativos Rendimiento Precio Popularidad Software Libre Muy Bien Bien Alta segn Versin Hay versiones gratuitas El lenguaje es estndar para todos los sistemas operativos. El problema est en las libreras que en muchas ocasiones son dependientes del sistema operativo

Proteccin del cdigo Muy Bien

BASE DE DATOS

26

Introduccin a la Informtica y Sistemas

Qu es una base de datos? Base de Datos es un conjunto de datos relacionados entre s y que tienen un significado implcito. Una base de datos (cuya abreviatura es BD) es una entidad en la cual se pueden almacenar datos de manera estructurada, con la menor redundancia posible. Diferentes programas y diferentes usuarios deben poder utilizar estos datos. Por lo tanto, el concepto de base de datos generalmente est relacionado con el de red ya que se debe poder compartir esta informacin. De all el trmino base. "Sistema de informacin" es el trmino general utilizado para la estructura global que incluye todos los mecanismos para compartir datos que se han instalado. Las Bases de Datos son programas que administran informacin y hacen ms ordenada la informacin, aparte de hacerla fcil de buscar. Sus caractersticas pueden ser ventajosas o desventajosas: pueden ayudarnos para almacenar, organizar, recuperar, comunicar y manejar informacin en formas que seran imposibles sin los computadores, pero tambin nos afecta de alguna manera ya que existen enormes cantidades de informacin en bases de datos de las que no se tiene control del acceso Las bases de Datos tienen muchos usos: nos facilitan el almacenamiento de grandes cantidades de informacin; permiten la recuperacin rpida y flexible de informacin, con ellas se puede organizar y reorganizar la informacin, as como imprimirla o distribuirla en formas diversas. Algunos paquetes comerciales manejadores de Bases de Datos son: El file Marker Pro, ProQuest Periodical Abstracts, Organizer de Lotus y Far Side Calendar de Amaze.

27

Introduccin a la Informtica y Sistemas

CONSEPTOS BASICOS Dato: Informacin que una computadora registra y almacena. Entidades: Una entidad es todo aquello de lo cual interesa guardar datos, por ejemplo: clientes, facturas, productos, empleados. En el Modelo de EntidadRelacin que se presenta, se observa que las entidades estn formadas por atributos o campos referidos a un mismo tema que interesa almacenar. Campo: es cada trozo discreto de informacin en un registro. Registro: es la informacin relacionada con una persona, un producto o suceso. En una BdeD un simple archivo es un conjunto de registros. Archivo: es una coleccin de informacin relacionada. En l la informacin se guarda como si fuera un archivero. Claves Primarias y Forneas: Cada entidad tiene una clave primaria o campo llave que identifica unvocamente al conjunto de datos. Cuando en una entidad figura la clave primaria de otra entidad, sta se denomina clave fornea.
28

Introduccin a la Informtica y Sistemas

Las entidades se relacionan entre s a travs de las claves forneas. Consulta: puede ser una bsqueda simple de un registro especfico o una solicitud para seleccionar todos los registros que satisfagan un conjunto de criterios. Reporte o informe: es una lista ordena de los campos y registros seleccionados en un formato fcil de leer. Numricos: se pueden introducir nmeros para identificar partes del archivo, esto identifica la parte que numera al archivo o lo distingue de alguna manera. Texto: el texto es un nombre que identifica al campo, ya sea el nombre del autor o Etiquetas: son los ttulos con los que cada campo es designado. Frmulas: son datos que aparecen como numricos pero fueron hechos por medio de frmulas

Tipos de datos que se pueden introducir a una base de datos son:

Un paquete manejador de bases de datos es ms conveniente cuando se est trabajando con bases de datos, y un administrador de archivos se usa ms cuando slo se est buscando un archivo desde un procesador de textos.

Por qu utilizar una base de datos? Una base de datos proporciona a los usuarios el acceso a datos, que pueden visualizar, ingresar o actualizar, en concordancia con los derechos de acceso que se les hayan otorgado. Se convierte ms til a medida que la cantidad de datos almacenados crece. Una base de datos puede ser local, es decir que puede utilizarla slo un usuario en un equipo, o puede ser distribuida, es decir que la informacin se almacena en equipos remotos y se puede acceder a ella a travs de una red. La principal ventaja de utilizar bases de datos es que mltiples usuarios pueden acceder a ellas al mismo tiempo.

Administracin de bases de datos Rpidamente surgi la necesidad de contar con un sistema de administracin para controlar tanto los datos como los usuarios. La administracin de bases de datos se realiza con un sistema llamado DBMS (Database management system [Sistema de
29

Introduccin a la Informtica y Sistemas

administracin de bases de datos]). El DBMS es un conjunto de servicios (aplicaciones de software) para administrar bases de datos, que permite: un fcil acceso a los datos el acceso a la informacin por parte de mltiples usuarios la manipulacin de los datos encontrados en la base de datos (insertar, eliminar, editar)

El DBMS puede dividirse en tres subsistemas:


El sistema de administracin de archivos: para almacenar informacin en un medio fsico El DBMS interno: para ubicar la informacin en orden El DBMS externo: representa la interfaz del usuario

PRINCIPALES GESTORES DE BASE DE DATOS Los Sistemas de Gestin de Bases de Datos (SGBD) se han convertido en parte fundamentales de la estrategia de las empresas. El valor de una informacin actualizada ha crecido tanto que las empresas que quieran incrementar o mantener su productividad deberan gestionar eficientemente todos los datos que manejan, y la mejor herramienta es un SGBD. Dado que disponemos de varias opciones, resulta imprescindible contar con elementos de juicio a la hora de optar por una u otra solucin, cul se adecua mejor a nuestras necesidades?

30

Introduccin a la Informtica y Sistemas

Un sistema de gestin de bases de datos (SGBD; en ingls, Database Management System: DBMS) es un conjunto de programas que permite a los usuarios crear y mantener una base de datos. Si bien, no es imprescindible contar con un SGBD para implementar una base de datos, este software de uso general facilita el proceso de definir, construir y manipular bases de datos para diversas aplicaciones.

Entorno simplificado de un SGBD :

Cargos vinculados a un SGBD :


Administrador de bases de datos

Se encarga de autorizar el acceso a la base de datos, de coordinar y vigilar su empleo, y de adquirir los recursos necesarios de software y hardware.
Diseador de bases de datos

Antes de implementar la base de datos identifica los datos que se almacenarn y elige las estructuras apropiadas para representar y almacenar dichos datos. Usuarios Finales Son los principales destinatarios de la base de datos. Son quienes tienen acceso a la base de datos para consultarla, actualizarla y generar informes. Este es el rol que ms frecuentemente desempea el Tcnico en Administracin con relacin de las Bases de Datos. Analistas de sistemas y programadores Los analistas y programadores para implementar las especificaciones del sistema deben conocer a la perfeccin todas las capacidades del SGBD. El Tcnico en
31

Introduccin a la Informtica y Sistemas

Administracin que integra un equipo de desarrollo interacta con los analistas y programadores. Diseadores e implementadores del SGBD Se encargan de disear e implementar los mdulos e interfaces del SGBD en forma de paquetes de software. Creadores de herramientas Desarrollan e implementar paquetes para disear bases de datos, vigilar el rendimiento, proporcionar interfaces de lenguaje natural o de grficos, elaborar prototipos, realizar simulaciones y generar datos de prueba. Operadores y personal de mantenimiento Tienen a su cargo el funcionamiento y mantenimiento reales del entorno de hardware y software del sistema de base de datos. Caractersticas deseables en un SGBD Restriccin de los accesos no autorizados Control de la redundancia. Almacenamiento persistente de objetos y estructuras de datos de programas Inferencias en la base de datos mediante reglas de deduccin Suministro de mltiples interfaces con los usuarios Representacin de vnculos complejos entre los datos Cumplimiento de las restricciones de integridad Respaldo y recuperacin Potencial para imponer normas Menor tiempo de creacin de aplicaciones Flexibilidad Disponibilidad de informacin actualizada Economas de escala SGBD libres y comerciales A continuacin mostramos una lista de los SGBD ms comnmente usados, distinguiendo entre los SGBD libres y los comerciales. Libres:
32

Introduccin a la Informtica y Sistemas

PostgreSQL

Es un sistema de gestin de base de datos relacional orientada a objetos de software libre, publicado bajo la licencia BSD. Como muchos otros proyectos open source, el desarrollo de PostgreSQL no es manejado por una sola compaa sino que es dirigido por una comunidad de desarrolladores y organizaciones comerciales las cuales trabajan en su desarrollo. Dicha comunidad es denominada el PGDG (PostgreSQL Global Development Group). Caractersticas Algunas de sus principales caractersticas son, entre otras: Alta concurrencia Mediante un sistema denominado MVCC (Acceso concurrente multiversin, por sus siglas en ingls) PostgreSQL permite que mientras un proceso escribe en una
33

Introduccin a la Informtica y Sistemas

tabla, otros accedan a la misma tabla sin necesidad de bloqueos. Cada usuario obtiene una visin consistente de lo ltimo a lo que se le hizo commit. Esta estrategia es superior al uso de bloqueos por tabla o por filas comn en otras bases, eliminando la necesidad del uso de bloqueos explcitos. Amplia variedad de tipos nativos

PostgreSQL provee nativamente soporte para: Nmeros de precisin arbitraria. Texto de largo ilimitado. Figuras geomtricas (con una variedad de funciones asociadas) Direcciones IP (IPv4 e IPv6). Bloques de direcciones estilo CIDR. Direcciones MAC. Arrays. Adicionalmente los usuarios pueden crear sus propios tipos de datos, los que pueden ser por completo indizables gracias a la infraestructura GiST de PostgreSQL. Algunos ejemplos son los tipos de datos GIS creados por el proyecto PostGIS.

Otras caractersticas Claves ajenas tambin denominadas Llaves ajenas o Claves Forneas (foreign keys). Disparadores (triggers): Un disparador o trigger se define en una accin especfica basada en algo ocurrente dentro de la base de datos. En PostgreSQL esto significa la ejecucin de un procedimiento almacenado basado en una determinada accin sobre una tabla especfica. Ahora todos los disparadores se definen por seis caractersticas: El nombre del trigger o disparador El momento en que el disparador debe arrancar El evento del disparador deber activarse sobre... La tabla donde el disparador se activara La frecuencia de la ejecucin La funcin que podra ser llamada Entonces combinando estas seis caractersticas, PostgreSQL le permitir crear una amplia funcionalidad a travs de su sistema de activacin de disparadores (triggers). Vistas. Integridad transaccional. Herencia de tablas.
34

Introduccin a la Informtica y Sistemas

Tipos de datos y operaciones geomtricas.

Funciones Bloques de cdigo que se ejecutan en el servidor. Pueden ser escritos en varios lenguajes, con la potencia que cada uno de ellos da, desde las operaciones bsicas de programacin, tales como bifurcaciones y bucles, hasta las complejidades de la programacin orientada a objetos o la programacin funcional. Los disparadores (triggers en ingls) son funciones enlazadas a operaciones sobre los datos. Algunos de los lenguajes que se pueden usar son los siguientes: Un lenguaje propio llamado [PL/PgSQL [1] [2](similar al PL/SQL de oracle). C. C++. Gambas. Java PL/Java web. PL/Perl. plPHP. PL/Python. PL/Ruby. PL/sh. PL/Tcl. PL/Scheme. Lenguaje para aplicaciones estadsticas R por medio de PL/R. PostgreSQL soporta funciones que retornan "filas", donde la salida puede tratarse como un conjunto de valores que pueden ser tratados igual a una fila retornada por una consulta (query en ingls). Las funciones pueden ser definidas para ejecutarse con los derechos del usuario ejecutor o con los derechos de un usuario previamente definido. El concepto de funciones, en otros DBMS, son muchas veces referidas como "procedimientos almacenados".

35

Introduccin a la Informtica y Sistemas

MySQL

Es un sistema de gestin de base de datos relacional, multihilo y multiusuario con ms de seis millones de instalaciones.1MySQL AB desde enero de 2008 una subsidiaria de Sun Microsystems 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 especfica 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 pblica y el copyright del cdigo est en poder del autor individual, MySQL es propietario y est patrocinado por una empresa privada, que posee el copyright de la mayor parte del cdigo. Esto es lo que posibilita el esquema de licenciamiento anteriormente mencionado. Adems de la venta de licencias privativas, la compaa ofrece soporte y servicios. Para sus operaciones contratan trabajadores alrededor del mundo que colaboran va Internet. MySQL AB fue fundado por David Axmark, Allan Larsson, y Michael Widenius.
36

Introduccin a la Informtica y Sistemas

Plataformas MySQL funciona sobre mltiples plataformas, incluyendo: AIX BSD FreeBSD HP-UX GNU/Linux Mac OS X NetBSD Novell Netware OpenBSD OS/2 Warp QNX SGI IRIX Solaris SunOS SCO OpenServer SCO UnixWare Tru64 eBD Windows 95, Windows 98, Windows NT, Windows 2000, Windows XP, Windows Vista y otras versiones de Windows. OpenVMS Mejoras futuras El mapa de ruta de MySQL 5.1 indica soporte para: Particionado de la base de datos Backup en lnea para todos los motores de almacenamiento Replicacin segura Restricciones a nivel de columna Planificacin de eventos Funciones XML Tipos de compilacin del servidor Hay tres tipos de compilacin del servidor MySQL: Estndar: Los binarios estndar de MySQL son los recomendados para la mayora de los usuarios, e incluyen el motor de almacenamiento InnoDB.
37

Introduccin a la Informtica y Sistemas

Max (No se trata de MaxDB, que es una cooperacin con SAP): Los binarios incluyen caractersticas adicionales que no han sido lo bastante probadas o que normalmente no son necesarias. MySQL-Debug: Son binarios que han sido compilados con informacin de depuracin extra. No debe ser usada en sistemas en produccin porqu el cdigo de depuracin puede reducir el rendimiento.

Apache Derby Es un sistema gestor de de base de datos relacional escrito en Java quepuede ser embebido en aplicaciones Java y utilizado para procesos de transaccionesonline. Tiene un tamao de 2 MB de espacio en disco. Inicialmente distribuido comoIBM Cloudscape, Apache Derby es un proyecto open source licenciado bajo la Apache 2.0 License. Actualmente se distribuye como Sun Java DB. Caractersticas

APIs para JDBC y SQL. Soporta todas las caractersticas de SQL92 y la mayora de SQL99. Su cdigo mide alrededor de 2000KB comprimido. Soporta cifrado completo, roles y permisos. Adems posee SQL SCHEMAS para separar la informacin en una nica base de datos y control completo de usuarios. Soporta internamente procedures, cifrado y compresin. Trae soporte multilenguaje y localizaciones especficas. A partir de la versin 10.4 trae un sistema simple de replicacin maestro-esclavo. Transacciones y recuperacin ante errores ACID. Posee tres productos asociados a la marca: Derby Embedded Database Engine: El motor propiamente dicho. Derby Network Server: Permite convertir Derby en una base de datos que sigue el modelo cliente-servidor tradicional. Database Utilities: Un paquete de utilidades. No Libres

Oracle

38

Introduccin a la Informtica y Sistemas

Es un sistema de gestin de base de datos relacional (o RDBMS por el acrnimo en ingls de Relational Data Base Management System), fabricado por Oracle Corporation.Se considera a Oracle como uno de los sistemas de bases de datos ms completos, destacando su:Soporte de transacciones. Estabilidad. Escalabilidad. Es multiplataforma. Su mayor defecto es su enorme precio, que es de varios miles de euros (segn versiones y licencias). Otro aspecto que ha sido criticado por algunos especialistas es la seguridad de la plataforma, y las polticas de suministro de parches de seguridad, modificadas a comienzos de 2005 y que incrementan el nivel de exposicin de los usuarios. En los parches de actualizacin provistos durante el primer semestre de 2005 fueron corregidas 22 vulnerabilidades pblicamente conocidas, algunas de ellas con una antigedad de ms de 2 aos.Aunque 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 Linux. Es un sistema de gestin de bases de datos relacionales (SGBD) basada en el lenguaje Transact-SQL, capaz de poner a disposicin de muchos usuarios grandes cantidades de datos de manera simultnea. As de tener unas ventajas que a continuacin se pueden describir. Entre sus caractersticas figuran:Soporte de transacciones. Escalabilidad, estabilidad y seguridad. Soporta procedimientos almacenados. Incluye tambin un potente entorno grfico de administracin, que permite el uso de comandos DDL y DML grficamente. Permite trabajar en modo cliente-servidor donde la informacin y datos se alojan en el servidor y las terminales o clientes de la red slo acceden a la informacin. Adems permite administrar informacin de otros servidores de datos Este sistema incluye una versin reducida, llamada MSDE con el mismo motor de base de datos pero orientado a proyectos ms pequeos, que en su versin 2005 pasa a ser el SQL Express Edition.Microsoft SQL Server constituye la alternativa de Microsoft a otros sistemas gestores de bases de datos como son Oracle, Sybase ASE o MySQL.Es comn desarrollar completos proyectos complementando Microsoft SQL Server y Microsoft Access a travs de los llamados ADP (Access Data Project). De esta forma se completa una potente base de datos (Microsoft SQL Server) con un entorno de desarrollo cmodo y de alto rendimiento (VBA Access) a travs de la implementacin de aplicaciones de dos capas mediante el uso de formularios Windows.Para el desarrollo de aplicaciones ms complejas (tres o ms capas), Microsoft SQL Server incluye interfaces de acceso para varias plataformas de desarrollo, entre
39

Microsoft SQL Server

Introduccin a la Informtica y Sistemas

ellas .NET.Microsoft SQL Server, al contrario de su ms cercana competencia, no es multiplataforma, ya que slo est disponible en Sistemas Operativos de Microsoft.Paradox (base de datos)Base de datos relacional para entorno MS Windows, anteriormente disponible para MS-DOS y Linux, desarrollada actualmente por Corel e incluida en la suite ofimtica WordPerfect Office.En los tiempos del MS-DOS, era una base de datos de bastante xito, compitiendo con dBase, Clipper y FoxBase. Pas al control de Borland despus de la compra de Ansa Software en 1987.Aunque Borland la port a Windows, su cuota de mercado es mucho menor que la de Microsoft Access, pero su lenguaje de programacin (Objectpal) es Pascal lo que le hace ms potente que Access que usa Visual Basic que limita bastante sus prestaciones si se compara con otras bases de datos que usan lenguajes ms avanzados. DB2 Muchos expertos de la industria y usuarios han elogiado las nuevas herramientas que IBM desarrollo para facilitar la administracin y uso de DB2 Universal Database, constituido en base a dos productos incluidos en el DB2 de AIX en 1994: el DB2 Common Server, que para propsitos generales inclua funciones avanzadas para el mercado de servidores de bases de datos con soporte de hardware SMP y OLTP; y el DB2 Parallel Edition, que fue desarrollado para soportar aplicaciones de gran escala, como el Data Warehousing y Data Minino y aplicaciones de negocios a nivel mundial como la SAP, People Soft y Baan.Permite el manejo de objetos grandes (hasta 2 GB), la definicin de datos y funciones por parte del usuario, el chequeo de integridad referencial, SQL recursivo, soporte multimedia: texto, imgenes, video, audio; queries paralelos, commit de dos fases, backup/recuperacin online y offline.Adems cuenta con un monitor grfico de performance el cual posibilita observar el tiempo de ejecucin de una sentencia SQL y corregir detalles para aumentar el rendimiento.Mediante los extensores se realiza el manejo de los datos no tradicionales, por ejemplo si tengo un donde tengo almacenados los curriculums de varias personas, mediante este puedo realizar bsquedas documentos con los datos que me interesen sin tener que ver los CV uno por uno.Esta capacidad se utiliza en sistemas de bsqueda de personas por huellas digitales, en sistemas informacin geogrfica, etc. Visual FoxPro es un lenguaje de programacin procedural, orientado a objetos que posee un Sistema Gestor de Bases de datos o Database Management System (DBMS) y Sistema administrador de bases de datos relacionales, producido por Microsoft.
40

Introduccin a la Informtica y Sistemas

Caractersticas
Visual FoxPro ofrece a los desarrolladores un conjunto de herramientas para crear aplicaciones de bases de datos para el escritorio, entornos cliente/servidor, tablet PC o para la Web. En 2009, se descubri que todas la empresas que utilizaban este programa, tenian problemas con otro software que no fuese de microsoft. Por ataques de dicha empresa.

Entre sus caractersticas se pueden enumerar: Capacidades para el manejar datos nativos y remotos. Flexibilidad para crear soluciones de bases de datos. Lenguaje de Programacin Orientado a objetos. Utilizacin de Sentencias SQL en forma nativa. Manejo de vistas, cursores y control completo de estructuras relacionales. Su propio gestor de base de datos incorporado. Sin embargo, tambin puede conectarse con servidores de base de datos, tales como Oracle, Microsoft SQL Server o MySQL. Cuenta con un motor de generacin de informes renovado y flexible para soluciones ms robustas. Desde la versin 9.0, amplio soporte de XML, tanto como fuente de datos (por ej., servicios Web basados en XML) como por generar reportes en formato XML.

41

Introduccin a la Informtica y Sistemas

http://www.monografias.com/trabajos38/tipos-lenguajes-programacion/tiposlenguajesprogramacion2.shtml http://www.frt.utn.edu.ar/sistemas/paradigmas/lenguajes.htm http://www.maestrosdelweb.com/principiantes/los-diferentes-lenguajes-deprogramacion-para-la-web/ http://knol.google.com/k/qu%C3%A9-lenguaje-de-programaci%C3%B3n-escoger# http://www.lcc.uma.es/~galvez/ftp/bdst/Tema2.pdf http://wwwdi.ujaen.es/~barranco/publico/ofimatica/tema7.pdf http://es.kioskea.net/contents/bdd/bddintro.php3 http://admin-info.galeon.com/gestor.pdf

42

Introduccin a la Informtica y Sistemas

Anda mungkin juga menyukai