Programación 1.4 Tipos de lenguajes de programación
Summary
TLDREl video explica los diferentes tipos de lenguajes de programación, clasificándolos principalmente en compilados e interpretados. Los lenguajes compilados se traducen a código binario antes de ser ejecutados, lo que los hace más rápidos. Los interpretados, como Python o JavaScript, se traducen en tiempo real, siendo más lentos. También se aborda la diferencia entre lenguajes de alto y bajo nivel: los de alto nivel, como Python, son fáciles de entender por los humanos, mientras que los de bajo nivel, como ensamblador, permiten un control más directo sobre el hardware, pero son más complejos.
Takeaways
- 💻 Los lenguajes de programación se pueden clasificar de varias formas, pero no hay un número exacto de cuántos existen, ya que hay miles, incluso lenguajes creados como bromas.
- 📊 Una de las principales clasificaciones es si un lenguaje es compilado o interpretado, lo que influye en su rendimiento y forma de uso.
- 🖥️ Un lenguaje compilado debe transformarse a código de máquina antes de ejecutarse, lo que lo hace más rápido pero requiere un paso adicional de compilación.
- ⚡ Los lenguajes interpretados, como Python o JavaScript, son traducidos en tiempo real por un intérprete instalado previamente en la computadora.
- 🏃♂️ Los lenguajes compilados suelen ser más rápidos que los interpretados, ya que el código se convierte directamente a binario, que la máquina entiende rápidamente.
- 📡 Algunos lenguajes, como Java y C#, se compilan a un código intermedio llamado bytecode, que luego es interpretado, lo que los hace más portables entre plataformas.
- 🔧 Otra clasificación importante es entre lenguajes de alto y bajo nivel. Los de alto nivel están diseñados para ser más comprensibles para los humanos, mientras que los de bajo nivel son más cercanos al lenguaje de la máquina.
- ⚙️ Los lenguajes de bajo nivel, como el ensamblador, requieren especificar instrucciones muy detalladas para el procesador, lo que los hace más tediosos pero útiles para control preciso.
- 🤖 Los lenguajes de alto nivel, como Python y JavaScript, son más fáciles de usar porque ocultan muchos detalles técnicos de la máquina, facilitando la programación.
- 🎯 Los lenguajes de nivel intermedio, como C y C++, combinan características de lenguajes de alto y bajo nivel, brindando flexibilidad y control, pero también mayor complejidad.
Q & A
¿Cuántos lenguajes de programación existen aproximadamente?
-No se sabe con certeza, pero se estima que existen miles de lenguajes de programación, ya que cualquier persona puede crear su propio lenguaje.
¿Cuál es la diferencia principal entre un lenguaje compilado y uno interpretado?
-La diferencia principal es que un lenguaje compilado se transforma en código máquina antes de ejecutarse, mientras que un lenguaje interpretado se traduce en tiempo real durante la ejecución.
¿Qué ventaja tiene un lenguaje compilado sobre uno interpretado?
-Los lenguajes compilados suelen ser más rápidos, ya que se traducen a código máquina antes de su ejecución, mientras que los interpretados son un poco más lentos debido a que se traducen en tiempo real.
¿Qué ejemplos de lenguajes compilados se mencionan en el guion?
-En el guion se mencionan Go, C++ y Rust como ejemplos de lenguajes compilados.
¿Cómo funciona un intérprete en un lenguaje interpretado?
-El intérprete actúa como un traductor en tiempo real, convirtiendo las instrucciones del lenguaje en algo que la computadora puede entender sin necesidad de un proceso de compilación previo.
¿Qué es el bytecode y cómo se relaciona con lenguajes como Java?
-El bytecode es un código intermedio en el que se compilan lenguajes como Java. Este código intermedio se interpreta en tiempo de ejecución, permitiendo que el programa sea portable y ejecutable en diferentes plataformas.
¿Cuál es la diferencia entre lenguajes de alto nivel y bajo nivel?
-Los lenguajes de alto nivel están diseñados para ser fáciles de entender por humanos y ocultan los detalles de hardware, mientras que los de bajo nivel, como el ensamblador, dan instrucciones directas al procesador y requieren más detalle en la programación.
¿Por qué los lenguajes de bajo nivel son más difíciles de programar?
-Porque requieren instrucciones muy detalladas y específicas sobre el funcionamiento del hardware, lo que hace que el proceso sea más tedioso y complicado.
¿Qué lenguajes se consideran de nivel medio y por qué?
-Lenguajes como C y C++ son considerados de nivel medio, ya que permiten cierta cercanía al hardware como los lenguajes de bajo nivel, pero también ofrecen características de lenguajes de alto nivel.
¿Qué ejemplos de lenguajes de alto nivel se mencionan en el guion?
-Algunos ejemplos de lenguajes de alto nivel mencionados en el guion son Python, PHP y JavaScript.
Outlines
💻 Tipos de lenguajes de programación y su clasificación
El autor comienza reflexionando sobre la cantidad de lenguajes de programación existentes, indicando que no hay una cifra exacta, pero que existen miles. Luego, menciona que cualquiera puede crear un lenguaje, y hace referencia a lenguajes humorísticos como uno basado en Samuel L. Jackson. Después, introduce la idea de que algunos lenguajes han alcanzado un estatus icónico en el mundo de la programación. A partir de aquí, describe la primera clasificación de lenguajes: compilados e interpretados. Los lenguajes compilados requieren un proceso de transformación antes de ser ejecutados, mientras que los interpretados se ejecutan en tiempo real gracias a un intérprete que actúa como traductor entre el lenguaje humano y la computadora.
⚙️ Diferencia entre compilación e interpretación en la programación
El autor profundiza en las diferencias entre lenguajes compilados e interpretados, utilizando ejemplos como Python y Java. Explica que los lenguajes compilados son más rápidos porque se transforman directamente en lenguaje de máquina antes de ejecutarse, mientras que los interpretados son traducidos en tiempo real por un intérprete, lo que los hace un poco más lentos. Pone ejemplos sencillos para ilustrar la diferencia, como una película subtitulada (compilado) frente a una doblada (interpretado). También menciona el lenguaje Go como un ejemplo de un lenguaje compilado que se convierte en binario, lo que facilita su ejecución.
📱 Código intermedio y lenguajes intermedios como Java
Se introduce la idea de lenguajes que se compilan y luego se interpretan, como Java, que genera un código intermedio llamado bytecode. Este bytecode puede ejecutarse en cualquier plataforma gracias a su portabilidad. Se menciona cómo Java fue diseñado para ser compatible con múltiples sistemas operativos y dispositivos. El autor también habla de la familia de lenguajes de Java, como Kotlin y C#, y cómo estos lenguajes se compilan a este código intermedio que luego es interpretado por una máquina virtual.
🏗️ Alto nivel vs bajo nivel en lenguajes de programación
El autor introduce otra clasificación: lenguajes de alto nivel y bajo nivel. Los lenguajes de alto nivel están diseñados para ser fáciles de entender para los humanos, mientras que los de bajo nivel dan instrucciones directas a la máquina, como el ensamblador, que es más complejo. Usa una metáfora para describir la diferencia: en un lenguaje de alto nivel, el programador le da órdenes generales a una persona (como 'grabar un evento'), mientras que en bajo nivel, tendría que explicar cada paso detalladamente (cómo operar la cámara, configurar el trípode, etc.).
🔧 Lenguajes de medio nivel y la simplicidad de los lenguajes de alto nivel
Se menciona que los lenguajes de medio nivel, como C y C++, están entre los de alto y bajo nivel. Aunque muchas personas los consideran de bajo nivel, el autor aclara que los lenguajes de bajo nivel verdaderos son ensamblador y binario. Los lenguajes de alto nivel, como Python, PHP y JavaScript, son más fáciles de usar porque están diseñados para ser comprensibles por los humanos sin necesidad de conocer los detalles subyacentes. El autor concluye que existen muchas más divisiones en los lenguajes, pero estas son las más importantes para entender los fundamentos.
Mindmap
Keywords
💡Lenguajes compilados
💡Lenguajes interpretados
💡Intérprete
💡Compilador
💡Bytecode
💡Lenguaje de alto nivel
💡Lenguaje de bajo nivel
💡Lenguaje de medio nivel
💡Portabilidad
💡Lenguaje máquina
Highlights
Los lenguajes de programación pueden clasificarse en compilados e interpretados.
Un compilador traduce el código a un formato que la computadora puede entender, como binario.
Los lenguajes compilados son más rápidos porque no requieren traducción en tiempo real.
Un intérprete traduce el código en tiempo real, lo que puede hacerlo más lento que los compilados.
Python, JavaScript y PHP son ejemplos de lenguajes interpretados.
Go y C++ son ejemplos de lenguajes compilados.
Java y C# son lenguajes intermedios que se compilan a bytecode y luego se interpretan.
Los lenguajes de alto nivel son más fáciles de entender y usar, ya que están diseñados para personas.
Un lenguaje de bajo nivel, como el ensamblador, da instrucciones más directas al procesador.
El lenguaje de ensamblador es más tedioso porque requiere especificar cada detalle del proceso.
Los lenguajes de medio nivel, como C y C++, se encuentran entre los lenguajes de alto y bajo nivel.
Un lenguaje de alto nivel simplifica la programación al ocultar la complejidad subyacente del hardware.
En lenguajes de bajo nivel, como el ensamblador, se controla cada detalle de las instrucciones al procesador.
Los lenguajes de programación pueden clasificarse también por el tipado de datos.
Cada tipo de lenguaje tiene sus ventajas y desventajas, dependiendo del nivel de control o facilidad que se busque.
Transcripts
los tipos de lenguaje de programación
saben Cuántos lenguajes hay alguien sabe
nadie yo no sé tampoco
pero le pregunté que no está mal
preguntarle okay O sea de hecho solo la
gente que aparenta es la que dice que
tiene todas las respuestas cierto hay
que tener vergüenza en nuestra
ignorancia le pregunté Oye cuándo
lenguaje existen me dijo que no se sabe
Pero que hay miles miles yo me quedo yo
pensaba que habían cientos yo de verdad
Pensé que habían cientos y me dijo Son
miles y dije tiene sentido porque
realmente cualquier persona puede crear
su propio lenguaje y hay lenguajes Pues
que son hasta de burla hay un lenguaje
basado en Samuel el Jackson saben quién
es no que tiene pura groserías claro una
grosería para el If una grosería para el
Ford o sea cualquiera puede escribir su
lenguaje Pero obviamente Hay ciertos
tipos de lenguaje que son los que
llegaron como les digo al Olimpo de la
programación no que todo el mundo los
usa y que marcaron historia pero vamos a
ver Cuáles son los tipos cómo
clasificaría yo los lenguajes hay muchos
muchas formas de clasificarlos sí muchas
formas vamos a empezar por la primera la
primera forma de clasificarlos es si son
compilados o
interpretados esa es la primera forma
hay varias formas ojo Ah hablamos hace
un ratito los compiladores se acuerdan
que era un compilador tengo un lenguaje
y el lenguaje está hecho Para quién para
el ser humano no hay Ahí está esa cosa
es un ser humano imagínense Entonces el
ser humano entiende lenguaje de
programación cierto aprendió python
aprendió Java escriba aprendió php bacán
pero la computadora Imagínese que esta
vaina es una computadora le mandan
digamos python por ejemplo ya y la
computadora dice Cristóbal
no entiendo qué me estás mandando no
entonces Claro si yo mando un lenguaje
si yo mando un lenguaje primero debe
transformarse Sí eso ya hemos visto
cierto acá Este cuadrado es el
compilador y ya sin embargo la
compilación requiere un paso extra de
programar tu programas programas con
pilas ejecutas cierto programa es algo
más con pilas ejecutas Ok cuando estás
aprendiendo Está chévere pero cuando ya
la app que estás haciendo crece
programas con pilas esperas media hora
ejecutas programas con pilas esperas
otra media hora cierto o sea ya ya deja
de ser tan bonito no entonces hay otro
tipo de lenguajes que no requieren
compilarse requieren interpretarse en
este caso es el lenguaje Aquí está la
computadora de nuevo Aquí está la
personita y ahora sí le mando python y
la computadora ya no pregunta qué es esa
huevada sino que la computadora dice
Está bien te lo acepto te lo compro
venga por qué Porque la computadora le
has instalado antes un programa llamado
intérprete se entiende antes le tuve que
instalar Esa computadora el intérprete
si no se lo instalo igual no sabe qué es
igual no sabe qué es primero instalo el
intérprete Qué es el intérprete un
traductor en tiempo real básicamente un
intérprete es una película doblada al
español con las voces en español cierto
tú la estás viendo te están hablando en
español no tienes que hacer ningún
esfuerzo extra ya está y un compilador
es como la película subtitulada por
poner un ejemplo muy simplón Pero para
que me entiendan la idea no porque en el
compilado tienes que hacer un proceso
previo compilar y luego ejecutar en el
interpretado instalas el intérprete y el
intérprete en tiempo real lo entiende o
por poner otro ejemplo un intérprete Es
como hablar con otra persona con un
traductor al medio una persona que hable
chino yo no hablo chino y se han visto
no ponen una persona al medio que va
traduciendo en tiempo real cierto eso
sería un interpretado el compilado no el
compilado se tendría que Traducir es
todo antes toditito La respuesta es
toditito tenían que prepararse De
antemano no Entonces los lenguajes
compilados suelen ser más veloces porque
ya le entregas a la computadora unos y
ceros los lenguajes interpretados son un
poquito más lentos tampoco es que sean
lentos Ah Solo que si los pones a
competir con los compilados pues pierden
pero pues tampoco es que sean lentos Por
qué por qué pierden porque en tiempo
real tienen que estar traduciendo cierto
tú le mandas las instrucciones ponte
llave escribes interpretado no es
compilado entonces tú manda llave Script
Y qué pasa el navegador en tiempo real
en tiempo de ejecución va traduciendo
línea por línea entonces un poco más
lento no pero por ejemplo en compilado
tenemos al famoso lenguaje go go se
compila a binario y ya está lo mandas de
hecho siempre me dice que hacer deploide
Go es poner el binario en una carpeta
cierto lo pone en una carpeta y ya está
eso es todo ya funciona en otros
lenguajes hay que instalar un montón de
vainas no sé si alguno de ustedes habrá
visto le habrá tocado habrá escuchado ya
va por ejemplo Ay Dios no todo lo que
hay que instalar en la computadora para
que ya va funcione no es por esto pues
es por esto O sea necesito un montón de
cosas pero cuando es binario la
computadora lo entiende porque está en
su lenguaje Ese es el famoso lenguaje
máquina el binario bien pero hay unos
lenguajes intermedios hay lenguajes como
Java y toda la familia de Java cotlin
escala y no sé cuántos más o por ejemplo
si sharp y si ya fue una copia de Java
hay un video en el Canal de The Team que
se llama este qué carajos es punto net
donde Les explico toda la historia de
punto net y que para que lo vayan a ver
si les interesa Sí pero ellos se
compilan se compilan OK Pero no se
compilan a binario se compilan a un
código intermedio llamado bytecode y ese
código intermedio se interpreta o sea se
compilan y se interpretan a la vez Java
nació con la idea de poder ejecutarse en
cualquier lugar en computadoras Windows
Mac Linux en computadoras chiquititas en
este cómo se llaman estos
decodificadores de televisión
cualquier aparato no era magia en teoría
No gracias a esto esto lo hacía portable
hacía que te puedas llevar el a
cualquier lugar listo miren aquí tenemos
varios vídeos de team donde voy mucho
más a detalle si ustedes quieren verlos
pero básicamente Esa es la primera
diferencia los compilados se tienen que
Traducir antes y los interpretados en
tiempo de ejecución se van traduciendo
en tiempo real Esa es la principal
diferencia interpretados por ejemplo
javascript el más famoso javascript
python
php y varios más no Esos son los más
famosos en el caso de compilados go
c++ son lenguajes compilados ras se han
escuchado y en el caso de los
intermedios que se compilan y se
interpretan a la vez sería Java y toda
su familia y toda su familia también
Creo que es el único de su familia no
tiene más familias y sharp listo
otra y con esto cierro para que para no
hacerlo muy largo Pero esto es muy
importante alto nivel y bajo nivel vamos
a poner aquí a la persona al programador
y abajo vamos a poner a la computadora y
ahí me van a entender esto es alto alto
y esto es bajo ya está eso es todo Si el
lenguaje está pensado para que una
persona lo entienda es alto nivel si
está pensado para darle instrucciones
muy directas al procesador a los fierros
a la máquina del sistema es bajo nivel
obviamente es mucho más difícil de
entender o sea aquí está nuestro amigo
ensamblador porque es directo al
procesador son instrucciones directas al
procesador O sea tienes que decirle cada
cosa vamos a poner un ejemplo muy
sencillo un lenguaje de alto nivel sería
decirle a Matías Matías por favor
grabas el evento ya está él sabe Cómo
grabar él sabe qué cámaras necesita qué
micrófonos si necesita asistentes cables
me entienden Yo solo le digo graba el
evento eso sería un lenguaje de alto
nivel no sé qué pasa por debajo solo le
doy una orden no sé qué hará esa persona
o ese compilador o ese intérprete me
siguen la idea y lo hace pero un
lenguaje el lenguaje de bajo nivel
tendría que decirle a Matías Matías
tomas un auto camina cinco pasos a la
derecha cinco pasos a la izquierda vas a
ver una puerta caminas diez pasos no
luego vas a ver un objeto negro eso se
llama cámara lo vas a poner en esta cosa
que se llama trípode luego hay un botón
arriba donde se enciende se dan cuenta
pasito por pasito por pasito por pasito
eso sería el ensamblador es más tedioso
pero si tú quieres controlar cada
detalle Ese es el lenguaje por eso es
que en alto nivel es muy fácil programar
sí tiene sus dificultades cuando vas
avanzando de nivel pero para empezar el
facilísimo porque ha sido pensado en ser
fácil Y al medio los lenguajes de medio
nivel que no están ni para arriba ni
para abajo tenemos a los famosos c y c++
mucha gente le suele decir de bajo nivel
pero realmente no son de bajo nivel bajo
niveles ensamblador y binarios y ya está
no hay más y los alto nivel son pues
payton php es javascript y demás no
porque son amigables para él la persona
y la persona no sabe qué pasa por debajo
No yo pongo aler Hola amigos en
javascript no sé qué carajos pasó para
que salga una ventana No tengo idea o
alguien no alguno se sabe qué habrá
pasado no solo puse eso y salió algo eso
es un lenguaje de alto nivel listo hay
más divisiones de los lenguajes pero con
estas dos les basta para entender bien
cómo se dividen los lenguajes hay otra
división que es de tipado de datos pero
Beto les va a hablar de tipo de datos
Así que ahí pueden entrar en más detalle
y ni yo no voy a consumir ese tiempo sí
Weitere ähnliche Videos ansehen
Historia de los Lenguajes de Programación
[Tema 7] Lenguajes de alto y bajo nivel
5. Programación desde Cero | Algoritmos y Programación | Lenguaje de programación (parte 2)
¿Con qué lenguaje de programación se crean los lenguajes de programación?
PROGRAMACIÓN DESDE 0 || LENGUAJES DE PROGRAMACIÓN Y SUS TIPOS || TEORÍA
¿Cómo se comunican los programas escritos en lenguajes distintos?
5.0 / 5 (0 votes)