¿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