Elementos de Programación

Description

Slide Set on Elementos de Programación , created by Yahir Villanueva on 29/11/2017.
Yahir Villanueva
Slide Set by Yahir Villanueva, updated more than 1 year ago
Yahir Villanueva
Created by Yahir Villanueva almost 7 years ago
8
0

Resource summary

Slide 1

    Elementos de la Programación
    Programación: La programación informática o programación algorítmica, acortada como programación, es el proceso de diseñar, codificar, depurar y mantener el código fuente de programas de computadora. El código fuente es escrito en un lenguaje de programación. El propósito de la programación es crear programas que exhiban un comportamiento deseado. El proceso de escribir código requiere frecuentemente conocimientos en varias áreas distintas, además del dominio del lenguaje a utilizar, algoritmos especializados y lógica formal. Programar no involucra necesariamente otras tareas tales como el análisis y diseño de la aplicación (pero sí el diseño del código), aunque sí suelen estar fusionadas en el desarrollo de pequeñas aplicaciones.  

Slide 2

    Lenguaje de programación: Sistema de símbolos y reglas que permite la construcción de programas con los que la computadora puede operar así como resolver problemas de manera eficaz. Algoritmo. La palabra algoritmo se deriva de la traducción al latín de la palabra árabe alkhowarizmi, nombre de un matemático y astrónomo árabe que escribió un tratado sobre manipulación de números y ecuaciones en el siglo IX. Programa: Secuencia de instrucciones mediante las cuales se ejecutan diferentes acciones de acuerdo con los datos que se estén procesando. Es un algoritmo desarrollado para ser utilizado por la computadora Expresión de un algoritmo en un lenguaje preciso que puede llegar a entender una máquina de cómputo. Utilizar el transporte ( autobús, carro , bicicleta, etc)
    Conceptos Básicos
    IDENTIFICADOR: Un identificador es una serie de caracteres formados por letras, dígitos y el carácter subrayado ( _ ) que no inicie con dígito, asi mismo es el nombre que damos a todo lo que manipulamos dentro de un programa (variables,constantes, funciones, etc). VARIABLES: Una variable es un identificador que puede tomar diferentes valores dependiendo del tipo que esta se declare.Una variable es un identificador que puede cambiar de valor durante la ejecución de un programa.Una variable es una posición de memoria donde se puede almacenar una valor para uso de un programa. OPERADORES: Un operador es un símbolo que indica al compilador que realice manipulaciones lógicas o matemáticas específicas.Los operadores del mismo nivel de precedencia son evaluados por el compilador de izquierda a derecha. Por supuesto, se puede utilizar paréntesis para ordenar la evaluación.También, conviene utilizar paréntesis para hacer más claro el orden en que se producen las evaluaciones, tanto para la persona que lo elabora o para los que después tengan que seguir el programa.  

Slide 3

    Un lenguaje de programación es un lenguaje formal diseñado para realizar procesos que pueden ser llevados a cabo por máquinas como las computadoras. Pueden usarse para crear programas que controlen el comportamiento físico y lógico de una máquina, para expresar algoritmos con precisión, o como modo de comunicación humana. Está formado por un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones. Al proceso por el cual se escribe, se prueba, se depura, se compila (de ser necesario) y se mantiene el código fuente de un programa informático se le llama programación.
    Lenguajes de Programación

Slide 4

    Los lenguajes de programación son lenguajes creado por el ser humano para poder comunicarse con las computadoras. Así podríamos decir que lenguaje de programación es el conjunto de símbolos 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 programación: 1º El Lenguaje Máquina: es el lenguaje de programación que entiende directamente la máquina (computadora). Este lenguaje de programación utiliza el alfabeto binario, es decir, el 0 y el 1. Con estos dos únicos dígitos, también conocidos como bits, se forman lo que se conoce como cadenas binarias (combinaciones de ceros y unos) son con las que se escriben las instrucciones, y a través de estas instrucciones el microprocesador de la computadora entiende nuestra peticiones. El lenguaje máquina fue el primer lenguaje de programación. Este lenguaje de programación dejo de utilizarse por su gran dificultad y por la facilidad para cometer errores al escribir las cadenas binarias. 2º Lenguajes de programación de bajo nivel: Son mucho mas fáciles de utilizar que el lenguaje máquina, pero dependen mucho de la máquina o computadora como sucedía con el lenguaje máquina. El lenguaje ensamblador fue el primer lenguaje de programación que trato de sustituir el lenguaje máquina por otro lenguaje que fuese más parecido al de los seres humanos. En este lenguaje se conoce como programa fuente, que traduce las instruciones a un programa escrito en lenguaje ensamblador por el programador, y programa objeto es la traducción a lenguaje máquina del programa fuente. Los lenguajes de este tipo pueden crear programas muy rápidos, pero son difíciles de aprender, son específicos de cada procesador (de cada máquina), si nos llevamos el programa a otro computador será preciso reescribir el programa desde el comienzo.   3º Lenguajes de programación de alto nivel: Este tipo de lenguajes de programación son independientes de la máquina, los 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 programación de alto nivel a uno de bajo nivel como el lenguaje de máquina que la computadora pueda entender. Los lenguajes de programación de alto nivel son más fáciles de aprender porque se usan palabras o comandos del lenguaje natural, generalmente del inglés. Este es el caso del BASIC, el lenguaje de programación más conocido. Existen muchos lenguajes de programación de alto nivel con sus diferentes versiones. Por esta razón es difícil su tipificación, pero una clasificación muy extendida desde el punto de vista de trabajar de los programas y la filosofía de su creación es la siguiente: Lenguajes de programación imperativos: entre ellos tenemos el Cobol, Pascal, C y Ada. Lenguajes de programación declarativos: el Lisp y el Prolog. Lenguajes de programación orientados a objetos: el Smalltalk y el C++. Lenguajes de programación orientados al problema: son aquellos lenguajes específicos para gestión. Lenguajes de programación naturales: son los nuevos lenguajes que pretender aproximar el diseño y la construcción de programas al lenguaje de las personas. Otra clasificación de los lenguajes de programación de alto nivel, es teniendo en cuenta el desarrollo de las computadoras según sus diferentes generaciones: Lenguajes de programación de primera generación: el lenguaje máquina y el ensamblador. Lenguajes de programación de segunda generación : los primeros lenguajes de programación de alto nivel imperativo (FROTRAN, COBOL). Lenguajes de programación de tercera generación: son lenguajes de programación de alto nivel imperativo pero mucho más utilizados y vigentes en la actualidad (ALGOL 8, PL/I, PASCAL, MODULA). Lenguajes de programación de cuarta generación: usados en aplicaciones de gestión y manejo de bases de dados (NATURAL, SQL). Lenguajes de programación de quinta generación: creados para la inteligencia artificial y para el procesamiento de lenguajes naturales (LISP, PROLOG).
    Clasificación de los lenguajes

Slide 5

    Códigos
    El código fuente de un programa informático (o software) es un conjunto de líneas de texto con los pasos que debe seguir la computadora para ejecutar dicho programa. El código fuente de un programa está escrito por un programador en algún lenguaje de programación, pero en este primer estado no es directamente ejecutable por la computadora, sino que debe ser traducido a otro lenguaje o código binario; así será más fácil para la máquina interpretarlo (lenguaje máquina o código objeto que sí pueda ser ejecutado por el hardware de la computadora). Para esta traducción se usan los llamados compiladores, ensambladores, intérpretes y otros sistemas de traducción. El término código fuente también se usa para hacer referencia al código fuente de otros elementos del software, como por ejemplo el código fuente de una página web, que está escrito en lenguaje de marcado HTML o en Javascript, u otros lenguajes de programación web, y que es posteriormente ejecutado por el navegador web para visualizar dicha página cuando es visitada. El área de la informática que se dedica a la creación de programas, y por tanto a la creación de su código fuente, es la ingeniería de software.

Slide 6

    Se denomina instrucción en informática al conjunto de datos insertados en una secuencia estructurada o específica que el procesador interpreta y ejecuta. Los tipos de instrucción permitidos están definidos y determinados dentro de cada plataforma en el conjunto de instrucciones (en inglés ISA, instruction set architecture), que también determina los registros de origen y destino de la CPU, y en ocasiones un dato inmediato (aquellos que son especificados explícitamente en la instrucción). Estas instrucciones del computador son las que determinan el funcionamiento de la CPU que las ejecuta. La CPU puede realizar una diversidad de funciones, que son el reflejo de la variedad de las instrucciones definidas para dicha CPU. El programador tiene un repertorio de instrucciones como medio para controlar la CPU. Un comando (calco del inglés command) es una instrucción u orden que el usuario proporciona a un sistema informático, desde la línea de comandos (como una shell) o desde una llamada de programación. Puede ser interno (contenido en el propio intérprete) o externo (contenido en un archivo ejecutable). Suele admitir parámetros o argumentos de entrada, lo que permite modificar su comportamiento predeterminado. Suelen indicarse tras una barra "/" (en sistemas operativos DOS) o un guion simple "-" o doble "--" (en sistemas operativos Unix).
    Instrucciones o Comandos

Slide 7

    Variables
    En programación, una variable está formada por un espacio en el sistema de almacenaje (memoria principal de un ordenador) y un nombre simbólico (un identificador) que está asociado a dicho espacio. Ese espacio contiene una cantidad de información conocida o desconocida, es decir un valor. El nombre de la variable es la forma usual de referirse al valor almacenado: esta separación entre nombre y contenido permite que el nombre sea usado independientemente de la información exacta que representa. El identificador, en el código fuente de la computadora puede estar ligado a un valor durante el tiempo de ejecución y el valor de la variable puede por lo tanto cambiar durante el curso de la ejecución del programa. El concepto de variables en computación puede no corresponder directamente al concepto de variables en matemática. El valor de una variable en computación no es necesariamente parte de una ecuación o fórmula como en matemáticas. En computación una variable puede ser utilizada en un proceso repetitivo: puede asignársele un valor en un sitio, ser luego utilizada en otro, más adelante reasignársele un nuevo valor para más tarde utilizarla de la misma manera.Procedimientos de este tipo son conocidos con el nombre de iteración. En programación de computadoras, a las variables, frecuentemente se le asignan nombres largos para hacerlos relativamente descriptivas para su uso, mientras que las variables en matemáticas a menudo tienen nombres escuetos, formados por uno o dos caracteres para hacer breve en su transcripción y manipulación.

Slide 8

    Estructuras de Control
    En lenguajes de programación, las estructuras de control permiten modificar el flujo de ejecución de las instrucciones de un programa. Con las estructuras de control se puede: De acuerdo con una condición, ejecutar un grupo u otro de sentencias (If-Then-Else) De acuerdo con el valor de una variable, ejecutar un grupo u otro de sentencias (Select-Case) Ejecutar un grupo de sentencias mientras se cumpla una condición (Do-While) Ejecutar un grupo de sentencias hasta que se cumpla una condición (Do-Until) Ejecutar un grupo de sentencias un número determinado de veces (For-Next) Todas las estructuras de control tienen un único punto de entrada. Las estructuras de control se pueden clasificar en: secuenciales, iterativas y de control avanzadas. Esta es una de las cosas que permiten que la programación se rija por los principios de la programación estructurada. Los lenguajes de programación modernos tienen estructuras de control similares. Básicamente lo que varía entre las estructuras de control de los diferentes lenguajes es su sintaxis; cada lenguaje tiene una sintaxis propia para expresar la estructura. Otros lenguajes ofrecen estructuras diferentes, como por ejemplo los comandos guardados.

Slide 9

    Estructuras de Datos
    En ciencias de la computación, una estructura de datos es una forma particular de organizar datos en una computadora para que pueda ser utilizado de manera eficiente. Diferentes tipos de estructuras de datos son adecuados para diferentes tipos de aplicaciones, y algunos son altamente especializados para tareas específicas. Las estructuras de datos son un medio para manejar grandes cantidades de datos de manera eficiente para usos tales como grandes bases de datos y servicios de indización de Internet. Por lo general, las estructuras de datos eficientes son clave para diseñar algoritmos eficientes. Algunos métodos formales de diseño y lenguajes de programación destacan las estructuras de datos, en lugar de los algoritmos, como el factor clave de organización en el diseño de software.

Slide 10

     Algunas de las herramientas de programación más importantes y que más se usan a día de hoy, son: Compilador Intérprete Editor Depurador IDE 1.    Compilador  Un compilador es un programa informático que traduce un programa escrito en un lenguaje de programación a otro lenguaje de programación, generando un programa equivalente que la máquina será capaz de interpretar. Usualmente el segundo lenguaje es lenguaje de máquina, pero también puede ser simplemente texto. Este proceso de traducción se conoce como compilación.El compilador permite traducir el código fuente de un programa en lenguaje de alto nivel, a otro lenguaje de nivel inferior (típicamente lenguaje de máquina). De esta manera un programador puede diseñar un programa en un lenguaje mucho más cercano a como piensa un ser humano, para luego compilarlo a un programa más manejable por una computadora. 2.    Editor  Un editor de texto es un programa que permite crear y modificar archivos digitales compuestos únicamente por texto sin formato, conocidos comúnmente como archivos de texto o texto plano. El programa lee el archivo e interpreta los bytes leídos según el código de caracteres que usa el editor. Hoy en día es comúnmente de 7- ó 8-bits en ASCII o UTF-8, rara vez EBCDIC.Por ejemplo, un editor ASCII de 8 bits que lee el número binario 0110 0001 (decimal 97 ó hexadecimal 61) en el archivo lo representará en la pantalla por la figura a, que el usuario reconoce como la letra "a" y ofrecerá al usuario las funciones necesarias para cambiar el número binario en el archivo.Los editores de texto son incluidos en el sistema operativo o en algún paquete de software instalado y se usan cuando se deben crear o modificar archivos de texto como archivos de configuración, scripts o el código fuente de algún programa. 3.    Intérprete  En computación, intérprete o interpretador es un programa informático capaz de analizar y ejecutar otros programas, escritos en un lenguaje de alto nivel. Los intérpretes se diferencian de los compiladores en que mientras estos traducen un programa desde su descripción en un lenguaje de programación al código de máquina del sistema, los primeros (los intérpretes) sólo realizan la traducción a medida que sea necesaria, típicamente, instrucción por instrucción, y normalmente no guardan el resultado de dicha traducción.Usando un intérprete, un solo archivo fuente puede producir resultados iguales incluso en sistemas sumamente diferentes (ej. un PC y una PlayStation 3). Usando un compilador, un solo archivo fuente puede producir resultados iguales solo si es compilado a distintos ejecutables específicos a cada sistema.Los programas interpretados suelen ser más lentos que los compilados debido a la necesidad de traducir el programa mientras se ejecuta, pero a cambio son más flexibles como entornos de programación y depuración (lo que se traduce, por ejemplo, en una mayor facilidad para reemplazar partes enteras del programa o añadir módulos completamente nuevos), y permiten ofrecer al programa interpretado un entorno no dependiente de la máquina donde se ejecuta el intérprete, sino del propio intérprete (lo que se conoce comúnmente como máquina virtual).Para mejorar el desempeño, algunas implementaciones de programación de lenguajes de programación pueden interpretar o compilar el código fuente original en una más compacta forma intermedia y después traducir eso al código de máquina (ej. Perl, Python, MATLAB,  Ruby y C#).Comparando su actuación con la de un ser humano, un compilador equivale a un traductor profesional que, a partir de un texto, prepara otro independiente traducido a otra lengua, mientras que un intérprete corresponde al intérprete humano, que traduce de viva voz las palabras que oye, sin dejar constancia por escrito. 4.    Depurador  Un depurador (en inglés, debugger), es un programa que permite depurar o limpiar los errores de otro programa informático. Al Iniciarse la depuración, el depurador lanza el programa a depurar. Éste se ejecuta normalmente hasta que el depurador detiene su ejecución, permitiendo al usuario examinar la situación. El depurador permite detener el programa en: Un punto determinado mediante un punto de ruptura. Un punto determinado bajo ciertas condiciones mediante un punto de ruptura condicional. Un momento determinado cuando se cumplan ciertas condiciones. Un momento determinado a petición del usuario. Durante esa interrupción, el usuario puede: Examinar y modificar la memoria y las variables del programa. Examinar el contenido de los registros del procesador. Examinar la pila de llamadas que han desembocado en la situación actual. Cambiar el punto de ejecución, de manera que el programa continúe su ejecución en un punto diferente al punto en el que fue detenido. Ejecutar instrucción a instrucción. Ejecutar partes determinadas del código, como el interior de una función, o el resto de código antes de salir de una función. El depurador depende de la arquitectura y sistema en el que se ejecute, por lo que sus funcionalidades cambian de un sistema a otro. Aquí se han mostrado las más comunes. 5.    IDEs más populares  Existen multitud de IDEs para diferentes tipos de lenguaje de programación, para un lenguaje concreto podemos encontrar entornos de todo tipo, desarrollado por compañías de código abierto o simplemente privativo.Generalmente,  entre todos los IDEs creados para un lenguaje determinado, siempre encontramos algunos más populares que otros o que han sido aceptados mejor entre los programadores.De la misma manera nacen los frameworks (marcos de trabajo). Son la base sobre la que se sustenta el programador para escribir el código de un programa, estos incluyen  programas, bibliotecas y un lenguaje interpretado entre otros programas para ayudar a desarrollar y unir los diferentes componentes de un proyecto. Generalmente reúnen las funciones más comunes para llevar a cabo un proyecto específico.Dentro de los entornos más conocidos para Java encontramos Eclipse y NetBeans, ambos proyectos de código abierto, creados en el propio lenguaje java, la diferencia entre los dos erradica en que cada uno está enfocado a una finalidad distinta lo que no conlleva a que ambos no puedan hacer lo mismo.NetBeans se inclina hacia aplicaciones desarrolladas a partir de un conjunto de componentes software, llamados módulos. Los módulos  pueden ser desarrollados independientemente, las aplicaciones basadas en la plataforma NetBeans pueden ser extendidas fácilmente por otros desarrolladores de software, mientras que eclipse está orientado a desarrollar lo que el proyecto llama "Aplicaciones de Cliente Enriquecido", opuesto a las aplicaciones "Cliente-liviano" basadas en navegadores.Uno de los entornos más potentes de la red, es Microsoft Visual Studio, aunque no el más usado y mejor posicionado, C# es de los lenguajes más rápidos dentro de su ámbito. Su principal característica es que es un lenguaje interpretado, pero a diferencia de java es interpretado a un lenguaje intermedio, que luego es traducido al lenguaje máquina dependiendo en el sistema que se ejecuta. Utiliza .net, el framework desarrollado por Microsoft y de los más conocidos ya que viene con el sistema operativo Windows. Una función pionera de este entorno es que es capaz  de reconocer lo que se escribe y al mismo tiempo consultar una base de datos propia para agilizar la escritura del código, de manera que cuando detecta que estas escribiendo algo relacionado con lo ya escrito o conocido, es capaz de autocompletar el resto de texto. Cada vez son más los entornos que lo implementan.Dentro del marco de los microcontroladores encontramos MPLab IDE, es un editor gratuito destinado a productos de la marca Microchip. Es un editor modular, es decir, permite seleccionar los distintos tipos de microcontroladores soportados, además de permitir la grabación de estos circuitos integrados directamente al programador.Por último, MATLAB,  un software matemático con un lenguaje de programación propio (lenguaje M). Está disponible para los sistemas Unix, Windows y Apple Mac OS X.Entre sus prestaciones básicas se hallan: la manipulación de matrices, la representación de datos y funciones, la implementación de algoritmos, la creación de interfaces de usuario (GUI) y la comunicación con programas en otros lenguajes y con otros dispositivos hardware. El paquete MATLAB dispone de dos herramientas adicionales que expanden sus prestaciones,  Simulink (plataforma de simulación multidominio) y GUIDE (editor de interfaces de usuario – GUI).
    Herramientas de Programación
Show full summary Hide full summary

Similar

Operadores Python
Giovanni Sanhuez
Mis Recursos de Programación
maya velasquez
FUNDAMENTOS DE REDES DE COMPUTADORAS
anhita
Editor Dibujo Paint
gladiscj
Herramientas de Software para Comercio y Finanzas
mishelleisabel
Lenguaje de programación.
Lina Melo
Clasificación de variables
Rober Sanchez