Vous êtes sur la page 1sur 9

z

Facultad de: Ingeniera Administrativa e industrial. Trabajo N 1 de:


INGENIERIA DE SISTEMAS

Pertenece a: Benavidez Meja Luz Magali Docente-Tutor:


ING. PORTILLOS RIOS HECTOR

Ope: Chiclayo Cdigo: 070000488.

Ciclo: 2013-2

QU ES PROGRAMACIN?

. En la actualidad, la nocin de programacin se encuentra muy asociada a la creacin de aplicaciones informticas y videojuegos; es el proceso por el cual una persona desarrolla un programa valindose de una herramienta que le permita escribir el cdigo (el cual puede estar en uno o varios lenguajes, tales como C++, Java y Pitn) y de otra que sea capaz de traducirlo a lo que se conoce como lenguaje de mquina, el cual puede ser entendido por un microprocesador. Este ltimo paso se conoce como compilacin y es necesario para que el cdigo pueda ser ejecutado por la plataforma para la cual haya sido creado, que pueda ser un ordenador, una tableta, una consola o un telfono mvil, por ejemplo. Existe tambin una forma de traducir el cdigo denominada interpretacin, que consiste en analizar lnea a lnea, hasta que se traduzca lo suficiente como para poder realizar una tarea. Cabe mencionar que los lenguajes de programacin se dividen en dos grandes grupos, donde los que pueden ser compilados no pueden ser interpretados, y viceversa. La totalidad del proceso de desarrollo abarca varias etapas y requiere del trabajo de diferentes especialistas. En principio, partiendo de la base de un proyecto bien organizado, es necesario dar con una idea atractiva, interesante, que justifique los meses o aos de esfuerzo que vendrn. Tan slo esta primera parte puede tomar mucho tiempo, dado que lo que comienza como un producto perfecto puede convertirse, luego de cuestionarlo y observarlo desde diferentes ngulos, en un fracaso seguro.

Una vez hallada la idea, se debe establecer el diseo de la misma; en otras palabras, se trata de formalizar todo aquello que se haya discutido durante la bsqueda inicial. Si bien cada equipo trabaja a su manera, dado que no se puede estructurar la creacin de una forma rgida, es probable que el siguiente paso lgico sea comenzar a experimentar a travs de la programacin, para facilitar a los diseadores un contacto directo e interactivo con su idea. Los programadores tienen en sus manos el poder de dar vida a un sistema, a una aplicacin, a un videojuego. Es importante notar que todos estos productos pueden ser definidos en absoluto detalle en un documento, incluyendo imgenes y grficos que expliquen cmo funciona cada milmetro de los mismos; sin embargo, hasta que un desarrollador de software no entra en accin, no es posible verlos en movimiento, probarlos, pasar de la teora a la prctica. En un plano ms tcnico, la programacin se realiza mediante el uso de algoritmos, que son secuencias finitas, ordenadas y no ambiguas de instrucciones que deben seguirse para resolver un problema. Algunas de ellas pueden agruparse y recibir un nombre para poder ser invocadas con facilidad tantas veces como sea necesario. Del mismo modo que los seres humanos necesitamos respirar constantemente, una aplicacin informtica necesita conocer la posicin del puntero del ratn a cada momento, as como su actividad (si se ha hecho clic y con qu botn, si se ha soltado o si se mantiene presionado, etctera). - CLASIFICACIN DE LOS LENGUAJES DE PROGRAMACIN.

Clasificacin de lenguajes de programacin Viernes, 21 septiembre 2007 por qbit Un lenguaje de programacin es un lenguaje inventado para controlar una mquina, (normalmente, un ordenador). Hay muchsimos, de toda clase de tipos y caractersticas, inventados para facilitar el abordaje de distintos problemas, el mantenimiento del software, su reutilizacin, mejorar la productividad, etc. Los lenguajes de programacin se pueden clasificar segn varios criterios. He encontrado doce en total: Nivel de abstraccin, propsito, evolucin histrica, manera de ejecutarse, manera de abordar la tarea a realizar, paradigma de

programacin, lugar de ejecucin, concurrencia, interactividad, realizacin visual, determinismo y productividad. Hay que tener en cuenta tambin, que en la prctica, la mayora de lenguajes no pueden ser puramente clasificados en una categora, pues surgen incorporando ideas de otros lenguajes y de otras filosofas de programacin, pero no importa al establecer las clasificaciones, pues el autntico objetivo de las mismas es mostrar los rangos, las posibilidades y tipos de lenguajes que hay. 1. Nivel de abstraccin. Segn el nivel de abstraccin, o sea, segn el grado de cercana a la mquina: Lenguajes de bajo nivel: La programacin se realiza teniendo muy en cuenta las caractersticas del procesador. Ejemplo: Lenguajes ensamblador. Lenguajes de nivel medio: Permiten un mayor grado de abstraccin pero al mismo tiempo mantienen algunas cualidades de los lenguajes de bajo nivel. Ejemplo: C puede realizar operaciones lgicas y de desplazamiento con bits, tratar todos los tipos de datos como lo que son en realidad a bajo nivel (nmeros), etc. Lenguajes de alto nivel: Ms parecidos al lenguaje humano. Manejan conceptos, tipos de datos, etc., de una manera cercana al pensamiento humano ignorando (abstrayndose) del funcionamiento de la mquina. Ejemplos: Java, Ruby. Hay quien slo considera lenguajes de bajo nivel y de alto nivel, (en ese caso, C es considerado de alto nivel). 2. Propsito. Segn el propsito, es decir, el tipo de problemas a tratar con ellos: Lenguajes de propsito general: Aptos para todo tipo de tareas: Ejemplo: C. Lenguajes de propsito especfico: Hechos para un objetivo muy concreto. Ejemplo: Csound (para crear ficheros de audio). Lenguajes de programacin de sistemas: Diseados para realizar sistemas operativos o drivers. Ejemplo: C. Lenguajes de script: Para realizar tareas varias de control y auxiliares. Antiguamente eran los llamados lenguajes de procesamiento por lotes (batch) o JCL (Job Control Languages). Se subdividen en varias clases (de shell, de GUI, de programacin web, etc.). Ejemplos: bash (shell), mIRC script, JavaScript (programacin web). 3. Evolucin histrica. Con el paso del tiempo, se va incrementando el nivel de abstraccin, pero en la prctica, los de una generacin no terminan de sustituir a los de la anterior:

Lenguajes de primera generacin (1GL): Cdigo mquina. Lenguajes de segunda generacin (2GL): Lenguajes ensamblador. Lenguajes de tercera generacin (3GL): La mayora de los lenguajes modernos, diseados para facilitar la programacin a los humanos. Ejemplos: C, Java. Lenguajes de cuarta generacin (4GL): Diseados con un propsito concreto, o sea, para abordar un tipo concreto de problemas. Ejemplos: NATURAL, Mathematica. Lenguajes de quinta generacin (5GL): La intencin es que el programador establezca el qu problema ha de ser resuelto y las condiciones a reunir, y la mquina lo resuelve. Se usan en inteligencia artificial. Ejemplo: Prolog. 4. Manera de ejecutarse. Segn la manera de ejecutarse: Lenguajes compilados: Un programa traductor traduce el cdigo del programa (cdigo fuente) en cdigo mquina (cdigo objeto). Otro programa, el enlazador, unir los ficheros de cdigo objeto del programa principal con los de las libreras para producir el programa ejecutable. Ejemplo: C. Lenguajes interpretados: Un programa (intrprete), ejecuta las instrucciones del programa de manera directa. Ejemplo: Lisp. Tambin los hay mixtos, como Java, que primero pasan por una fase de compilacin en la que el cdigo fuente se transforma en bytecode, y este bytecode puede ser ejecutado luego (interpretado) en ordenadores con distintas arquitecturas (procesadores) que tengan todos instalados la misma mquina virtual Java. 5. Manera de abordar la tarea a realizar. Segn la manera de abordar la tarea a realizar, pueden ser: Lenguajes imperativos: Indican cmo hay que hacer la tarea, es decir, expresan los pasos a realizar. Ejemplo: C. Lenguajes declarativos: Indican qu hay que hacer. Ejemplos: Lisp, Prolog. Otros ejemplos de lenguajes declarativos, pero que no son lenguajes de programacin, son HTML (para describir pginas web) o SQL (para consultar bases de datos). 6. Paradigma de programacin. El paradigma de programacin es el estilo de programacin empleado. Algunos lenguajes soportan varios paradigmas, y otros slo uno. Se puede decir que histricamente han ido apareciendo para facilitar la tarea de programar segn el tipo de problema a abordar, o para facilitar el mantenimiento del software, o por otra cuestin similar, por lo que todos corresponden a lenguajes de alto nivel (o nivel medio), estando los lenguajes

ensambladores atados a la arquitectura de su procesador correspondiente. Los principales son: Lenguajes de programacin procedural: Divide el problema en partes ms pequeas, que sern realizadas por subprogramas (subrutinas, funciones, procedimientos), que se llaman unas a otras para ser ejecutadas. Ejemplos: C, Pascal. Lenguajes de programacin orientada a objetos: Crean un sistema de clases y objetos siguiendo el ejemplo del mundo real, en el que unos objetos realizan acciones y se comunican con otros objetos. Ejemplos: C++, Java. Lenguajes de programacin funcional: La tarea se realiza evaluando funciones, (como en Matemticas), de manera recursiva. Ejemplo: Lisp. Lenguajes de programacin lgica: La tarea a realizar se expresa empleando lgica formal matemtica. Expresa qu computar. Ejemplo: Prolog. Hay muchos paradigmas de programacin: Programacin genrica, programacin reflexiva, programacin orientada a procesos, etc. 7. Lugar de ejecucin. En sistemas distribuidos, segn dnde se ejecute: Lenguajes de servidor: Se ejecutan en el servidor. Ejemplo: PHP es el ms utilizado en servidores web. Lenguajes de cliente: Se ejecutan en el cliente. Ejemplo: JavaScript en navegadores web. 8. Concurrencia. Segn admitan o no concurrencia de procesos, esto es, la ejecucin simultnea de varios procesos lanzados por el programa: Lenguajes concurrentes. Ejemplo: Ada. Lenguajes no concurrentes. Ejemplo: C. 9. Interactividad. Segn la interactividad del programa con el usuario u otros programas: Lenguajes orientados a sucesos: El flujo del programa es controlado por la interaccin con el usuario o por mensajes de otros programas/sistema operativo, como editores de texto, interfaces grficos de usuario (GUI) o kernels. Ejemplo: VisualBasic, lenguajes de programacin declarativos. Lenguajes no orientados a sucesos: El flujo del programa no depende de sucesos exteriores, sino que se conoce de antemano, siendo los procesos batch el ejemplo ms claro (actualizaciones de bases de datos, colas de impresin de documentos, etc.). Ejemplos: Lenguajes de programacin imperativos. 10. Realizacin visual.

Segn la realizacin visual o no del programa: Lenguajes de programacin visual: El programa se realiza moviendo bloques de construccin de programas (objetos visuales) en un interfaz adecuado para ello. No confundir con entornos de programacin visual, como Microsoft Visual Studio y sus lenguajes de programacin textuales (como Visual C#). Ejemplo: Mindscript. Lenguajes de programacin textual: El cdigo del programa se realiza escribindolo. Ejemplos: C, Java, Lisp. 11. Determinismo. Segn se pueda predecir o no el siguiente estado del programa a partir del estado actual: Lenguajes deterministas. Ejemplos: Todos los anteriores. Lenguajes probabilsticos o no deterministas: Sirven para explorar grandes espacios de bsqueda, (como gramticas), y en la investigacin terica de hipercomputacin. Ejemplo: mutt (generador de texto aleatorio). 12. Productividad. Segn se caractericen por tener virtudes tiles o productivas, u oscuras y enrevesadas: Lenguajes tiles o productivos: Sus virtudes en cuanto a eficiencia, sencillez, claridad, productividad, etc., motiva que sean utilizados en empresas, administraciones pblicas y/o en la enseanza. Ejemplos: Cualquier lenguaje de uso habitual (C, Java, C++, Lisp, Python, Ruby, ). Lenguajes esotricos o exticos: Inventados con la intencin de ser los ms raros, oscuros, difciles, simples y/o retorcidos de los lenguajes, para diversin y entretenimiento de frikis programadores. A veces exploran nuevas ideas en programacin. Ejemplo: Brainfuck. Etiquetas: clasificacin, lenguaje de programacin.

- Tipos o Tcnicas de Programacin. (Breve descripcin de cada una de ellas). Los lenguajes de programacin son lenguajes creado por el ser humano para poder comunicarse con las computadoras. As lenguaje de programacin es el conjunto de smbolos y palabras que permiten al usuario de una computadora darle instrucciones y rdenes para que la computadora los ejecute. Existen diferentes clases o tipos de lenguajes de programacin:

1 El Lenguaje Mquina: es el lenguaje de programacin que entiende directamente la computadora o mquina. Este lenguaje de programacin utiliza el alfabeto binario, es decir, el 0 y el 1. Con estos dos nicos dgitos, conocidos como bits, forma lo que se conoce como cadenas binarias (combinaciones de ceros y unos) son con las que se escriben las instrucciones que el microprocesador de la computadora entiende nuestra peticiones. Fue el primer lenguaje de programacin. Este tipo de lenguaje de programacin dejo de utilizarse por su gran dificultad y por la facilidad para cometer errores. 2 Lenguajes de programacin de bajo nivel: Son mucho mas fciles de utilizar que el lenguaje mquina, pero dependen mucho de la mquina o computadora como suceda con el lenguaje mquina. El lenguaje ensamblador fue el primer lenguaje de programacin que trato de sustituir el lenguaje mquina por otro mucho ms parecido al de los seres humanos. En este lenguaje se conoce como programa fuente a un programa de instrucciones escrito en lenguaje ensamblador por el programador, y programa objeto es la traduccin a lenguaje mquina del programa fuente. Los lenguajes de este tipo pueden crear programas muy rpidos, pero son difciles de aprender, son especficos de cada procesador, si nos llevamos el programa a otro computador ser preciso reescribir el programa desde el comienzo. 3 Lenguajes de programacin de alto nivel: Este tipo de lenguajes de programacin son independientes de la mquina, lo podemos usar en cualquier computador con muy pocas modificaciones o sin ellas, son muy similares al lenguaje humano, pero precisan de un programa interprete o compilador que traduzca este lenguaje de programacin de alto nivel a uno de bajo nivel como el lenguaje de mquina que la computadora pueda entender. Los lenguajes de programacin de alto nivel son ms fciles de aprender porque se usan palabras o comandos del lenguaje natural, como por ejemplo del ingls. Este es el caso del BASIC, el lenguaje de programacin ms conocido. Existen muchos lenguajes de programacin de alto nivel con sus diferentes versiones. Por esta razn es difcil su tipificacin, pero una clasificacin muy extendida desde el punto de vista de trabajar de los programas y la filosofa de su creacin es la siguiente: Lenguajes de programacin imperativos: entre ellos tenemos el Cobol, Pascal, C y Ada. Lenguajes de programacin declarativos: el Lisp y el Prolog.

Lenguajes de programacin orientados a objetos: el Smalltalk y el C++. Lenguajes de programacin orientados al problema: son aquellos lenguajes especficos para gestin. Lenguajes de programacin naturales: son los nuevos lenguajes que pretender aproximar el diseo y la construccin de programas al lenguaje de las personas. Otra clasificacin de los lenguajes de programacin de alto nivel, es teniendo en cuenta el desarrollo de las computadoras segn sus diferentes generaciones: Lenguajes de programacin de primera generacin: el lenguaje mquina y el ensamblador. Lenguajes de programacin de segunda generacin : los primeros lenguajes de programacin de alto nivel imperativo (FROTRAN, COBOL). Lenguajes de programacin de tercera generacin: son lenguajes de programacin de alto nivel imperativo pero mucho ms utilizados y vigentes en la actualidad (ALGOL 8, PL/I, PASCAL, MODULA). Lenguajes de programacin de cuarta generacin: usados en aplicaciones de gestin y manejo de bases de dados (NATURAL, SQL). Lenguajes de programacin de quinta generacin: creados para la inteligencia artificial y para el procesamiento de lenguajes naturales (LISP, PROLOG).

El trabajo deber ser presentado hasta las 10 de la noche del da 31 de Mayo.

Vous aimerez peut-être aussi