Fundamentos de programación

Alexandra Neira Quiroz
Laboratoria Developers
5 min readFeb 22, 2017

Cuando estamos entrando al mundo del desarrollo web aparecen conceptos que debemos ir aprendiendo poco a poco, serán las bases para comprender todo lo que vayamos realizando en este nuevo camino del mundo TI.

Revisaremos conceptos básicos de programación, pseudocódigo y diagramas de flujo, ¿estás lista? GO!

¿Que es programar?

Muchas veces hemos utilizado la palabra “programar” sin detenernos a pensar realmente lo que esto significa, ¿se come? ¿es ruso? ¿es humano?, pues la definición más precisa y clara que podemos tener es que corresponde al acto de dar una secuencia de instrucciones a un computador para que éste al ejecutarlas pueda completar una tarea especificada. Programar es parecido a una receta, describe los ingredientes (datos) y la secuencia de pasos (proceso) necesarios para convertir los ingredientes en un rico plato.

Los computadores tienen su propio lenguaje por lo que no entienden el que los humanos utilizamos, como por ejemplo español, inglés, italiano etc. es por esto que tomamos un algoritmo y lo escribimos en un lenguaje de programación para que pueda comprender lo que le indicamos, este va en una jerarquía desde lenguaje máquina (binario) hasta lenguaje de alto nivel como java, Ruby, JavaScript, C++ etc.

¿Qué es un algoritmo?

Es la receta para resolver un conjunto de problemas a través de pasos precisos, definidos y finitos que al ser realizados llevan a la solución. Conceptualmente un algoritmo tiene tres componentes:

  • Entrada: datos sobre los que el algoritmo opera
  • Proceso: pasos que hay que seguir
  • Salida: resultado que entrega el algoritmo

¿Que es Binario?

¿Se bebe? Los computadores trabajan con un sistema llamado binario que utiliza dos valores, los cuales son los dígitos “0” y “1” para manipular cualquier tipo de información.

¿Podemos hacer la conversión hacia numero binario? Si, obvio! Tenemos que ir dividiendo entre 2 y escribir en una columna a la derecha el resto, se coloca un “0” si el resultado de la división es par y un “1” si es impar, la lista de 0 y 1 se leen de arriba hacia abajo dándonos el nuevo número binario.

¿Que es Hexadecimal?

El sistema hexadecimal es de base 16, sus números están representados por los 10 primeros dígitos de la numeración decimal y el intermedio que va del número 10 al 15 representados por las letras del alfabeto de la A a la F. Actualmente es uno de los sistemas más utilizados en el procesamiento de datos principalmente por:

  1. La simplificación en la escritura de los números decimales, cada 4 cifras binarias se representa por una hexadecimal.
  2. Cada cifra hexadecimal se puede expresar a través de cuatro cifras binarias. Para convertir un número binario en hexadecimal se realiza el mismo proceso, pero a la inversa.
  3. En el desarrollo web se usa hexadecimal especialmente para definir colores, cada color estará representado por un grupo de seis dígitos en hexadecimal, precedidos por el signo #

Puedes ver más colores hexadecimales acá

¿Código fuente?

El código fuente es el archivo con las instrucciones necesarias ejecutadas en un lenguaje de programación que sirve para ser compilado posteriormente y así poder ser utilizadas por el usuario de manera directa. En palabras simples, no es más que un texto plano escrito sin formatos y en un lenguaje de programación específico, capaz de ser leído por cualquier editor de textos y comprensible por cualquier programador que maneje el lenguaje utilizado.

¿Compilador e intérprete?

Un compilador es un pequeño programa informático, que se encarga de traducir (compilar) el código fuente de cualquier aplicación que se esté desarrollando, es decir, es un programa que se encarga de traducir lo programado a un lenguaje de máquina que pueda ser comprendido por el equipo y pueda ser procesado por este. “Un compilador es un programa que convierte o traduce el código fuente de un programa hecho en lenguaje de alto nivel, a un lenguaje de bajo nivel (lenguaje de máquina)”.

El intérprete analiza el código fuente y lo ejecuta directamente. Intérpretes y compiladores tienen diversas ventajas e inconvenientes que los hacen complementario. Un intérprete facilita la búsqueda de errores, pues la ejecución de un programa puede interrumpirse en cualquier momento para estudiar el entorno (valores de las variables, etc.). Además, el programa puede modificarse sobre la marcha sin tener que comenzar nuevamente la ejecución.

Compilador: sólo traduce

Intérprete: decodifica y ejecuta

Pseudocódigo

¿Semi código? ¿Casi código? Pseudocódigo es una descripción estructurada de un algoritmo, a pesar de ser muy parecido al código que finalmente se escribirá en el computador, el pseudocódigo está pensado para ser leído por humanos.

La idea es una forma intermedia entre usar lenguaje natural y un lenguaje de programación. No posee una forma estrictamente definida pero normalmente se respeta lo siguiente:

  1. Se usa el concepto de variable y asignación
  2. Se indican los datos de entrada y de salida
  3. Se utilizan instrucciones condicionales del tipo: “si <condición> entonces <instrucciones> sino <instrucciones>
  4. Se utilizan instrucciones de ciclo como “repetir hasta que …”

Podemos ver acá un ejemplo de pseudocódigo

Diagrama de flujo

Es una representación gráfica de un proceso donde cada paso es representado por un símbolo diferente que contiene una breve descripción de la etapa de proceso. Los símbolos gráficos del diagrama están unidos entre sí con flechas que indican la dirección de flujo del proceso.

El diagrama ofrece una descripción visual de las actividades implicadas en un proceso mostrando la relación secuencial entre ellas, facilitando la rápida comprensión de cada actividad y su relación con las demás.

Para la creación de estos se utilizan símbolos y normas de construcción determinados por estándares internacionales, con el objeto de poder interpretar y ser interpretados por otros programadores.

Algunas consideraciones claves en un diagrama de flujos son:

  1. Todos los símbolos deben estar conectados
  2. Un símbolo de proceso puede recibir varias líneas
  3. Un símbolo de decisión puede recibir varias líneas pero sólo devolverá dos: SI o NO, VERDADERO o FALSO
  4. Un símbolo de inicio jamás recibe líneas
  5. Un símbolo de fin no devuelve ninguna línea

--

--