Bienvenido al blog de Undercode   Click to listen highlighted text! Bienvenido al blog de Undercode
Inicio Biografía Aprender a programar un paradigma imponente

Aprender a programar un paradigma imponente

por Paloma Martinez

Aprender a programar un paradigma imponente

 

Siendo una autodidacta en el camino del programar, me gustan mucho las biografías, cuando se me propuso escribir de forma libre sobre un tema, se me vino a la cabeza un nombre difícil de pronunciar, pero de una magnitud enriquecedora para nuestro camino como programadores y programadoras.

 

Hoy mi escrito va a ser dedicado al señor: Edsger Dijkstra (Científico de la computación)

Estructura de control

Programar de forma ágil y simple

Este visionario de la programación nació:  en Rotterdam, Holanda por el año 1930, y la fecha de su muerte sucedió en Nuenen, Holanda por el año 2002

Fue investigador para Burroughs Corporación allá por los 70.

Cuando comienzas con la idea de ser programador o programadora, todas las alarmas saltan en conjunto, más que nada, si nunca has estado en contacto con las herramientas, que son de uso cotidiano para un  profesional de este tipo.

Traje aquí a este personaje para explicar básicamente, que pasó por una situación similar al querer aprender a programar y mejorar las dinámicas para hacerlo.

 

A diferencia de nosotros como contemporáneos,  ya tenemos un bagaje de información para aprender, practicar y elegir ¿a qué rama queremos pertenecer?; él por ejemplo, decidió hacerlo por simple curiosidad.

 

En ese camino orientando por la curiosidad y un espíritu inquieto, logró desarrollar lo que hoy en día se conoce como:

 Estructuras de control

Las estructuras de control, son aquellas que le dicen al programa que pasos o secuencias debe realizar para poder lograr su objetivo lógico, por ejemplo para que sea mas entendible existen tres principales estructuras de control:

 

  • Secuencial: Es la forma mas simple en cuanto a estructura se refiere, solo ejecuta una instrucción  tras otra

Estructuras de asignación, entrada y salida .

  • Condicional: En este caso la estructura se determina de acuerdo a su complejidad , las que existen son:
  1. Condicional simple:
    if (condición)
     //Instrucciones a ejecutar  
     //en caso de que sea verdadero
  2. Condicional Doble:
    if (condición)
      //Instrucciones a ejecutar 
      //en caso de que la condición 
      //sea verdadera
    else
      //Instrucciones a ejecutar 
      //en caso de que la condición 
      //sea falsa
  3. Condicional múltiple:
    switch(variable)
    case valor1:
    //En caso de que la variable
    //tenga este valor
    break;
    case valor2:
    //En caso de que la variable
    //tenga este valor
    break;
    case valor3:
    //En caso de que la variable
    //tenga este valor
    break;
    case valor4:
    //En caso de que la variable
    //tenga este valor
    break;
    ...
    ...
    ...
    default:
    //En caso de que la variable
    //no coincida con ninguno de
    //los valores anteriores
    break;
  • Repetitiva: Ciclo FOR, Ciclo WHILE, Ciclo DO WHILE.

 

Enumeraremos los aportes que le hizo a la ciencia del computador

Uno de los más importantes que prevalece en nuestros días es el llamado protocolo de enrutamiento OSPF (Open Shortest Path First)

 

Dijkstra era un aficionado de Algol60, y trabajó en el equipo que desarrolló el primer compilador para este lenguaje. En ese mismo año creó el primer sistema operativo con estructura jerárquica, de niveles o capas. Fue denominado THE (Technische Hogeschool, Eindhoven) que se utilizó con fines didácticos.

  • El Algoritmo de Dijkstra  o el camino mas corto

Está basado en encontrar entre dos vértices el camino más corto, lo que da como resultado que tengan diferentes soluciones.

 

 

 

La idea subyacente en este algoritmo consiste en ir explorando todos los caminos más cortos que parten del vértice origen y que llevan a todos los demás vértices.

¿Como es su proceso?

Inicia en un vértice, para lograr llegar a completar un camino optimo, dentro de esta estructura se usa, la técnica greedy (Supone que para que un camino sea optimo, todos los caminos tambien deben ser óptimos).

Aqui les dejo una explicación mas detallada de los algoritmos voraces.

 

  • Notación polaca inversa

Es un método algebraico alternativo de introducción de datos. Su nombre viene por analogía con la relacionada notación polaca.

            

           

 

Espero que puedan disfrutar de los avances y elaboraciones que realizó este maestro, para que hoy en día la programación, sea un camino más bello y logremos ser cada vez más, los que nos apasionamos por esta vida.

 

A Continuación les dejaré unas frases inspiradoras, para que si aún, no se pusieron en carrera, se sientan animados y animadas.

 

Frases inspiradoras de Edsger Dijkstra :

 

No es tarea de la Universidad ofrecer lo que la sociedad le pide, sino lo que la sociedad necesita.

 

Se pueden probar los programas para mostrar la presencia de errores, ¡pero nunca para demostrar su ausencia!.

 

La simplicidad es prerrequisito para la confiabilidad.

 

Programar es un paradigma, una realidad,  un  estilo de vida, súmate!!

Esta frase es de mi autoría.

 

Referencias:

  1. https://es.wikipedia.org/wiki/Problema_del_camino_m%C3%A1s_corto
  2. https://es.wikipedia.org/wiki/Algoritmo_de_Dijkstra
  3. https://es.wikipedia.org/wiki/Notaci%C3%B3n_polaca_inversa
  4. https://studentplace98.blogspot.com/2019/02/Tipos-de-Estructuras.html

 

Dejar Comentario

Click to listen highlighted text!