Tema III: Introducción al lenguaje de programación Semestre: A-2010 Profesora: Nelly García Mora Agenda 1. Definición 2. Tipos de lenguaje de Programación 3. Programación estructurada Programación estructurada 4. Programación Modular 5. Codificación Definición ¿Qué es programar?: Es la acción de escribir instrucciones correctas para que sean interpretadas por una máquina. á i ¿En qué medida nos compete programar? Depende de su interés, de todas formas hoy en día es muy importante conocer algún leguaje de programación en cualquier carrera universitaria. ¿En que medida dependemos del software? Depende de su estilo de vida, pero para un ciudadano común, la dependencia es bastante, celulares, controles remotos, tv, dvd, radios, mp3, nintendo, cajeros automáticos, Hasta para vigilar guarderías. Definición ¿Qué es un lenguaje de programación? Es un conjunto de d reglas l para comunicar ideas, d generalmente l l las ideas se comunican a una maquina. Debemos estar pendientes cuando programamos en un lenguaje de su. Sintaxis/semántica, errores y excepciones. i Niveles de los Lenguajes de Programación Niveles de los lenguajes: Semejanza a nuestro lenguaje Poca complejidad Lenguaje Natural Lenguaje de Programación (alto nivel) C Compliador/ li d / interprete i t t Lenguaje Máquina Mayor complejidad y conocimiento Tipos de Lenguajes de Programación 9Lenguajes Imperativos Según el estilo de programación: ú l il d ió 9L 9Lenguajes j declarativos d l i 9Orientados a Objetos 9Lenguaje de máquina Según el modo de traducción: 9Lenguaje ensamblador 9Lenguaje de alto nivel 9Lenguaje Lenguaje de cuarta generación 9Lenguaje visuales Según el entorno de programación: 9Metalenguajes 9Lenguaje de Propósito específico 9 9Lenguajes Script Tipos de lenguajes de Programación Según el Estilo de programación Lenguajes imperativos: Lenguajes imperativos: Son aquellos lenguajes que basan su funcionamiento en un conjunto de instrucciones secuenciales, las cuales al ejecutarse, van alterando las regiones de memoria donde residen todos los valores de las variables involucradas en el problema bl que se plantea l t resolver, l es decir, d i se cambia bi progresivamente i t ell estado t d del sistema hasta alcanzar la solución del problema. Algunos ejemplos de lenguajes imperativos son: BASIC, C, C++, Java, Clipper, Dbase, Pascal, Perl. Tipos de Lenguajes de Programación Según el Estilo de programación Lenguajes declarativos: En este paradigma, más que el ¿cómo? Desarrollar paso a paso un proceso, nos interesa el ¿Qué?, deseamos obtener a través del programa. Quizás el lenguaje declarativo que nos sea más familiar, es SQL, el cual es utilizado para interactuar con la información de base de datos, datos concentrándose sólo en los resultados que van a ser obtenidos, dejándole al traductor la tarea de cómo llegar a ellos y mostrarlos. Tipos de lenguajes de Programación Según el Estilo de programación Orientados a Objeto: Este paradigma, algunas veces se puede mezclar con alguno de los anteriores, sin embargo mantiene características propias que lo diferencian claramente. Los programas de este tipo se concentran en los objetos que van a manipular, y no en la lógica requerida para manipularlos. Ejemplos de objetos pueden ser estudiantes, carros, casas, etc. Cada uno de los cuales tendrá ciertas funciones (métodos) y ciertos valores que lo identifican, teniendo además, la facultad de comunicarse entre ellos a través del paso de mensajes. Tipos de Lenguajes de Programación Según el modo de traducción: Ensamblador: Programa que traduce un programa escrito en un lenguaje ensamblador (códigos nemotécnicos y direcciones simbólicas) a un programa objeto escrito en lenguaje de máquina. Compilador: C il d programa que traduce d un programa escrito i en lenguaje l j de d alto l nivel i l (su estructura es muy próxima a la de los lenguajes naturales) en un programa objeto escrito en lenguaje de máquina. Interpretador: programa que efectúa la traducción y ejecución sucesiva de instrucción a instrucción de un programa escrito en lenguaje de alto nivel. Programa objeto: se llama programa objeto al código que resulta de la compilación del código fuente. Programa fuente: es un conjunto de líneas de texto que son las instrucciones que debe seguir la computadora para ejecutar dicho programa. Por tanto, en el código fuente de un programa está descrito por completo su funcionamiento Tipos de Lenguajes de Programación Según el modo de traducción: Lenguaje de Máquina: Es el lenguaje más básico, propio de cada computadora, ya que esta relacionado con el diseño del hardware de la misma (dependiente de la máquina), por lo general consiste en cadena de números, al final reducidos a ceros y unos (sistema numérico binario). binario) Tipos de Lenguajes de Programación Según el modo de traducción: Lenguaje ensamblador: Consiste en abreviaturas similares al inglés, llamadas instrucciones mnemotécnicas, que permiten representar las operaciones elementales de la computadora (dependiente de la máquina). Es un lenguaje de bajo nivell o ensamblador, bl l computadora no entiende directamente la lenguaje ensamblador por lo que un programa escrito en este lenguaje tiene que se traducido a lenguaje de máquina por un programa llamado eensamblador. sa b ado . Para a a que pueda se ser ejecutado po por laa co computadora. putado a. Tipos de Lenguajes de Programación Según el modo de traducción: Lenguaje de alto nivel: Lenguaje de alto nivel: Permite a los programadores escribir instrucciones en un lenguaje más familiar para ellos y que contienen notaciones matemáticas comúnmente utilizadas (independientes de la máquina). Un programa escrito en este lenguaje, tiene que ser traducido a lenguaje de maquina por un programa llamado compilador que pueda ser ejecutado por la computadora. Los lenguajes de alto nivel permiten portabilidad mejor expresión de ideas Los lenguajes de alto nivel permiten portabilidad, mejor expresión de ideas, facilidad de programar ciertas clases de problemas, menos posibilidad de cometer errores, una visión más amplia del problema. Tipos de Lenguajes de Programación Según el entorno de programación: Lenguajes de cuarta generación 4GL: Estos lenguajes se distinguen por formar parte de un entorno de desarrollo, que comprende el manejador de una base de datos, y todo lo que de esto se deriva, como la administración de un diccionario de datos, el control de accesos, el manejo de la consistencia de la información y otras características enfocadas a facilitar los programas de acceso y explotación de la información. Como ejemplos podemos citar a los 4 grandes: POSTGRES, SYSBASE, INFORMIX, y ORACLE. Tipos de Lenguajes de Programación Según el entorno de programación: Lenguajes Visuales. Se les llama de esta manera a los lenguajes que forman parte de una aplicación dotada de una Interface gráfica, la cual por medio de iconos y otras herramientas visuales y simbólicas, pretenden facilitar las t tareas rutinarias ti i de d los l programadores, d como son ell diseño di ñ y desarrollo d ll de d formularios e informes. Los ejemplos más comerciales de estos lenguajes son: VISUAL BASIC, VISUAL CAFE, VISUAL FOX, DELPHI, etc. Tipos de Lenguajes de Programación Según el entorno de programación: Metalenguajes: Son lenguajes como XML, SGML y HTML que sirven para definir otros lenguajes, cuyo objetivo es llevar a cabo la estructuración de textos mediante un conjunto de etiquetas, de manera tal, que puedan ser entendidos por los humanos y también procesado por los ordenadores. ordenadores Estos lenguajes están teniendo un gran auge sobre la plataforma de Internet, en la cual son usados para la creación de documentos, y el intercambio o transferencia de información. Tipos de Lenguajes de Programación Según el entorno de programación: Lenguajes Leng ajes de propósito específico: específico Son aquellos aq ellos lenguajes len ajes desarrollados con on la finalidad de resolver problemas de una naturaleza muy determinada, tal como SPSS para problemas estadísticos, MATLAB para cálculos científicos y de ingeniería, CAD/CAM para el diseño de piezas y programación de máquinas de control numérico, como tornos y fresadoras, GPSS para simulación de sistemas, CORBA para el manejo de interfaces en ambientes cliente‐servidor, etc. Tipos de Lenguajes de Programación Según el entorno de programación: Lenguajes Script: Son lenguajes como JAVASCRIPT, JAVASCRIPT VBSCRIPT o PHP, PHP que se utilizan en ambientes clientes servidor, mediante la incrustación de código en las páginas HTML, y así permitir la programación del lado del cliente, buscando fundamentalmente, hacer más atractivos los interfaces gráficos de las páginas. Programación Estructurada Esta compuesta por un conjunto de técnicas que han ido evolucionando, aumentando considerablemente la productividad del programa, reduciendo el tiempo de depuración y mantenimiento del mismo. Dentro de sus características tenemos: 9Los programas son más fáciles de entender, ya que pueden ser leídos de forma secuencial, sin necesidad de hacer seguimiento a saltos de línea (GOTO) dentro de los bloques de código para entender la lógica. 9Reducción de los costos de mantenimiento de los programas 9La estructura del programa es clara, puesto que las instrucciones están más ligadas o relacionadas entre sí. sí 9Los bloques de código son auto explicativos, lo que facilita la documentación 9Programas más sencillos y más rápidos (ya que es más fácil su optimización). Programación Modular La programación modular es un paradigma de programación que consiste en dividir un programa en módulos o subprogramas con el fin de hacerlo más legible y manejable. Dentro de sus características tenemos: 9Requiere de manejo y conocimiento de funciones y procedimientos 9Programas más cortos y reutilizables 9Es el estilo de programación en grades empresas 9Utilizan las técnicas de programación estructuradas en sus desarrollos. 9Reduce problemas complejos en submodulos o subproblemas fácil de resolver. resolver