¿Qué es programar?

¿Qué es un computador?

Una máquina para hacer cómputos

Ábaco aprox. 2700 a.C.

Charles Babbage 1791 - 1871

Motor Diferencial

Ada Lovelace 1815 - 1852

Segunda Guerra Mundial: La
llegada del computador digital

Computadores Digitales

  • Más veloces (velocidad de la luz)
  • Más sencillos de construir
  • Las piezas no se desgastan tan rápido

Alan Turing 1912 – 1954

Computadores

Cada computador es distinto,
hablan un idioma diferente

Colossus - 1943

Computadores Digitales: Bits

  • Un computador puede codificar la información
    en 2 estados: hay electricidad (encendido: 1),
    no hay electricidad (apagado: 0)
  • Un 0 o un 1, se llaman un bit
  • 8 bits = 1 byte
  • Las instrucciones se codifican en bytes, p.j. "10000001" significa "sumar", etc.
  • Como representar comandos con solo 0 y 1 puede resultar muy largo, los humanos usamos dígitos hexadecimales (0 ... 9 - A ... F) para representarlos

Arquitectura Von Neumann

Memoria

  • RAM: Memoria de corto plazo - electricidad
  • Discos Duros: Memoria de largo plazo - electromagnetismo

Actualmente

  • Computadores por todas partes
  • Los computadores tienen accesorios los
    que les da más versatilidad que
    simplemente hacer cálculos
  • Esa tendencia seguirá expandiéndose
  • Los computadores abren las
    puertas de la automatización

¿Qué es la programación?

¡Darle instrucciones a un computador!

¡¿Pero los computadores no hablan español?!

Lenguaje de Máquina

  • Instrucciones en bytes
  • Cada procesador tiene un lenguaje diferente

Lenguajes de Programación

  • Más parecidos a comunicación entre humanos
  • Pero son lenguajes formales
  • Ejemplos: Java, Javascript, Python, etc.

Compilador

  • Traduce el código del lenguaje de programación
    a un lenguaje de máquina específico
  • Es el que nos corrige cuando cometamos
    errores de sintaxis en nuestro código

Lenguajes de Programación

¡Hay demasiados
lenguajes de programación!

¡No se dejen empujar a las peleas inútiles entre lenguajes de programación!

Java

  • Lenguaje dominante en la industria empresarial
  • Amigable con los principiantes
  • Gran soporte con herramientas
  • Actualmente en version 20 una nueva cada 6 meses

Aprender un nuevo lenguaje desde de aprender otro es sencillo*

Aprendiendo

  • Enfoque menos en la sintaxis
  • Entiendan ventajas / desventajas de
    cada tema que aprendan
  • RTFM: Read the F* Manual
  • Aprendizaje continuo
  • Bases sólidas

¿Qué es programar?

By Carlos Obregón

¿Qué es programar?

  • 160