Introducción a la programación informática
Este blog esta orientado para aquellas personas que estén interesadas en el tema de programación informática. Si estas leyendo este articulo es por que te causa curiosidad o quieres aprender mas de lo que puedes saber. En la programación se utiliza un lenguaje escrito en códigos para ser leídos y ejecutados por la computadora de tal forma que los usuarios o personas que utilicen el programa puedan entenderlo, sencillamente es como traducir el lenguaje de informático a lenguaje humano.
Para empezar haremos varias definiciones sobre la programación:
- Lenguaje de programación es un conjunto de sintaxis y reglas semánticas que definen los programas del computador.
- Lenguaje que los programadores usan para comunicar instrucciones a una computadora y poder ejecutar un programa.
- sistema de escritura para la descripción precisa de algoritmos o programas informáticos.
- Lenguaje que se utiliza para redactar programas de computación.
- Conjunto de sentencias utilizadas para escribir secuencias de instrucciones que para que ejecute una computadora.
Estas son algunas de las definiciones mas destacadas de la programacion, ahora resolveremos preguntas en cuanto a software y desarrollo.
¿Que es programar?
Es la acción de escribir instrucciones correctas para que sean interpretadas por una máquina.
¿Qué es el Software?
Son programas. Para que tengan sentido de software deben ser ejecutados sobre una máquina.
¿En qué medida nos compete programar?
Depende de su interés. De todas formas hoy en día es algo muy importante para cualquier ingeniero.
¿En que medida dependemos de software?
Depende de su estilo de vida, pero para el ciudadano común la dependencia es bastante: celulares, controles remotos (TV, DVD, radios, mp3 players, etc.), cajeros automaticos, etc.
Lenguajes de programación
Un lenguaje de programación es un conjunto de reglas para comunicar ideas para la maquina las cuales son instrucciones de lineas de código que son ejecutadas por un computador. Generalmente, cuando programamos hay que estar muy atento de tres cosas en un lenguaje:
- Sintaxis / Semántica
- Sistema de tipos
- Errores / Excepciones
Es decir, que al momento de programar debemos de tener en cuenta que los códigos que se escriban cumplan con la sintaxis del lenguaje ya que si en algún momento escribimos algo mal por mas mínimo que sea, nuestro programa va a tener errores al momento de colocarlo en funcionamiento. No solamente la sintaxis es importante hay que aclarar que saber programar no es memorizarse la sintaxis o los códigos de los lenguajes de programación si no ademas tener una buena lógica para el desarrollo de los algoritmos; esto lo veremos mas adelante.
Existen muchos lenguajes de programación y cada uno tiene una sintaxis especifica mas no igual. Los lenguajes se pueden catalogar por niveles y los mas populares son C, C++, Java, PHP, Perl y XHTML. También se pueden clasificar por su tipo de aplicación y uso ya que hay lenguajes que son diseñados para trabajar en forma de compilador y son estructurados como por ejemplo el C, C++, FORTRAN, PASCAL, etc. y por otra parte los interpretados y orientados a objetos como PHP, ASP, ActionScript, etc.
- Paradigmas de la Programación
Programación Imperativa
Programación Orientada por Objeto
Programación Funcional
Programación por Eventos
Programación Concurrente
- Lenguajes de programación populares
C, C++, Java, PHP, Perl, XHTML.
- Dominios de aplicación importantes:
Programación Sistema
Sistemas de Gestión de Información
Programación web
Niveles de los lenguajes
- Lenguaje Natural
- Lenguaje de Programación
- Compilador / Interprete
- Lenguaje Máquina
¿Que es un 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 el computador sea capaz de interpretar. Un ejemplo claro de esta definición es cuando realizas un pequeño programa como el de sumar dos números. entonces lo que hace el compilador es ejecutar ese programa que desarrollaste para que el computador realice los procesos y salidas de información que están dentro de él.
Ejemplo de un programa que suma dos números:
Primera entrada: 8
Segunda entrada: 5
Resultado= 13
Como puedes observar en el gráfico, para compilar un programa se necesitan una serie de pasos secuenciales mediante el cual inicia desde el código fuente escrito por el programador, después el compilador analiza el léxico y la sintaxis, se realiza el proceso de normalizacion, después se analiza idénticamente y si todo el contenido del código se encuentra en debida forma y escrito correctamente entonces el compilador transformara el lenguaje maquina para que se ejecute y arroje los resultados deseados por el usuario.
Lenguaje de máquina
Es el lenguaje mas básico, propio de cada computador ya que se encuentra relacionado con el diseño del hardware de la maquina. Generalmente consiste en cadenas de números al final reducidos a ceros y unos equivalente al sistema numérico binario (0100101001)
Operaciones:
- Cargar
- Almacenar
- Sumar
- Restar
Lenguaje ensamblador
Consiste en abreviaturas similares al inglés, llamadas instrucciones sencillas que permiten representar las operaciones elementales de la computadora.
La computadora no entiende directamente lenguaje ensamblador por lo que un programa escrito en este
lenguaje tiene que ser traducido a lenguaje de máquina por un programa llamado un ensamblador para que pueda ser ejecutado por la computadora. Los lenguajes ensambladores todavía requieren que el programador tenga un buen conocimiento de la arquitectura de la computadora.
Lenguaje de alto nivel
Permite a los programadores escribir instrucciones en un lenguaje mas familiar para ellos y que contiene notaciones matemáticas comúnmente utilizadas.
Ejemplos de lenguajes de alto nivel:
- Java
- C
- C++
- Cobol
- Fortran
- Prolog
- Lisp
- PL/I
- smalltalk
- ada
- Basic
- Visual Basic
- Pascal
Diseño de algoritmos
¿Qué es un algoritmo?
Existen muchas definiciones de algoritmo, algunas son muy complicadas de entender pero básicamente es cualquier cosa que funcione paso a paso, donde cada paso se pueda describir sin
ambigüedad y no siempre va dirigido a una computadora en particular. En informática y programación, un algoritmo es una serie de pasos secuenciales los cuales hacen posible que el programador desarrolle una aplicación fácilmente para resolver el problema.
Para el desarrollo de algoritmos existen diferentes formas de hacerlo y algunas herramientas como por ejemplo:
- Diagrama de flujo (para la programación estructurada)
- Círculos y canales de mensaje (programación orientada a objetos)
- Pseudocódigo
- Trazas personales
- Grafismos
- Formulas matemáticas
- Todo aquello que le ayude a representar el problema
Un algoritmo debe ser preciso e indicar el orden de realización de cada paso. Un algoritmo debe ser finito. Si se sigue un algoritmo, se debe terminar en algún momento; o sea, debe tener un número finito de pasos.
Ejemplo:
Supóngase que tiene un examen de PDI. Según una decisión aleatoria, algunos estudiantes estudian antes del examen y otros se van a ver un espectáculo. Realizar el análisis E-P-S y diseñar un algoritmo para representar esta situación.
De esta forma podemos plantear el desarrollo del algoritmo para disminuir la complejidad al momento de entenderlo y ponerlo en marcha.
Si quieres aprender mas acerca de la programación, teoría, practica y algunos ejemplos claros de como desarrollar programas pulsa el enlace 'Programación básica' que se encuentra en la parte superior izquierda del blog.
Si quieres aprender mas acerca de la programación, teoría, practica y algunos ejemplos claros de como desarrollar programas pulsa el enlace 'Programación básica' que se encuentra en la parte superior izquierda del blog.