Conceptos Básicos de Lenguajes de Programación

Document Sample
Conceptos Básicos de Lenguajes de Programación Powered By Docstoc
					    Conceptos Básicos de Lenguajes
           de Programación                                                                                                   ¿Que es un lenguaje de programación?
                                              Escriba el título aquí
                                                                                                                             ¿Cuantos lenguajes de programación existen?
                                                                       Escriba el título aquí



                                                                                                                             ¿Que es un programa?
                                                                                                                             ¿Como se escribe un programa?
                                                                                                                             Componentes estructurales de un programa
                                                                                                                                 ¿Que son las variables y las constantes?
                                                                                                                                 ¿Que estructuras de flujo tiene un programa?
                                                                       Seleccionar y escribir

                                                                                                                                 ¿Que son las funciones?
                                                                                                                                 ¿Que son los objetos y las clases?


                     Miguel Ángel Sanz Santos

                                                                                                                                                                                          Miguel Angel Sanz Santos


¿Que es un lenguaje de programación?                                                                                       ¿Que es un lenguaje de programación?
                                                                                                                           Dentro de los lenguajes artificiales existen muchos tipos, cada uno de ellos destinado a
                                                                                                                           un propósito concreto; los lenguajes de programación referidos a los ordenadores se
                                                                                                                           pueden clasificar en tres categorías:

                         El lenguaje humano lo define el diccionario como “el conjunto                                         • Lenguajes de bajo nivel.
                         de sonidos articulados con el que el hombre manifiesta lo                                             • Lenguajes de alto nivel.
                         que piensao siente”; a este tipo de lenguaje lo clasificaríamos                                       • Lenguajes de muy alto nivel.
                         como natural o propio del ser humano.




El diccionario define loe lenguajes de programación como “un
conjunto de caracteres, símbolos, representaciones y reglas
                                                                                                                                 Muy alto nivel                       Alto nivel                  Bajo nivel
que permiten introducir y tratar la información en un
ordenador” , este tipo de lenguaje lo clasificaríamos como un
lenguaje artificial.                                                                                                        Los primeros son lenguajes que se encuentran muy cerca de la forma interna de
                                                                                                                            comunicación del ordenador, mientras que los terceros son más parecidos al lenguaje
                                                                                                                            humano.

                                                                                                Miguel Ángel Sanz Santos                                                                  Miguel Ángel Sanz Santos
¿Cuantos lenguajes de programación existen?                                                                        ¿Cuantos lenguajes de programación existen?
Existen numerosos lenguajes de programación y en la última década se han creado para
                                                                                                                   Atendiendo a diferentes criterios podemos clasificar los lenguajes según:
diversos propósitos específicos, teniendo el mayor auge los destinados a Internet.

Dentro de los lenguajes de programación los más usados y/o conocidos son:                                                                  1.- Imperativos: conjunto de instrucciones secuénciales.
                                                                                                                                                                  A.- Funcionales: basados en funciones formadas
                                                                                                                                                                  por expresiones, los datos llegan a ellas por una serie
Ensamblador                                       1950                                                               Estilo de                                    de argumentos.
Fortran (FORmula TRANslation)                     1957     Laboratorios de IBM bajo la dirección de John Backus    programación           2.- Declarativos
List                                              1960     John MaCarthy pionero de la IA                                                                         B.- Lógicos: basado en el cálculo de predicados.
Cobol (COmmon Business Oriented Language) 1960             Comisión de fabricantes de ordenador de USA
Basic (Beginners All Purpose Symbolic Instruction 1964     J. Kemeny y T. Kurtz en la Universidad de Dartmouth                              3.- Orientados a Objetos: Centrados en los objetos que van a manipular
 Code)                                                                                                                                      y no en la lógica requerida para manipularlos.
Pascal (su nombre es homenaje a Blaise
                                      1971                 Niklaus Wirth
 Pascal)
C                                     1978                 Dennis Ritchie en los laboratorios Bell                                      1.- Lenguajes Ensamblados: son una representación simbólica de las
                                                           Robert A. Kowalski, de la Universidad de Edimburgo, y
                                                                                                                                        instrucciones correspondientes a una arquitectura específica. (Ensamblador)
Prolog                                             1981     Alain Colmerauer, de la Universidad de Aix-Marseille                        2.- Lenguajes Compilados: Son traducidos desde un lenguaje de alto nivel
Ada                                                1982    Ministerio de Defensa de los EE.UU                      Herramienta de       a lenguaje máquina o bien, a lenguaje ensamblador.(C, Basic, Pacal, …)
C++                                                1984    Bjarne Stroustrup en los laboratorios Bell               creación y/o
                                                           Publicación de la ISO 8879 que presenta el Standard        ejecutan          3.- Lenguajes Interpretados: cada instrucción es analizada y ejecutada a la
Html                                               1986     General Markup Language, origen del HTML                                    vez. (HTML, Php, …)
Perl  (Practical Extraction and Report Language)
                                                   1988    Larry Wall                                                                   4.- Lenguajes Preprocesados: traducidos primeramente a un lenguaje
 creado por                                                                                                                             intermedio de más bajo nivel, y posteriormente ejecutados.(Java)
Java                                               1995    Sun Microsystemspara internet y proposito general

                                                                               Miguel Ángel Sanz Santos                                                                                      Miguel Angel Sanz Santos


¿Cuantos lenguajes de programación existen?                                                                        ¿Cuantos lenguajes de programación existen?
Atendiendo a diferentes criterios podemos clasificar los lenguajes según:

                             1.- Imperativos: conjunto de instrucciones secuénciales.
                                                                                                                                                1.- Primera Generación: asociados a los primeros ordenadores,
                                                     A.- Funcionales: basados en funciones formadas                                             muy complicados, y en general específicos de cada maquina.
                                                     por expresiones, los datos llegan a ellas por una serie
  Estilo de                                          de argumentos.
programación                2.- Declarativos
                                                     B.- Lógicos: basado en el cálculo de predicados.                                           2.- Segunda Generación: son los lenguajes previos a los más
                                                                                                                                                conocidos actualmente y que se encuentran muy cerca del lenguaje
                                                             Se basa en una teoría matemática que permite                                       maquina. Ejemplo el lenguaje ensamblador.
                                                              Centrados cosas, lograr que un manipular
                              3.- Orientados a Objetos: entre otras en los objetos que van a ordenador                Atendiendo a
                                                             basándose en un
                              y no en la lógica requerida para manipularlos. conjunto de hechos y de reglas           su desarrollo
                                                             lógicas, pueda derivar en soluciones inteligentes
                                                                                                                        histórico
                                                                                                                                                3.- Tercera Generación: Son los lenguajes más utilizados
                          1.- Lenguajes Ensamblados: son una representación simbólica de las                                                    actualmente y basados en un funcionamiento procedural (basados
                          instrucciones correspondientes a una arquitectura específica. (Ensamblador)                                           en un conjunto de instrucciones que definen la forma de solucionar
                                                                                                                                                un problema).
                          2.- Lenguajes Compilados: Son traducidos desde un lenguaje de alto nivel
Herramienta de            a lenguaje máquina o bien, a lenguaje ensamblador.(C, Basic, Pacal, …)
 creación y/o
   ejecutan               3.- Lenguajes Interpretados: cada instrucción es analizada y ejecutada a la                                           4.- Cuarta Generación: son los basados en programación visual
                          vez. (HTML, Php, …)                                                                                                   y orientada a objetos.
                          4.- Lenguajes Preprocesados: traducidos primeramente a un lenguaje
                          intermedio de más bajo nivel, y posteriormente ejecutados.(Java)


                                                                               Miguel Angel Sanz Santos                                                                                      Miguel Ángel Sanz Santos
¿Que es un programa?                                                                            ¿Que es un programa?

                       Hace referencia a un conjunto de instrucciones individuales que son                                             Hace referencia a un conjunto de instrucciones individuales que son
                       creadas por el programador - código fuente.                                                                     creadas por el programador - código fuente.
PROGRAMA                                                                                        PROGRAMA
                       Conjunto de instrucciones en código maquina según el cual el                                                    Conjunto de instrucciones en código maquina según el cual el
                       ordenador realizará una serie de acciones                                                                       ordenador realizará una serie de acciones

Como en todo lenguaje se diferencian una serie de conceptos que permiten establecer             Como en todo lenguaje se diferencian una serie de conceptos que permiten establecer
elementos, reglas y significado a nuestro código; así:                                          elementos, reglas y significado a nuestro código; así:


    Sintaxis: son las reglas con las que deben unirse los elementos                                Sintaxis: son las reglas con las que deben unirse los elementos
                                                                                                  BASIC
    de un lenguaje de programación (términos y puntuación) para                                    de un lenguaje de programación (términos y puntuación) para
                                                                                                                    CONTADOR           nivel de semántica
    construir frases (líneas de código).                                                           construir frases (líneas de código).
                                                                                                  for i=0 to 100                       nivel de sintaxis
     Gramática: es el conjunto de reglas que me permiten                                                    contador = el conjunto de reglas que me nivel de gramática
                                                                                                     Gramática: es contador+1                              permiten
     implementar instrucciones en un determinado lenguaje.                                           implementar instrucciones en un determinado lenguaje.
                                                                                                  next i

     Semántica: trata el significado y propósito del código                                         Semántica: trata el significado y propósito del código



                                                                     Miguel Ángel Sanz Santos                                                                                                                                                  Miguel Ángel Sanz Santos


¿Que es un programa?                                                 Miguel Ángel Sanz Santos   ¿Como se escribe un programa?
                                                                                                                                                                                                                                Los pasos a seguir para crear un
                                                                                                                                                                                                                                 programa se esquematizan en:
La sintaxis difiere enormemente entre los diferentes niveles en los que se diferencian los
lenguajes de programación, incluso en un determinado nivel, los diferentes lenguajes
                                                                                                             Interfaz                                                                    Eficiente        Claro      • Tener una idea
presentan tanto formas como procedimientos de construcción distintos.                                                       Altgoritmos          Funciones


                                                                                                                                                                                                                     • Organizar la idea          ( interfaz, algoritmos del programa y
                                                                                                                                                   Decisión del
                                                                                                                                                                                                                     funciones de tratamiento de datos)
                                                                                                                                                    lenguaje de
                                                                                                                                                                                                          Flexible
                                                                                                                                                   programación

Por ejemplo:                                                                                          Idea                                                                                                           • Selección del lenguaje
                                                                                                                        Organizar el                                              Escribir el
                                                                                                                         programa                                      a
                                                                                                                                                                   tur          código fuente

                                                                                                                                                           e-
                                                                                                                                                             es
                                                                                                                                                               cri                                                   • Escritura del código              (eficiente, claro y flexible para
                                                                                                                                                       R
                                                                                                                                                                                                                     corregir, modificar y/o ampliar).
BASIC                                             C
for i=0 to 100                                    for (i=0; i<=100; i++){                                                                                                  Traducir de nuestro lenguaje
                                                                                                                                                                               al lenguaje maquina                   • Convertimos a código máquina a través de
                                                                                                                                                                                                                     un compilar
         contador = contador+1                                   contodor++;                                             Revisión del
                                                                                                                           código

next i                                                           }                                                                                                                                                          • Si el código da errores deberemos
                                                                                                                                         Hay errores
                                                                                                                                                                                                                            corregirlo y si es necesario rescribirlo y
                                                                                                                                                                                Compilar el
                                                                                                                                                                                 programa                                   volver a compilar.
PASCAL                                            ENSAMBLADOR
                                                                                                                        Errores de tratamiento
                                                                                                                                                                                                                            • Si el código no da errores pasa a la
FOR i:=0 to 100 DO                                MOV CX,0064h                                                                de datos

                                                                                                                                                                                                                            siguiente fase
BEGIN                                                    XOR AX,AX                                                                                                                Fase de
                                                                                                                                                                                                                     • Fase de prueba              (comprobar que no existe fallos
                                                                                                                                                                                  pruebas

         contador := contador +1;                                JCXZ yyyy                                                                                                                                           conceptuales o de tratamiento de errores)

END;                                                             xxxx       ADD AX,CX                                                                                                                                • Hemos conseguido un programa fiable
                                                         LOOP xxxx
                                                                                                                                                                                     Programa
                                                         yyyy    NOP                                                                                                                 terminado

                                                                                                                                                                                                                                               Miguel Ángel Sanz Santos
¿Como se escribe un programa?                                  Miguel Angel Sanz Santos        ¿Como se escribe un programa?                                    Miguel Angel Sanz Santos



Las herramientas para crear el código fuente son muy numerosas y van desde los editores de     Las herramientas para crear el código fuente son muy numerosas y van desde los editores de
texto más simples, hasta los entornos visuales de programación, que incluyen herramientas de   texto más simples, hasta los entornos visuales de programación, que incluyen herramientas de
compilación y depuración.                                                                      compilación y depuración.




¿Como se escribe un programa?                                  Miguel Angel Sanz Santos        ¿Componentes estructurales de un programa?
                                                                                               A la hora de escribir el código fuente para un programa se diferencian una serie de elementos
Las herramientas para crear el código fuente son muy numerosas y van desde los editores de     que nos van a permitir estructurar los datos, realizar una serie de operaciones y organizar el
texto más simples, hasta los entornos visuales de programación, que incluyen herramientas de   flujo de “decisión” del programa. Estos elementos son:
compilación y depuración.

                                                                                                    • Las variables y las constantes en un programa, así
                                                                                                    como sus tipos y estructuras.

                                                                                                        • Las estructuras de flujo que van a facilitar la
                                                                                                        ejecución de diferentes cálculos u operaciones
                                                                                                        dependiendo de unos condicionantes.

                                                                                                        • Funciones que conforman una forma de ahorro
                                                                                                        de código y hace más legible el código.

                                                                                                        • Los objetos y clases que nos permiten incluir
                                                                                                        dentro de los programas elementos ya construidos.


                                                                                                    El uso adecuado de este conjunto de elementos nos permitirá realizar códigos eficiente
                                                                                                    y fáciles de revisar.

                                                                                                                                                                Miguel Angel Sanz Santos
¿Componentes estructurales de un programa? Variables                                                            ¿Componentes estructurales de un programa? Variables
 Los datos con los que trabaja un programa se almacenan por este en dos tipos básicos de                        Los datos con los que trabaja un programa se almacenan por este en dos tipos básicos de
 estructuras, las variables y las constantes.                                                                   estructuras, las variables y las constantes.

                                                                                                                En los lenguajes más usuales (C, Basic, etc) los tipos de variables más comunes son:
    Constante: su valor permanece inalterable a lo largo del programa.                                            Constante: su valor permanece inalterable a lo largo del programa.
                                                                                                                 Bool (booleano) : 1Byte -> 0 ó 1
    Variable: su valor cambia con el flujo del programa.                                                          Variable: su valor 2/4 Byte -> 32768 a del -2.147.484.648
                                                                                                                 Integer/Int (entero): cambia con -el flujo32767 / programa. a 2.147.483.647
                                                                                                                  Single/Float (coma flotante sencillo) 4 Byte -3,402823E38 a -1,401298E-45 y 1.401298E-45 a 3.402823E38
                                                                                                                  Double (doble coma flotante) 8 Byte -1,79769313486232E308 a -4,94065645841247E-324 y 4,94065645841247E-324
                                                                                                                  a 1,79769313486232E308
 Dependiendo del lenguaje de programación que estemos utilizando, tanto variables como                            Char (carácter) Byte -> de programación que estemos utilizando, tanto variables como
                                                                                                                Dependiendo del1lenguaje 256 caracteres
 constantes deberán ser o no definidas en algún TIPO. En el caso de tener que establecer el                       String (cadena) Estáticas/Dinámicas a 63000 caracteres / 0 En el caso de tener que establecer el
                                                                                                                constantes deberán ser o no definidas0en algún TIPO. a 2.000.000 caracteres
 tipo, éste indicará las características de la variable o constante (tamaño, datos que                            Variant: indicará las características de la variable o los tipos anteriores.
                                                                                                                tipo, éstevariables especiales que almacenan cualquiera de constante (tamaño, datos que
 contendrá, etc.) y se encuentra muy relacionado con la ocupación de memoria de esa                             contendrá, etc.) y se encuentra muy relacionado con la ocupación de memoria de esa
                                                                                                                  Objet (objeto) 4 Byte hace referencia a objetos de la aplicación
 variable o constante. La forma que por lo general se usa para establecer el tipo es:                           variable o constante. La forma que por lo general se usa para establecer el tipo es:
                                                                                                                  Null (nulo) 1/2 Byte -> valor nulo
                                                                                                                  Etc
      tipo [nombre_variable]                fload datos1                                                             tipo [nombre_variable]       fload datos1
                                                                                                                Existe algunos modificadores como unsigned que trata a las variables solamente como
     const tipo [nombre_constante]          const float PI = 3.141592653589793238463                                const tipo [nombre_constante] const float PI = 3.141592653589793238463
                                                                                                                 números positivos.


                                                                            Miguel Ángel Sanz Santos                                                                                       Miguel Ángel Sanz Santos


¿Componentes estructurales de un programa? Variables                                                            ¿Componentes estructurales de un programa? Operadores
 Los datos con los que trabaja un programa se almacenan por este en dos tipos básicos de
  estructuras, las variables y las de forma
Las variables pueden existir constantes.individual o agruparse en conjuntos ordenados
que reciben el nombre de matrices. Las matrices pueden presentar desde 1
  En los lenguajes más usuales (C, Basic, etc) los tipos de variables más comunes son:                          Los operadores nos van a permitir realizar cálculos , comparaciones y asignaciones
     Constante: su valor permanece inalterable a lo largo del n que depende del lenguaje de
dimensión (vectores) hasta un número de dimensiones programa.
                                                                                                                entre las variables y constantes de un programa. Los operadores más comunes en
programación, lo más normalóson matrices de dos y tres dimensiones.
   Bool (booleano) : 1Byte -> 0 1                                                                               los lenguajes de programación son:
    Variable: su valor 2/4 Byte -> 32768 a del -2.147.484.648
   Integer/Int (entero): cambia con -el flujo32767 / programa. a 2.147.483.647
   Single/Float (coma flotante sencillo) 4 Byte -3,402823E38 a -1,401298E-45 y 1.401298E-45 a 3.402823E38
                                                                                                                       Aritméticos (+, -, *, / ,\, %_mod, ^)
   Double (doble coma flotante) 8 Byte -1,79769313486232E308 a -4,94065645841247E-324 y 4,94065645841247E-324
   a 1,79769313486232E308
                                                                                                                       Lógicos (and, or, xor, not)
 Dependiendo del1lenguaje 256 caracteres
   Char (carácter) Byte -> de programación que estemos utilizando, tanto variables como                                Asignación(=, +=, -=, ...)
   String (cadena) Estáticas/Dinámicas a 63000 caracteres / 0 En el caso de tener que establecer el
 constantes deberán ser o no definidas0en algún TIPO. a 2.000.000 caracteres                                           Comparación (=_==, <, >, <>_!=, >=, <=)
   Variant: indicará las características de la variable o los tipos anteriores.
 tipo, éstevariables especiales que almacenan cualquiera de constante (tamaño, datos que
 contendrá, etc.) y se encuentra muy relacionado con la ocupación de memoria de esa
   Objet (objeto) 4 Byte hace referencia a objetos de la aplicación                                             No existe un acuerdo en la simbología utilizada para cada operador entre los
 variable o constante. La forma que por lo general se usa para establecer el tipo es:
   Null (nulo) 1/2 Byte -> valor nulo                                                                           diferentes lenguajes, por lo que deberemos en cada uno de los casos consultar las
   Etc                                                                                                          ayudas pertinente. Tampoco existe consenso en los tipos de operadores y cada
      tipo [nombre_variable]       fload datos1                                                                 lenguaje ofrece un surtido de operadores diferente al resto de los otros lenguajes.
 Existe algunos modificadores como unsigned que trata a las variables solamente como
     const tipo [nombre_constante] const float PI = 3.141592653589793238463
  números positivos.


                                                                            Miguel Ángel Sanz Santos                                                                                       Miguel Ángel Sanz Santos
¿Componentes estructurales de un programa? Flujo del programa                                       ¿Componentes estructurales de un programa? Flujo del programa
  Las estructuras que van a ser explicadas a continuación permiten la variación de los                La estructura CASE o SWITCH funciona como un conjunto de sentencias IF. El comando
  procesos en función de datos introducidos por el usuario o resultados de algún cálculo. Este        funciona según el valor de una variable, otorgando bloques de código según los posibles
  conjunto de estructuras pue encontrarse de forma individual o anidadas (una dentro de               valores.
  otra).

                                                                                                      Igual que en el caso de IF pueden encontrarse estructuras anidadas, pero en este caso la
                                                                                                      sentencias anidadas afectarán al bloque donde se encuentran y no podrán cruzarse.
 Sentencia IF ... ELSE ... corresponde
 a un SI condicional. Esta sentencia
 comprobará una o varias condiciones             Cierta           Condición                Falsa
 controladas por operadores de igualdad
 y/o lógicos, si la condición se cumple                                                                                                Comprobación de la variable
 realizará una serie de operaciones y si
 no se cumple realizará otro conjunto de
 operaciones. La sentencia puede                 Bloque de                         Bloque de
 carecer de la segunda parte (ELSE) y            sentencias                        sentencias
 ejecutar un conjunto de sentencias si                                                                                               Caso 2               Caso 3                       Caso n
                                                                                                               Caso 1
 se cumple la condición impuesta.                                                                         bloque de código
                                                                                                                                   bloque de            bloque de   ...........      bloque de
                                                                                                                                     código               código                       código



                                                  Rama A del     CONTINUACIÓN Rama B del
                                                   programa      DEL PROGRAMA programa

                                                                      Miguel Angel Sanz Santos                                                                               Miguel Angel Sanz Santos


¿Componentes estructurales de un programa? Flujo del programa                                       ¿Componentes estructurales de un programa? Flujo del programa

                                                                                                                         WHILE                        El bucle WHILE y su variante DO ... WHILE
                                            Bucles son estructuras en las que un bloque de código
                Inicializa el               se repite un número determinado de veces o hasta que                                                      ejecutaran un bloque de datos mientras una
                 contador                   una condición se cumple.                                                                                  condición lógica resulte verdadera.

                                                                                                         ¿Se cumple                                   La diferencia entre ambos es que el primero
                                                                                                         la condición?
                                        El bucle FOR ejecuta un bloque de                                                                             comprueba la condición antes de ejecutar el
              ¿Se cumple                sentencias mientras se cumpla una                                                                             código, mientras el segundo primero ejecuta
              la condición?                                                                                   SI          NO
                                        condición, aumentando en cada ejecución                                                                       el código y después comprueba la condición.
                                        un contador en un determinado valor. Es                           Bloque de
                                                                                                            código
Incremento                              una sentencia que se utiliza mucho, sobre                                                                     En contraposición al bucle FOR, este tipo de
                                                                                                                                  Bloque de
 contador           NO                  todo cuando conocemos las dimensiones                                                                         bucles no llevan contador de control.
                                  SI                                                                                                código
                                        de lo que queremos analizar.
               Bloque de                                                                                                   SI
                                                                                                                                                      Hay que tener cuidado a la hora de establecer
                 código                                                                                                                               la condición, ya que si la condición
                                                                                                                                 ¿Se cumple           establecida nunca se puede conseguir el
                                                                                                                                 la condición?        programa entrará en un ciclo infinito de
                                                                                                               DO WHILE                          NO   interacciones

                                                                      Miguel Angel Sanz Santos                                                                                    Miguel Angel Sanz Santos
¿Componentes estructurales de un programa? Flujo del programa                                       ¿Componentes estructurales de un programa? Funciones
                                                                                                    Las funciones son conjuntos de sentencias (una o más) que realizan una
          Junto a estos comandos de flujo existen una serie de comando que permiten romper          determinada tarea. La utilización de funciones dentro de un programa nos va ha
          dicho flujo continuando la ejecución del programa tras la ultima sentencia del bucle.     permitir:
          Dentro de este conjunto de sentencias se pueden diferenciar cuatro, que son :                   •
                                                                                                              Estructurar el programa como si fueran módulos, lo que facilita su revisión y
                                                                                                          ampliación.
          •
            Break: puede utilizarse en sentencias de tipo condicional (switch/if) o en bucles; en         •
                                                                                                              Ahorrar código ya que una misma función puede ser llamada desde distintas
          el primero de los casos produce un salto incondicional al final de la sentencia,
          mientras que en un bucle produce la salida del mismo.                                           partes del programa, lo que permite no tener que repetir el mismo código varias
          •
            Continue: solo puede ejecutarse en el interior de un bucle y produce un salto tras            veces.
          la ultima línea del bloque sentencia del bucle, pero no sale del bucle.                       En realidad son pequeñas partes del programa que pueden contener tanto datos
          •
            Exit: es una terminación forzada del programa.                                          como definiciones de variables propias, llamar a otras funciones e incluso a si
          •
            Return: produce un salto incondicional al final de una función.
                                                                                                    mismas (recursividad).
                                                                                                        Las funciones constan de dos partes: la declaración que hace referencia a como
          Además de estas sentencias en muchos lenguajes aún se mantiene el comando
          GOTO (etiqueta) que realiza un salto incondicional a una posición del programa            será la función y la definición que es la propia función
          representada por una etiqueta. Es poco aconsejable utilizar este comando por la                             TIPO nombre_función (parámetros)
          complejidad que crea en la estructura del programa.                                       Su definición es igual que la de una variables y toda función debe de tener un tipo,
                                                                                                    que indicara el tipo de valor que la función nos devolverá tras ejecutarse.
                                                                      Miguel Angel Sanz Santos                                                                    Miguel Angel Sanz Santos


   ¿Componentes estructurales de un programa? Funciones                                             ¿Componentes estructurales de un programa? Clases y objetos
  A las funciones les podemos enviar datos a través de los parámetros de la función, es             Las tendencias más actuales en programación es el diseño de objetos a los cuales
  tos parámetros son variables a las que se les asigna un valor en cada llamada a la                se les asigna una tarea especifica dentro del programa y que son reutilizables por
  función y como variables que son tienen un tipo. Existen dos formas de pasar valores              diferentes programas.
  a una función:                                                                                    Las clases son los tipos de los objetos, es decir al definir una clase lo que estamos
     Por valor: en este caso el valor que se pasa es una copia del valor de una variable,           establecimiento es un tipo y cuando se crean estancias de este tipo lo que
                                                                                                    desarrollamos son objetos.
  por tanto una vez procesada la función y devuelto el valor, el contenido de la variable
                                                                                                    En la definición de la clase establecemos las variables miembro (variables generales
  que ha pasado el dato no se ve afectada.
                                                                                                    y publicas) y las definiciones de funciones, también denominadas métodos
          Por referencia: en este caso no se pasa el contenido de una variable, si no su
                                                                                                    miembros, que constituirían las funciones del objeto El archivo objeto lo que
  posición de almacenamiento en la memoria, por tanto su contenido puede ser variado
                                                                                                    contendrá será el código de la funciones definidas en la clase.
  dentro de la función.                                                                                                                  ....
                                                                                                    Clase gato {                         (constructor)
                                                                                                    métodos:                             gato:: ronroneo():
              100                                                                                                                                 (inicialización)
                                                Memoria




                                                                                                                       ronroneo();
Memoria




                                                                                                                       comer();                   {
                    Función_valor (copia)                       Función_referencia (posición)                                                     hacer_ruido (mientras_caricias == 0){
                                                                                                                       brincar();
                                                                                                               (Variables)                                         ruido=roooon
              100                                         100
                                                                                                                       int edad;                    }
                                                                                                                       long peso;             }
                                                                                                    }                                    ....
                                                                        Miguel Angel Sanz Santos                                                                        Miguel Angel Sanz Santos
                      Bibliografía
●
    Jesse Liberty (2000) “C++ para principiantes”
    Edit Pearson Educación 448 pg, México.
●
    Microsoft “Ayuda de Visual Basic 6” Microsoft.
●
    Historia de la programación:
    –   http://leo.worldonline.es/rodolfov/
    –   http://galeon.hispavista.com/ultimopunto/
    –   http://www.cs.buap.mx/%7Ejcom/