Está en la página 1de 6

Tarea N2 Programacin para la integracin de sistemas.

Nombre: Cristian Fuentes Salgado. Fecha: 22/03/11.

Indice
Introduccin:..............................................................................................................................................3 Compilador:...............................................................................................................................................3 Interprete:...................................................................................................................................................3 Lenguaje Interpretado:...............................................................................................................................3 Diferencias Generales:...............................................................................................................................4 Diferencias Especificas:.............................................................................................................................4 Estructura de tipos de datos:......................................................................................................................5 Conclusiones:.............................................................................................................................................6

Introduccin:
Este resumen pretende explicar a grandes rasgos las diferencias entre un compilador y un intrprete de comandos. La mejor manera de entender y decidir cual es la mejor forma, o el mejor camino para solucionar un problemtica, es investigar sobre las posibilidades. Es por esto que debemos investigar y comparar entre los lenguajes Compilados y los lenguajes Interpretados. As sabremos cuales son las ventajas y desventajas entre ellos, y determinar en distintos casos cual es la mejor opcin para la solucin de algn problema relacionado con el desarrollo de software.

Compilador:
Un compilador es un software mediante el cual, comnmente, es transformado un cdigo de alto nivel a un lenguaje mas cercano a la maquina o el cual la maquina pueda interpretar automticamente (Lenguaje de maquina o de bajo nivel). El proceso mediante el cual este cdigo es transformado en un lenguaje de maquina se denomina compilacin, y es la suma de diversos proceso mediante el cual el cdigo es analizado y optimizado.

Interprete:
Un interprete es un software que interpreta instrucciones en lenguaje de alto nivel y las ejecuta en tiempo real en la maquina. En pocas palabras ejecuta un programa. El interprete no realiza la traduccin a lenguaje de maquina, sino que intenta analizar y realizar las instrucciones en tiempo real en la maquina en la cual estn siendo ejecutadas las instrucciones.

Lenguaje Interpretado:
Un lenguaje interpretado o lenguaje de Script, es que utiliza un interprete para ser ejecutado. La ventaja de los lenguajes interpretados es que son ms portables. Un lenguaje interpretado interesante para analizar es Python. Python contiene muchas caractersticas de un lenguaje compilado, sin embargo sigue siendo ms orientado a la ejecucin mediante intrprete. La principal caracterstica que lo convierte en un lenguaje Semi Interpretado es que el cdigo fuente es transformado en un cdigo optimizado (bytecode) en el momento de la primera ejecucin, generando archivos o scripts con este bytecode, que sern ejecutados en repetidas ocasiones.

Diferencias Generales:
Un compilador genera un archivo ejecutable, en cambio los interpretes no generan este archivo, sino que mas bien van ejecutando en tiempo real las instrucciones. En un compilador el proceso de traduccin se realiza una sola vez, en cambio en los intrpretes en cada ejecucin es realizada la traduccin. Es por esta razn por la que la ejecucin de un cdigo compilado es mas rpida, debido a que el cdigo ya esta traducido a lenguaje de maquina, mientras que en un interprete debe ser traducido cada vez que se ejecuta. Un cdigo compilado y que ha sido transformado en un ejecutable, siempre estar orientado a la plataforma para la cual ha sido compilado. Esto se debe a que se debe traducir el cdigo a la arquitectura de la plataforma en la cual se ejecutara. Un interprete, al no haber archivo ejecutable, es mucho mas fcil que un cdigo sea ejecutado en cualquier plataforma, mientras esta cuente con un interprete para este lenguaje.

Diferencias Especificas:
JAVA De tipos estticos: En java las variables son siempre declaradas con anticipacin y no pueden tomar valores que no correspondan al tipo de la variable. PYTHON De tipos Dinmicos: En python las variables no son declaradas. Mediante asignacin un objeto toma un valor y es automticamente asignado el tipo al cual corresponde. Adems ese mismo objeto o variable puede ser asignada con otro tipo de dato,. Conciso: Mediante simples y directas instrucciones es posible realizar las acciones a las cuales corresponden. Ej: print(Hola Mundo)

Muchas palabras y poca accin: se utilizan muchas palabras para poder realizar una sola accin. Ej: System.out.println(Hola Mundo);

Archivos para cada clase: en java cada clase tiene Muchas clases en un archivo: en python se que ser definida en su propio archivo. Es decir que pueden declarar varias clases en un solo archivo. si tenemos 5 clases, necesitaremos 5 archivos. Excepciones: java maneja las excepciones para evitar mensajes de error y cadas aparatosas en el funcionamiento de un programa. Ej: public static void main(String[] args) { try { // Se ejecuta algo que puede producir una excepcin } } catch (Exception e) { // manejo de una excepcin cualquiera }} Excepciones: en python cuando se genera un error de ejecucion, se lanza una excepcin, que es un mensaje informando al usuario que existe una situacin excepcional dentro del programa. Ej: try: num = int(3a) print no_existe except NameError: print La variable no existe

Estructura de tipos de datos:


Java Utiliza tipos de datos estticos, donde un objeto declarado tiene un tipo, y solo se le pueden asignar valores correspondientes a ese tipo. El compilador se encarga de verificar que cada vez que se le sea asignado algn valor a ese objeto, ese valor corresponda al tipo con el cual el objeto fue declarado.

Python Utiliza tipos de datos dinmicos, donde un objeto solo es definido con su nombre, el tipo de dato que contendr se definir en el momento de la asignacin, y no interferir en la ejecucion del programa el cambiar el tipo del dato contenido.

Conclusiones:
C1: Lenguajes Interpretados y Lenguajes Compilados tienen cada uno sus propias caractersticas, que van dirigidas a satisfacer las necesidades para las cuales fueron desarrollados. Adems podemos elegir entre uno y otro conforme a la orientacin de nuestra problemtica a resolver mediante estos. C2: Los lenguajes compilados, al generar un fichero ejecutable, permiten una ejecucin mas rpida del programa. Sin embargo es una limitacin el hecho de que ese ejecutable solo es valido en la plataforma o arquitectura para la cual fue compilado. C3: Los lenguajes Interpretados, al tener que acceder a las variables y ejecutar y traducir lnea a lnea, entre otras acciones en tiempo real, son mas lentos en tiempo de ejecucin que los Compilados. Sin embargo poseen la gran ventaja de que no son dependientes de la Plataforma ni de la Arquitectura, ya que existiendo el interprete para ese lenguaje, el cdigo o script puede ser ejecutado en cualquier maquina. C4: Podemos decidir entre el uso de un lenguaje Compilado o uno Interpretado, dependiendo de las necesidades que tengamos, y debemos tener en cuanta las ventajas y desventajas de cada uno. Si necesitamos un programa para alguna arquitectura determinada, donde la velocidad de ejecucin sea prioridad, debemos optar por un lenguaje compilado. En el caso contrario, de necesitar un programa en el cual importe mayormente su portabilidad y la facilidad para ejecutare en diversas maquinas, sin importar mayormente el tiempo de ejecucin, debemos tomar como opcin principal un lenguaje interpretado.

También podría gustarte