miércoles, 21 de mayo de 2008

MODELO ENTIDAD RELACION

QUE ES EL MODELO ENTIDAD RELACION


Es uno de los varios modelos conceptuales existentes para el diseño de una base de datos cuyo proposito es simplificar el diseño de base de datos a partir de descripciones textuales de los requerimientos, los elementos esenciales del modelo son las entidades(tablas,los atributos)(campos)y sus relaciones.

QUE ES UNA RELACION

Es una asociación entre entidades general/ dos tablas o mas .

QUE ES UNA NORMALIZACION

Es una tecnica que se utiliza para crear relaciones logicas apropiadas entre tablas ayuda a prevenir errores logicos en la manipulación de datos la normalizacion facilita tambien a agregar nuevas columnas o campos sin romper el esquema actual ni las relaciones

EXISTEN VARIOS TIPOS DE NORMALIZACION

Primera forma normal (1 F N)
Segunda forma normal (2 F N)
Tercera forma normal (3 F N)

En la 1 F N: las columnas repetidas deben eliminarsen
En la 2 F N: todas las dependencias parciales deben eliminarse y separarsen dentro de sus tablas

lunes, 19 de mayo de 2008

Historia de las Bases de Datos

Fundamentos de Bases de Datos

Conectar una base de datos My SQL Server 2005 en una aplicacion Web

Programacion en Visual Basic

Clasificacion de los Lenguajes de Programacion

Los lenguajes de programación se determinan según el nivel de abstracción, Según la forma de ejecución y Según el paradigma de programación que poseen cada uno de ellos y esos pueden ser:

Lenguajes de bajo nivel

Los lenguajes de bajo nivel son lenguajes de programación que se acercan al funcionamiento de una computadora. El lenguaje de más bajo nivel es, por excelencia, el código máquina. A éste le sigue el lenguaje ensamblador, ya que al programar en ensamblador se trabajan con los registros de memoria de la computadora de forma directa.

Lenguajes de medio nivel

Hay lenguajes de programación que son considerados por algunos expertos como lenguajes de medio nivel (como es el caso del lenguaje C) al tener ciertas características que los acercan a los lenguajes de bajo nivel pero teniendo, al mismo tiempo, ciertas cualidades que lo hacen un lenguaje más cercano al humano y, por tanto, de alto nivel.

Lenguajes de alto nivel

Los lenguajes de alto nivel son normalmente fáciles de aprender porque están formados por elementos de lenguajes naturales, como el inglés. En BASIC, el lenguaje de alto nivel más conocido, los comandos como "IF CONTADOR = 10 THEN STOP" pueden utilizarse para pedir a la computadora que pare si CONTADOR es igual a 10. Por desgracia para muchas personas esta forma de trabajar es un poco frustrante, dado que a pesar de que las computadoras parecen comprender un lenguaje natural, lo hacen en realidad de una forma rígida y sistemática.

Según la forma de ejecución

Lenguajes compilados

Naturalmente, un programa que se escribe en un lenguaje de alto nivel también tiene que traducirse a un código que pueda utilizar la máquina. Los programas traductores que pueden realizar esta operación se llaman compiladores. Éstos, como los programas ensambladores avanzados, pueden generar muchas líneas de código de máquina por cada proposición del programa fuente. Se requiere una corrida de compilación antes de procesar los datos de un problema.

Los compiladores son aquellos cuya función es traducir un programa escrito en un determinado lenguaje a un idioma que la computadora entienda (lenguaje máquina con código binario).

Al usar un lenguaje compilado (como lo son los lenguajes del popular Visual Studio de Microsoft), el programa desarrollado nunca se ejecuta mientras haya errores, sino hasta que luego de haber compilado el programa, ya no aparecen errores en el código

Lenguajes interpretados

Se puede también utilizar una alternativa diferente de los compiladores para traducir lenguajes de alto nivel. En vez de traducir el programa fuente y grabar en forma permanente el código objeto que se produce durante la corrida de compilación para utilizarlo en una corrida de producción futura, el programador sólo carga el programa fuente en la computadora junto con los datos que se van a procesar. A continuación, un programa intérprete, almacenado en el sistema operativo del disco, o incluido de manera permanente dentro de la máquina, convierte cada proposición del programa fuente en lenguaje de máquina conforme vaya siendo necesario durante el proceso de los datos. No se graba el código objeto para utilizarlo posteriormente.

La siguiente vez que se utilice una instrucción, se le debe interpretar otra vez y traducir a lenguaje máquina. Por ejemplo, durante el procesamiento repetitivo de los pasos de un ciclo, cada instrucción del ciclo tendrá que volver a ser interpretado cada vez que se ejecute el ciclo, lo cual hace que el programa sea más lento en tiempo de ejecución (porque se va revisando el código en tiempo de ejecución) pero más rápido en tiempo de diseño (porque no se tiene que estar compilando a cada momento el código completo). El intérprete elimina la necesidad de realizar una corrida de compilación después de cada modificación del programa cuando se quiere agregar funciones o corregir errores; pero es obvio que un programa objeto compilado con antelación deberá ejecutarse con mucha mayor rapidez que uno que se debe interpretar a cada paso durante una corrida de producción.

Según el paradigma de programación
Paradigma de programación

Un paradigma de programación representa un enfoque particular o filosofía para la construcción del software. No es mejor uno que otro sino que cada uno tiene ventajas y desventajas. También hay situaciones donde un paradigma resulta más apropiado que otro.

Atendiendo al paradigma de programación, se pueden clasificar los lenguajes en :

Lenguajes imperativos

* BASIC
* C
* C++
* Java
* C#
* Perl

Lenguajes Funcionales

Puros:

* Haskell
* Miranda

Híbridos:

* Lisp
* Scheme
* Ocaml
* Standard ML
* ML
* Scala

Lenguajes Logicos

* Prolog

Lenguajes orientados a objetos
Programación orientada a objetos

* ActionScript
* Ada
* C++
* C#
* VB.NET
* Visual FoxPro
* Delphi
* Java
* JavaScript
* Perl (soporta herencia múltiple)
* PHP (en su versión 5)
* Python
* Ruby

Algunos lenguajes de programación

* ABAP
* ActionScript
* ASP
* ASP.NET
* BASIC
* C
* C++
* C#
* Clipper
* COBOL
* Delphi
* Ensamblador
* FORTRAN
* Java
* JavaScript
* Lisp
* Logo
* Miranda
* Pascal
* Perl
* PHP
* PL/1
* PostScript
* PowerBuilder
* Prolog
* Python
* RPG
* Ruby
* Smalltalk
* VBA
* Visual Basic
* Visual C++
* Visual Foxpro

Lenguaje de Programacion

Un lenguaje de programación es un lenguaje que puede ser utilizado para controlar el comportamiento de una máquina, particularmente una computadora. Consiste en un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones.

Un lenguaje de programación permite a uno o más programadores especificar de manera precisa: sobre qué datos una computadora debe operar, cómo deben ser estos almacenados, transmitidos y qué acciones debe tomar bajo una variada gama de circunstancias. Todo esto, a través de un lenguaje que intenta estar relativamente próximo al lenguaje humano o natural, tal como sucede con el lenguaje Léxico. Una característica relevante de los lenguajes de programación es precisamente que más de un programador puedan tener un conjunto común de instrucciones que puedan ser comprendidas entre ellos para realizar la construcción del programa de forma colaborativa.

Los procesadores usados en las computadoras son capaces de entender y actuar según lo indican programas escritos en un lenguaje fijo llamado lenguaje de máquina. Todo programa escrito en otro lenguaje puede ser ejecutado de dos maneras:

* Mediante un programa que va adaptando las instrucciones conforme son encontradas. A este proceso se lo llama interpretar y a los programas que lo hacen se los conoce como intérpretes.
* Traduciendo este programa al programa equivalente escrito en lenguaje de máquina. A ese proceso se lo llama compilar y al traductor se lo conoce como un malhecho compilador.

¿Que es un Algoritmo?

Un algoritmo es una lista bien definida, ordenada y finita de operaciones que permite hallar la solución a un problema. Dado un estado inicial y una entrada, a través de pasos sucesivos y bien definidos se llega a un estado final, obteniendo una solución.

Conocer los Conceptos de Algoritmos

Los algoritmos se utilizan para encontrar soluciones a un problema. No siguen reglas para la búsqueda de la solución, simplemente una búsqueda sistemática, que más o menos viene a significar que hay que probar todo lo posible hasta encontrar la solución o encontrar que no existe solución al problema. Para conseguir este propósito, se separa la búsqueda en varias búsquedas parciales o subtareas. Asimismo, estas subtareas suelen incluir más subtareas, por lo que el tratamiento general de estos algoritmos es de naturaleza recursiva.
Puesto que a veces nos interesa conocer múltiples soluciones de un problema, estos algoritmos se pueden modificar fácilmente para obtener una única solución (si existe) o todas las soluciones posibles (si existe más de una) al problema dado.