Tutorial
Conceptos de Programación




             Elaborado por: Michele André
             Universidad Simón Bolívar
             Marzo 2013
Conceptos de Programación


             Al finalizar el estudiante será capaz de definir los siguientes conceptos:

                                 Dato e Información
                                 El Computador
                                 Programa - Software
                                 Lenguajes de Programación
                                 Base de Datos
                                 Sistema Operativo
                                 Desarrollo de un Programa




Lámina  2
DATO


              El dato es la representación simbólica de un
               hecho, atributo o característica de una entidad.
              Es un conjunto de señales o signos con un significado
               particular.
              Es la materia prima de la información.
              Es susceptible de tratamiento ya sea en un programa
               o proceso informático.
              Ejemplo:
                      45… Edad
                      Pedro… Nombre
                      Ingeniero… Profesión




Lámina  3
INFORMACIÓN

       La información la componen datos que se han colocado en un
        contexto significativo y útil.

       Es un mensaje válido para un receptor o resultado del
        procesamiento de datos que se utiliza para tomar decisiones.

       Es el resultado del procesamiento de los datos.

       Ejemplo:
         El promedio final de un alumno para un curso.
         El número de aprobados en un examen.
         El total de bienes de una empresa.




Lámina  4
EL COMPUTADOR

             El computador es una máquina de procesamiento de información
             capaz de aceptar datos de entrada, procesarlos y entregar resultados
             de salida o información.
               Es una máquina porque tiene cables, circuitos y demás elementos
                mecánicos.

               Es de procesamiento porque es capaz de transformar o procesar datos.

               Es de información porque maneja conjuntos ordenados de datos.

               Se requiere del hardware y del software para procesar la información:
                   • Hardware: Parte física, dispositivos, cables, chips, etc.
                   • Software: Los programas que se ejecutan en el computador




Lámina  5
PROGRAMA




             Programa o Software es el conjunto de instrucciones escritas en
             un lenguaje de programación y que al ser ejecutadas se obtiene la
                           información o solución del problema.




Lámina  6
PROGRAMA


             Un programa de computadora es:
                 Una solución a un problema.
                 Una secuencia de instrucciones que se ejecutan en
                  una computadora.
                 Sólo tan correcto como el programador lo haya hecho.




Lámina  7
ALGORITMO


            Un algoritmo es una colección ordenada y no ambigua de
             instrucciones para la solución de un problema en un tiempo finito.

            Es independiente del lenguaje de programación.

            Un algoritmo no puede ejecutarse hasta que
             se implemente a través de un lenguaje de
             programación.

            Se representa a través de diagramas de flujo
             y pseudocódigos.




Lámina  8
PROGRAMACIÓN



         Los pasos principales para la programación de computadoras son:

              Estudiar el enunciado del problema o el conjunto de requerimientos y
               producir un algoritmo en un pseudocódigo o diagrama de flujo que
               resuelve el problema.

              Traducir el algoritmo en programa que es un código de programación
               en un determinado lenguaje de programación que pueda ejecutarse
               en un computador.

              Probar y corregir el programa hasta que se obtenga la solución.




Lámina  9
PROGRAMACIÓN


              Pasos principales para la programación de computadoras


                                      ANALIZAR
                                         EL
                                      PROBLEMA


                       DEPURAR                        DISEÑAR
                          EL                             UN
                      PROGRAMA                       ALGORITMO



                                       TRADUCIR
                                          EL
                                      ALGORITMO




Lámina  10
Algoritmo vs. Programa


     La diferencia entre algoritmo y programa es:
               El algoritmo es el conjunto de acciones que debe realizar el
                computador para resolver un problema y es independiente del
                lenguaje de programación.
               El programa es la traducción del algoritmo usando un lenguaje de
                programación para que pueda ser ejecutado en el computador y
                obtener la solución del problema

     Un programa de computadora para que pueda ser ejecutado debe ser
      cargado en memoria.

     La unidad de procesamiento del computador sólo puede trabajar con los
      datos e instrucciones que residen en la memoria.




Lámina  11
PROCESAMIENTO DE DATOS


              Transformación los Datos en Información

                         Procesador

               DATOS                   INFORMACION

               Entrada                    Salida


                           Programa

                           Algoritmo

                           Problema


Lámina  12
REQUERIMIENTOS PARA PROGRAMAR



              Para programar se requiere de:
                  Fundamentos generales de programación.
                  Lógica para entender, conceptualizar y solucionar el problema.
                  Conocimientos del lenguaje de programación.


              Estos conocimientos básicos son comunes a cualquier lenguaje de
              programación y permiten al programador indicarle inequívocamente
                       al computador las tareas que éste debe realizar.




Lámina  13
LENGUAJE DE PROGRAMACIÓN

               Un lenguaje de programación es 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 al programador
                especificar de manera precisa sobre qué datos debe
                operar una computadora, cómo estos datos deben ser
                almacenados o transmitidos y qué acciones debe tomar
                bajo una variada gama de circunstancias.

               Se usa para controlar el comportamiento físico y lógico de
                una máquina.




Lámina  14
LENGUAJE DE PROGRAMACIÓN


              Los principales tipos de lenguajes utilizados son:
                    Lenguaje de Máquina.
                    Lenguaje de bajo Nivel o Ensamblador.
                    Lenguajes de Alto Nivel.




Lámina  15
LENGUAJE DE MÁQUINA

      El lenguaje de máquina es un lenguaje que puede ser interpretado
       directamente por los circuitos internos de la máquina.

      Está basado en instrucciones compuestas por sentencias de ceros (0) y
       unos (1).

    Ventajas:
         No requiere traducción, la máquina lo interpreta.
         Opera directamente con la máquina.
         Puede ser eficiente en el manejo de los recursos.
     Desventajas:
         Difícil de aprender, implementar y mantener.
         Es único y particular para cada procesador.


Lámina  16
LENGUAJE DE BAJO NIVEL O ENSAMBLADOR




     El lenguaje ensamblador un lenguaje
      fuente para codificar sentencias simbólicas
      y usa nemotécnicos para representar las
      instrucciones de máquina.

     Un ensamblador convierte cada instrucción
      en instrucciones de lenguaje de máquina.

     Los lenguajes ensamblador se usan
      principalmente en aplicaciones de tiempo
      real, control de procesos y de dispositivos
      electrónicos




Lámina  17
LENGUAJE DE BAJO NIVEL O ENSAMBLADOR

       Lenguaje Ensamblador
              Ventajas:
                 No es tan complicado como el lenguaje de máquina.
                 Eficiente en el manejo de recursos del computador
                  (memoria, procesador, etc.).

              Desventajas:
                 Cada procesador tiene su propio lenguaje ensamblador.
                 El lenguaje es dependiente de la máquina.
                 El lenguaje ensamblador de la PC es diferente a la del Apple, por lo
                  que el programa desarrollado para una computadora no se puede
                  ejecutar en otra diferente.
                 El programa debe ser traducido a lenguaje de máquina para
                  ejecutarse, esto se denomina ensamblar el programa.


Lámina  18
LENGUAJE DE ALTO NIVEL


        El lenguaje de alto nivel es un lenguaje orientado al problema o
         procedimiento.

        Son los más cercanos al lenguaje humano.

        Ejemplo: COBOL, PL/I, FORTRAN, C, etc. y              lenguajes de
         Programación Orientado a Objetos (OOPL) : C++, Java, etc.




Lámina  19
LENGUAJE DE ALTO NIVEL


              Lenguaje de alto nivel
              Ventajas:
                Son independientes del procesador.
                Son más fáciles de aprender, implementar y mantener.
                Tiene un carácter genérico.

               Desventajas:
                Menos eficiente en el manejo de recursos.
                Requiere un proceso de traducción a un código ejecutable que
                 pueda ser interpretado por la computadora para ser
                 ejecutado, esto se denomina compilación o interpretación.




Lámina  20
DESARROLLAR UN PROGRAMA DE COMPUTADORAS

       Pasos para Desarrollar un Programa:

                                              El programador debe escribir las sentencias o
                       Editor                 instrucciones del programa fuente en el lenguaje de
                                              programación con un editor.
                                              El conjunto de sentencias fuente se denomina
                   Programa                   “archivo fuente.”
                    Fuente
                                             El archivo fuente es la entrada para el compilador.
                                             El compilador convierte el archivo fuente en un
                  Compilador                 conjunto de instrucciones entendibles por el computador
                                             denominado “programa ejecutable”.

                                                      Si se encuentra algún error en la sintaxis de
          Listado de            Programa              los comandos en el archivo fuente, el
         Programas y            Ejecutable            compilador produce un listado de errores y no
           Errores                                    produce el archivo ejecutable.




Lámina  21
OTRAS DEFINICIONES


           Sistema Operativo: Es una colección organizada de software que
            controla al computador y administra los servicios y sus funciones
            así como la ejecución de otros programas. Ejemplo; administrar
            dispositivos de salida, el manejo de los archivos, la
            seguridad, entre otros. Ejemplo: Window, Linux, Unix, MAC.




                                                              MAC OS
                     LINUX




           Base de Datos: Es una colección de datos completa e integrada
            para evitar duplicados, que permite recuperar información para
            satisfacer a una amplia variedad de usuarios. Ejemplo: base de
            datos personal, base de datos geográficos, etc.


Lámina  22
Fin Tutorial


          Una vez finalizado el tutorial el estudiante será capaz de definir los
          siguientes conceptos:

                              Dato e Información
                              El Computador
                              Programa - Software
                              Lenguajes de Programación
                              Base de Datos
                              Sistema Operativo
                              Desarrollo de un Programa




Lámina  23

Tutorial conceptos programacion

  • 1.
    Tutorial Conceptos de Programación Elaborado por: Michele André Universidad Simón Bolívar Marzo 2013
  • 2.
    Conceptos de Programación Al finalizar el estudiante será capaz de definir los siguientes conceptos:  Dato e Información  El Computador  Programa - Software  Lenguajes de Programación  Base de Datos  Sistema Operativo  Desarrollo de un Programa Lámina  2
  • 3.
    DATO  El dato es la representación simbólica de un hecho, atributo o característica de una entidad.  Es un conjunto de señales o signos con un significado particular.  Es la materia prima de la información.  Es susceptible de tratamiento ya sea en un programa o proceso informático.  Ejemplo: 45… Edad Pedro… Nombre Ingeniero… Profesión Lámina  3
  • 4.
    INFORMACIÓN  La información la componen datos que se han colocado en un contexto significativo y útil.  Es un mensaje válido para un receptor o resultado del procesamiento de datos que se utiliza para tomar decisiones.  Es el resultado del procesamiento de los datos.  Ejemplo: El promedio final de un alumno para un curso. El número de aprobados en un examen. El total de bienes de una empresa. Lámina  4
  • 5.
    EL COMPUTADOR El computador es una máquina de procesamiento de información capaz de aceptar datos de entrada, procesarlos y entregar resultados de salida o información.  Es una máquina porque tiene cables, circuitos y demás elementos mecánicos.  Es de procesamiento porque es capaz de transformar o procesar datos.  Es de información porque maneja conjuntos ordenados de datos.  Se requiere del hardware y del software para procesar la información: • Hardware: Parte física, dispositivos, cables, chips, etc. • Software: Los programas que se ejecutan en el computador Lámina  5
  • 6.
    PROGRAMA Programa o Software es el conjunto de instrucciones escritas en un lenguaje de programación y que al ser ejecutadas se obtiene la información o solución del problema. Lámina  6
  • 7.
    PROGRAMA Un programa de computadora es:  Una solución a un problema.  Una secuencia de instrucciones que se ejecutan en una computadora.  Sólo tan correcto como el programador lo haya hecho. Lámina  7
  • 8.
    ALGORITMO  Un algoritmo es una colección ordenada y no ambigua de instrucciones para la solución de un problema en un tiempo finito.  Es independiente del lenguaje de programación.  Un algoritmo no puede ejecutarse hasta que se implemente a través de un lenguaje de programación.  Se representa a través de diagramas de flujo y pseudocódigos. Lámina  8
  • 9.
    PROGRAMACIÓN Los pasos principales para la programación de computadoras son:  Estudiar el enunciado del problema o el conjunto de requerimientos y producir un algoritmo en un pseudocódigo o diagrama de flujo que resuelve el problema.  Traducir el algoritmo en programa que es un código de programación en un determinado lenguaje de programación que pueda ejecutarse en un computador.  Probar y corregir el programa hasta que se obtenga la solución. Lámina  9
  • 10.
    PROGRAMACIÓN Pasos principales para la programación de computadoras ANALIZAR EL PROBLEMA DEPURAR DISEÑAR EL UN PROGRAMA ALGORITMO TRADUCIR EL ALGORITMO Lámina  10
  • 11.
    Algoritmo vs. Programa  La diferencia entre algoritmo y programa es:  El algoritmo es el conjunto de acciones que debe realizar el computador para resolver un problema y es independiente del lenguaje de programación.  El programa es la traducción del algoritmo usando un lenguaje de programación para que pueda ser ejecutado en el computador y obtener la solución del problema  Un programa de computadora para que pueda ser ejecutado debe ser cargado en memoria.  La unidad de procesamiento del computador sólo puede trabajar con los datos e instrucciones que residen en la memoria. Lámina  11
  • 12.
    PROCESAMIENTO DE DATOS Transformación los Datos en Información Procesador DATOS INFORMACION Entrada Salida Programa Algoritmo Problema Lámina  12
  • 13.
    REQUERIMIENTOS PARA PROGRAMAR Para programar se requiere de:  Fundamentos generales de programación.  Lógica para entender, conceptualizar y solucionar el problema.  Conocimientos del lenguaje de programación. Estos conocimientos básicos son comunes a cualquier lenguaje de programación y permiten al programador indicarle inequívocamente al computador las tareas que éste debe realizar. Lámina  13
  • 14.
    LENGUAJE DE PROGRAMACIÓN  Un lenguaje de programación es 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 al programador especificar de manera precisa sobre qué datos debe operar una computadora, cómo estos datos deben ser almacenados o transmitidos y qué acciones debe tomar bajo una variada gama de circunstancias.  Se usa para controlar el comportamiento físico y lógico de una máquina. Lámina  14
  • 15.
    LENGUAJE DE PROGRAMACIÓN Los principales tipos de lenguajes utilizados son:  Lenguaje de Máquina.  Lenguaje de bajo Nivel o Ensamblador.  Lenguajes de Alto Nivel. Lámina  15
  • 16.
    LENGUAJE DE MÁQUINA  El lenguaje de máquina es un lenguaje que puede ser interpretado directamente por los circuitos internos de la máquina.  Está basado en instrucciones compuestas por sentencias de ceros (0) y unos (1). Ventajas:  No requiere traducción, la máquina lo interpreta.  Opera directamente con la máquina.  Puede ser eficiente en el manejo de los recursos. Desventajas:  Difícil de aprender, implementar y mantener.  Es único y particular para cada procesador. Lámina  16
  • 17.
    LENGUAJE DE BAJONIVEL O ENSAMBLADOR  El lenguaje ensamblador un lenguaje fuente para codificar sentencias simbólicas y usa nemotécnicos para representar las instrucciones de máquina.  Un ensamblador convierte cada instrucción en instrucciones de lenguaje de máquina.  Los lenguajes ensamblador se usan principalmente en aplicaciones de tiempo real, control de procesos y de dispositivos electrónicos Lámina  17
  • 18.
    LENGUAJE DE BAJONIVEL O ENSAMBLADOR Lenguaje Ensamblador Ventajas:  No es tan complicado como el lenguaje de máquina.  Eficiente en el manejo de recursos del computador (memoria, procesador, etc.). Desventajas:  Cada procesador tiene su propio lenguaje ensamblador.  El lenguaje es dependiente de la máquina.  El lenguaje ensamblador de la PC es diferente a la del Apple, por lo que el programa desarrollado para una computadora no se puede ejecutar en otra diferente.  El programa debe ser traducido a lenguaje de máquina para ejecutarse, esto se denomina ensamblar el programa. Lámina  18
  • 19.
    LENGUAJE DE ALTONIVEL  El lenguaje de alto nivel es un lenguaje orientado al problema o procedimiento.  Son los más cercanos al lenguaje humano.  Ejemplo: COBOL, PL/I, FORTRAN, C, etc. y lenguajes de Programación Orientado a Objetos (OOPL) : C++, Java, etc. Lámina  19
  • 20.
    LENGUAJE DE ALTONIVEL Lenguaje de alto nivel Ventajas:  Son independientes del procesador.  Son más fáciles de aprender, implementar y mantener.  Tiene un carácter genérico. Desventajas:  Menos eficiente en el manejo de recursos.  Requiere un proceso de traducción a un código ejecutable que pueda ser interpretado por la computadora para ser ejecutado, esto se denomina compilación o interpretación. Lámina  20
  • 21.
    DESARROLLAR UN PROGRAMADE COMPUTADORAS Pasos para Desarrollar un Programa: El programador debe escribir las sentencias o Editor instrucciones del programa fuente en el lenguaje de programación con un editor. El conjunto de sentencias fuente se denomina Programa “archivo fuente.” Fuente El archivo fuente es la entrada para el compilador. El compilador convierte el archivo fuente en un Compilador conjunto de instrucciones entendibles por el computador denominado “programa ejecutable”. Si se encuentra algún error en la sintaxis de Listado de Programa los comandos en el archivo fuente, el Programas y Ejecutable compilador produce un listado de errores y no Errores produce el archivo ejecutable. Lámina  21
  • 22.
    OTRAS DEFINICIONES  Sistema Operativo: Es una colección organizada de software que controla al computador y administra los servicios y sus funciones así como la ejecución de otros programas. Ejemplo; administrar dispositivos de salida, el manejo de los archivos, la seguridad, entre otros. Ejemplo: Window, Linux, Unix, MAC. MAC OS LINUX  Base de Datos: Es una colección de datos completa e integrada para evitar duplicados, que permite recuperar información para satisfacer a una amplia variedad de usuarios. Ejemplo: base de datos personal, base de datos geográficos, etc. Lámina  22
  • 23.
    Fin Tutorial Una vez finalizado el tutorial el estudiante será capaz de definir los siguientes conceptos:  Dato e Información  El Computador  Programa - Software  Lenguajes de Programación  Base de Datos  Sistema Operativo  Desarrollo de un Programa Lámina  23