Platzi
Platzi

¡Invierte en ti y celebremos! Adquiere un plan Expert o Expert+ a precio especial.

Antes: $349
$259
Currency
Antes: $349
Ahorras: $90
COMIENZA AHORA
Termina en: 13D : 9H : 14M : 43S

Debes iniciar sesión

Para ver esta clase crea una cuenta sin costo o inicia sesión

¿Cómo funciona el JavaScript Engine?3/13

JavaScript Engine: Es el motor de JS, siempre corre en el navegador.
Su función es interpretar el código JavaScript y convertirlo a Machine Code para que la máquina pueda entenderlo.

  • Just in time compiler: Es la compilación en tiempo real que sucede en el proceso del Engine.

Que tal gente! V8 es el motor que utiliza Chrome. Todo navegador tiene su motor. Les recomiendo éste artículo, es bueno https://www.campusmvp.es/recursos/post/fundamentos-de-javascript-por-que-deberias-saber-como-funciona-el-motor.aspx

Estaría muy bueno un curso sobre la creación de compiladores y lenguajes formales, hay un mexicano llamado Enrique Zamudio (@chochosmx) el cual trabajó en un lenguaje para la JVM que después sirvió de inspiración para Kotlin 🤓

V8 es el motor de código abierto de alto rendimiento de JavaScript y WebAssembly de Google, escrito en C ++. Se usa en Chrome y en Node.js, entre otros.

Dejé la clase en el 2:18 y me fui ráudamente al curso de Fundamentos de Javascript (no está en esta escuela, está en la escuela de Javascript) demoré 11 días pero ya toy aquí xD… me siento como Vegeta cuando fue derrotado por N° 18 y luego volvió todo papi a derrotar a Cell semiperfecto 😁

JavaScript Engine se conoce como el motor de javaScript ya que su trabajo principal es transpilar tu codigo de JavaScript a código maquina (ceros y unos) que podra leer tu computadora

Los lenguajes de alto nivel son los que podemos interpretar rápidamente como programadores y los de bajo nivel son los que las maquinas pueden interpretar rápidamente

Lenguajes de alto nivel = Java, Javascript, php
Lenguajes de bajo nivel = binario (lenguaje maquina) o Ensamblador

Recomiendo mucho el Curso Profesional de JavaScript donde explican un poco el esquema de V8, es increíble porque este compilador tiene una especie de Inteligencia Artificial que es capaz de detectar la frecuencia en la que la ejecución de un código es muy similar y V8 optimiza ese código ^^

Compilación en tiempo real.png

resumen:
Javascript Engine: es el motor de Js que corre en el navegador.

Explicacion: tienes una lista de tareas para programar y que cuando entren a tu navegador tu computador haga cierta cosas. Es decir tiene que enviar un archivo al navegaredor cual debe comunicarse con el computador. Pero el computador solo entiende **machine code ,**mientras que tu codigo es Js y no lo va a entender.

Es aqui donde el motor de Js va a ser el encargado de interpretar el codigo y poder comunicarlo a la computado, es decir el motor recibe el codigo lo interpreta y envia el resultado en codigo de maquina al computado. Este procesa es muy importante y se llama Just in time compiler(compilacion en tiempo real).

el motor de JS su función es interpretar el código JavaScript y convertirlo a Machine Code para que la máquina pueda entenderlo.

Captura de pantalla de 2020-02-25 18-35-53.png

El motor de JavaScript, (JavaScript Engine) es quien se encarga de interpretar el código de JavaScript, y lo traduce a machine code para que nuesta computadora lo entienda en su lenguaje.

A este proceso se lo conoce como Jusst in time compiler:
Screenshot_97.png

El motor JS V8

Un breve resumen de las clases espero que les sirva
Aquí dejo un video por si quieren profundizar Link
Una vez que Chrome recibe el código o los scripts javascript en la página web, el motor JS V8 comienza a analizarlo. Primero, analizará parcialmente el código comprobando errores de sintaxis. Si no encuentra ninguno, comienza a leer el código de arriba a abajo. Su objetivo final es convertir el código javascript en código de máquina que la computadora pueda entender. Pero antes de comprender qué hace exactamente con el código, debemos comprender el entorno en el que se analiza.

Event Loop

Tarea asignada para mover del Tas Queue al Stack, Solo si el Stack esta vacío

Memory Heap (Montón)

  • Donde se almacena los valores de las variables y las funciones
  • Se destina un espacio en memoria para las variables.
  • La información en el memory heap, No se guarda de manera lineal

EL MONTÓN

El primer contenedor en el entorno, que también forma parte del motor V8 JS Engine, se denomina “montón de memoria”. A medida que el motor JS V8 encuentra variables y declaraciones de funciones en el código, las almacena en el montón .

Call Stack (Pila) = El ultimo que entra es el primero en salir

  • Como se mandan a llamar las variables y las funciones
  • Las tareas en el callstack se apilan de abajo hacia arriba.
  • Se llaman de la última que mandamos a llamar hacia abajo
  • En la base de la pila reposa el Global Object
  • Si una función llama a otra, la pone encima de la pila.
  • Se ejecuta una tarea a la vez (sincronía)
  • Una vez que se van ejecutando las tareas se van retirando de la pila
  • Al ejecutar todas las tareas se retira el Global object.

LA PILA

El segundo contenedor en el entorno se denomina “pila de llamadas”. También es parte del motor JS V8. Cuando JS Engine encuentra un elemento procesable, como una llamada a función, lo agrega a la pila .

Task Queue (Cola) = El primer que entra es el primero en salir

Cola de tareas, se maneja la concurrencia, se agregan las tareas que ya están listas para pasar el stack (Pila). El stack debe de esta vacío

MicroTask Queue (Micro Tareas)

Las promesas tienen otra forma de ejecutarse y una prioridad superior

Web APIs

JavaScript del lado del cliente: setTimeout, XMLHttpRequest, File reader, DOM

Node: fs, https

Garbage Collection

limpia la memoria de los datos no utilizados para no sobrecargarla y seguir trabajando sin problemas.

Antes de esto jamás me había cuestionado como es que el navegador de hecho entiendo lo que le estamos mandando por código. Ya que yo ya sabia que las computadoras entienden el código maquina, pero pensé que en lenguajes de alto nivel, como en el caso de JS, eso no aplicaba

¿Se puede entender en JavaScript Engine como el compilador de JavaScript incorporado en tu browser?

JAVASCRIPT ENGINE (IMAGEN 3)

- Es el motor de javascript, siempre corre en el navegador
- Es un interprete entre el codigo generado en tu JS y el navegador (IMAGEN 3) tambien es llamado:
    -  Just in time compiler

El motor de js, el aquello que interpreta el código JS y lo convierte en maquina (binario) 1001001 para que lo pueda entender.
JIT es el proceso de compilación en donde el motor v8 coge el código de JS lo compila pero solo cuando es necesario no antes del tiempo de ejecución .

<Video3-JavaScriptEngine>
        JavaScript Engine es el motor de JavaScript.
        Listas de tareas. ?? tomar curso de fundamentos generales de software
        El motor sirve como un compilador intermedio. Interpreta el lenguaje y lo pasa a lenguaje Maquina. En el Just in time Copiler  
</Video3-JavaScriptEngine>

El motor V8 interpreta el código escrito en JavaScript y lo pasa a un código binario ( machine code), para poder ser ejecutado por el procesador.

RESUMEN

Este es el motor de JavaScript y se encuentra en el navegador.

Si tenemos una lista de tarea para programas y eso lo haremos en JavaScript y este código tiene que llegar hasta nuestra computadora y nuestra computadora que solo entiende código binario, entonces la computadora no puede entender nuestro código de forma directa. Este código tiene que ser interpretado para que la computadora lo entienda y es ahi donde el motor de JavaScript nos va a ayudar. Este funciona como un interprete intermedio, donde lee nuestro código y se lo comunica a nuestra computadora. Este proceso es importante y es llamado “Just in time compiler”.

En resumen,
Imagina que tú trabajas en una pequeña empresa de desarrollo web. Tu amigo Marcos, un frontend, desea que le pases el código para que el avance durante toda la noche.
De hecho,tienes una hoja de papel en el cual está escrito código de javaScript, para esta analogía, en chino. Sin emabrgo, Marcos solo entiende Ingles. Por lo tanto, debes traducir el código en chino a ingles. Esto es lo que hace el MOTOR de Javascript. Traduce tu código a binario pues es el´único lenguaje que conoce…

*Proximamente existirán computadoras cuánticas, imagina como será el nuevo paradigma de programación…

Estoy leyendo a muchos decir que el engine v8 de Google compila de JavaScript a Machine Code y eso está mal. En la clase se dice que este compila de v8 a Bytecode.

https://www.youtube.com/watch?v=xckH5s3UuX4

Les recomiendo este video.

(‘Esta en ingles’)

De JavaScript a machine code.

JS Engine toma todo lo que escribiste en tu archivo index.js y lo interpreta a Machine Code, que es código binario el cual es el que entiende el computador. De esta manera existe una buena comunicación para mostrar todo lo que creaste en tu desarrollo web.

https://platzi.com/clases/1098-ingenieria/6565-como-funciona-realmente-un-sitio-web/

en este vídeo de Fundamentos de Ingeniería de Software se explica como a través del navegador se logran los procesos en la computadora.

¿Cómo funciona el JavaScript Engine? (Motor de JavaScript)

Funciona como un interpreté entre mi código de JavaScript y la computadora (Machine Code).
Just in time compiler: Compilación en tiempo real a la hora de ejecutar código JavaScript.

Definición de Just in Time Compiler

js =>motor=>codigo binario =>computadora

Buena clase!

Super buena lectura, muchas gracias.

Genial!

Pues si es importante saber lo fundamentos de ingeniería de software.

El proceso de interpretar el lenguaje para la maquina se llama Just in time compiler

JS Engine entiende el lenguaje JS y lo interpreta para la maquina

Diego De Granda, es muy bueno explicando, ME GUSTA MUCHO LAS CLASES CON EL.

Excelente clase.

Excelente

Super

me encanta

Hola, que curso sugiere en el min 0:35 , fundamentos de software de que? no entendi bien

en pocas palabras es el compilador?

Entendido

Increible trabajo en equipo del motor V8 y JS

Super 😃 😮

Compilación en tiempo de ejecución (Just-in-time compilation)

No sabía nada sobre JavaScript Engine, pero se vé genial

el mejor lenguaje

motor v8 el que corre en el navegador

Gracias…

AS WORKS THE JAVASCRIPT ENGINE

Javascript Engine es el motor de javascript y corre en el navegador

Tenemos que tener esto en cuenta cuando estamos trabajando en javascript como frontends

Recomendacion de curso fundamentos de ingenieria de software

Imagina que tienes una lista de tareas que tienes que programar y esta lista de tareas tiene que hacer que el navegador atraves del computador hagan ciertas cosas.

Esto lo vas a programar en javascript, pero al momento de que se envie y este archivo llegue a la computadora para comunicar con el navegador.

La computadora entiende Machine Code que son numeros binarios

La computadora no va a entender ese archivo de javascript.

Entonces es donde llega el motor de javascript el cual va a ayudarnos como un interprete para que la computadora pueda entender lo que estamos programando en js

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/5938c281-d854-4dbf-bd8f-63d50152dcfa/Untitled.png

A este proceso se le llama Just in time compiler es la compilación en tiempo real que sucede en el proceso del engine

  • JIT Compiler: Just In Time Compiler. Es la forma en cómo el motor de JS realiza la compilación de JS -> Machine Code y pueda ser interpretado por el computador.

f

Genial!

🚗 ¿Cómo funciona el JavaScript Engine?

<h4>Apuntes</h4>
  • Corre todo el tiempo en el navegador
  • Lista de tareas
  • Necesitamos enviar código JS a nuestro ordenador
    • Directamente el ordenador no entiende el código JS
  • Es ahi donde el motor de JS nos ayuda
    • Funciona como un interprete
    • Esta en el navegador
  • Traduce el código ⇒ Just In Time Compiler

RESUMEN: El Engine de JavaScript es el encargado de poder traducir el código JS a código maquina. Pudiendo usar una estrategia Just In Time Compiler

JavaScript Engine: Es el motor de JS, siempre corre en el navegador.
Su función es interpretar el código JavaScript y convertirlo a Machine Code para que la máquina pueda entenderlo.

  • Just in time compiler: Es la compilación en tiempo real que sucede en el proceso del Engine.

Que tal gente! V8 es el motor que utiliza Chrome. Todo navegador tiene su motor. Les recomiendo éste artículo, es bueno https://www.campusmvp.es/recursos/post/fundamentos-de-javascript-por-que-deberias-saber-como-funciona-el-motor.aspx

Estaría muy bueno un curso sobre la creación de compiladores y lenguajes formales, hay un mexicano llamado Enrique Zamudio (@chochosmx) el cual trabajó en un lenguaje para la JVM que después sirvió de inspiración para Kotlin 🤓

V8 es el motor de código abierto de alto rendimiento de JavaScript y WebAssembly de Google, escrito en C ++. Se usa en Chrome y en Node.js, entre otros.

Dejé la clase en el 2:18 y me fui ráudamente al curso de Fundamentos de Javascript (no está en esta escuela, está en la escuela de Javascript) demoré 11 días pero ya toy aquí xD… me siento como Vegeta cuando fue derrotado por N° 18 y luego volvió todo papi a derrotar a Cell semiperfecto 😁

JavaScript Engine se conoce como el motor de javaScript ya que su trabajo principal es transpilar tu codigo de JavaScript a código maquina (ceros y unos) que podra leer tu computadora

Los lenguajes de alto nivel son los que podemos interpretar rápidamente como programadores y los de bajo nivel son los que las maquinas pueden interpretar rápidamente

Lenguajes de alto nivel = Java, Javascript, php
Lenguajes de bajo nivel = binario (lenguaje maquina) o Ensamblador

Recomiendo mucho el Curso Profesional de JavaScript donde explican un poco el esquema de V8, es increíble porque este compilador tiene una especie de Inteligencia Artificial que es capaz de detectar la frecuencia en la que la ejecución de un código es muy similar y V8 optimiza ese código ^^

Compilación en tiempo real.png

resumen:
Javascript Engine: es el motor de Js que corre en el navegador.

Explicacion: tienes una lista de tareas para programar y que cuando entren a tu navegador tu computador haga cierta cosas. Es decir tiene que enviar un archivo al navegaredor cual debe comunicarse con el computador. Pero el computador solo entiende **machine code ,**mientras que tu codigo es Js y no lo va a entender.

Es aqui donde el motor de Js va a ser el encargado de interpretar el codigo y poder comunicarlo a la computado, es decir el motor recibe el codigo lo interpreta y envia el resultado en codigo de maquina al computado. Este procesa es muy importante y se llama Just in time compiler(compilacion en tiempo real).

el motor de JS su función es interpretar el código JavaScript y convertirlo a Machine Code para que la máquina pueda entenderlo.

Captura de pantalla de 2020-02-25 18-35-53.png

El motor de JavaScript, (JavaScript Engine) es quien se encarga de interpretar el código de JavaScript, y lo traduce a machine code para que nuesta computadora lo entienda en su lenguaje.

A este proceso se lo conoce como Jusst in time compiler:
Screenshot_97.png

El motor JS V8

Un breve resumen de las clases espero que les sirva
Aquí dejo un video por si quieren profundizar Link
Una vez que Chrome recibe el código o los scripts javascript en la página web, el motor JS V8 comienza a analizarlo. Primero, analizará parcialmente el código comprobando errores de sintaxis. Si no encuentra ninguno, comienza a leer el código de arriba a abajo. Su objetivo final es convertir el código javascript en código de máquina que la computadora pueda entender. Pero antes de comprender qué hace exactamente con el código, debemos comprender el entorno en el que se analiza.

Event Loop

Tarea asignada para mover del Tas Queue al Stack, Solo si el Stack esta vacío

Memory Heap (Montón)

  • Donde se almacena los valores de las variables y las funciones
  • Se destina un espacio en memoria para las variables.
  • La información en el memory heap, No se guarda de manera lineal

EL MONTÓN

El primer contenedor en el entorno, que también forma parte del motor V8 JS Engine, se denomina “montón de memoria”. A medida que el motor JS V8 encuentra variables y declaraciones de funciones en el código, las almacena en el montón .

Call Stack (Pila) = El ultimo que entra es el primero en salir

  • Como se mandan a llamar las variables y las funciones
  • Las tareas en el callstack se apilan de abajo hacia arriba.
  • Se llaman de la última que mandamos a llamar hacia abajo
  • En la base de la pila reposa el Global Object
  • Si una función llama a otra, la pone encima de la pila.
  • Se ejecuta una tarea a la vez (sincronía)
  • Una vez que se van ejecutando las tareas se van retirando de la pila
  • Al ejecutar todas las tareas se retira el Global object.

LA PILA

El segundo contenedor en el entorno se denomina “pila de llamadas”. También es parte del motor JS V8. Cuando JS Engine encuentra un elemento procesable, como una llamada a función, lo agrega a la pila .

Task Queue (Cola) = El primer que entra es el primero en salir

Cola de tareas, se maneja la concurrencia, se agregan las tareas que ya están listas para pasar el stack (Pila). El stack debe de esta vacío

MicroTask Queue (Micro Tareas)

Las promesas tienen otra forma de ejecutarse y una prioridad superior

Web APIs

JavaScript del lado del cliente: setTimeout, XMLHttpRequest, File reader, DOM

Node: fs, https

Garbage Collection

limpia la memoria de los datos no utilizados para no sobrecargarla y seguir trabajando sin problemas.

Antes de esto jamás me había cuestionado como es que el navegador de hecho entiendo lo que le estamos mandando por código. Ya que yo ya sabia que las computadoras entienden el código maquina, pero pensé que en lenguajes de alto nivel, como en el caso de JS, eso no aplicaba

¿Se puede entender en JavaScript Engine como el compilador de JavaScript incorporado en tu browser?

JAVASCRIPT ENGINE (IMAGEN 3)

- Es el motor de javascript, siempre corre en el navegador
- Es un interprete entre el codigo generado en tu JS y el navegador (IMAGEN 3) tambien es llamado:
    -  Just in time compiler

El motor de js, el aquello que interpreta el código JS y lo convierte en maquina (binario) 1001001 para que lo pueda entender.
JIT es el proceso de compilación en donde el motor v8 coge el código de JS lo compila pero solo cuando es necesario no antes del tiempo de ejecución .

<Video3-JavaScriptEngine>
        JavaScript Engine es el motor de JavaScript.
        Listas de tareas. ?? tomar curso de fundamentos generales de software
        El motor sirve como un compilador intermedio. Interpreta el lenguaje y lo pasa a lenguaje Maquina. En el Just in time Copiler  
</Video3-JavaScriptEngine>

El motor V8 interpreta el código escrito en JavaScript y lo pasa a un código binario ( machine code), para poder ser ejecutado por el procesador.

RESUMEN

Este es el motor de JavaScript y se encuentra en el navegador.

Si tenemos una lista de tarea para programas y eso lo haremos en JavaScript y este código tiene que llegar hasta nuestra computadora y nuestra computadora que solo entiende código binario, entonces la computadora no puede entender nuestro código de forma directa. Este código tiene que ser interpretado para que la computadora lo entienda y es ahi donde el motor de JavaScript nos va a ayudar. Este funciona como un interprete intermedio, donde lee nuestro código y se lo comunica a nuestra computadora. Este proceso es importante y es llamado “Just in time compiler”.

En resumen,
Imagina que tú trabajas en una pequeña empresa de desarrollo web. Tu amigo Marcos, un frontend, desea que le pases el código para que el avance durante toda la noche.
De hecho,tienes una hoja de papel en el cual está escrito código de javaScript, para esta analogía, en chino. Sin emabrgo, Marcos solo entiende Ingles. Por lo tanto, debes traducir el código en chino a ingles. Esto es lo que hace el MOTOR de Javascript. Traduce tu código a binario pues es el´único lenguaje que conoce…

*Proximamente existirán computadoras cuánticas, imagina como será el nuevo paradigma de programación…

Estoy leyendo a muchos decir que el engine v8 de Google compila de JavaScript a Machine Code y eso está mal. En la clase se dice que este compila de v8 a Bytecode.

https://www.youtube.com/watch?v=xckH5s3UuX4

Les recomiendo este video.

(‘Esta en ingles’)

De JavaScript a machine code.

JS Engine toma todo lo que escribiste en tu archivo index.js y lo interpreta a Machine Code, que es código binario el cual es el que entiende el computador. De esta manera existe una buena comunicación para mostrar todo lo que creaste en tu desarrollo web.

https://platzi.com/clases/1098-ingenieria/6565-como-funciona-realmente-un-sitio-web/

en este vídeo de Fundamentos de Ingeniería de Software se explica como a través del navegador se logran los procesos en la computadora.

¿Cómo funciona el JavaScript Engine? (Motor de JavaScript)

Funciona como un interpreté entre mi código de JavaScript y la computadora (Machine Code).
Just in time compiler: Compilación en tiempo real a la hora de ejecutar código JavaScript.

Definición de Just in Time Compiler

js =>motor=>codigo binario =>computadora

Buena clase!

Super buena lectura, muchas gracias.

Genial!

Pues si es importante saber lo fundamentos de ingeniería de software.

El proceso de interpretar el lenguaje para la maquina se llama Just in time compiler

JS Engine entiende el lenguaje JS y lo interpreta para la maquina

Diego De Granda, es muy bueno explicando, ME GUSTA MUCHO LAS CLASES CON EL.

Excelente clase.

Excelente

Super

me encanta

Hola, que curso sugiere en el min 0:35 , fundamentos de software de que? no entendi bien

en pocas palabras es el compilador?

Entendido

Increible trabajo en equipo del motor V8 y JS

Super 😃 😮

Compilación en tiempo de ejecución (Just-in-time compilation)

No sabía nada sobre JavaScript Engine, pero se vé genial

el mejor lenguaje

motor v8 el que corre en el navegador

Gracias…

AS WORKS THE JAVASCRIPT ENGINE

Javascript Engine es el motor de javascript y corre en el navegador

Tenemos que tener esto en cuenta cuando estamos trabajando en javascript como frontends

Recomendacion de curso fundamentos de ingenieria de software

Imagina que tienes una lista de tareas que tienes que programar y esta lista de tareas tiene que hacer que el navegador atraves del computador hagan ciertas cosas.

Esto lo vas a programar en javascript, pero al momento de que se envie y este archivo llegue a la computadora para comunicar con el navegador.

La computadora entiende Machine Code que son numeros binarios

La computadora no va a entender ese archivo de javascript.

Entonces es donde llega el motor de javascript el cual va a ayudarnos como un interprete para que la computadora pueda entender lo que estamos programando en js

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/5938c281-d854-4dbf-bd8f-63d50152dcfa/Untitled.png

A este proceso se le llama Just in time compiler es la compilación en tiempo real que sucede en el proceso del engine

  • JIT Compiler: Just In Time Compiler. Es la forma en cómo el motor de JS realiza la compilación de JS -> Machine Code y pueda ser interpretado por el computador.

f

Genial!

🚗 ¿Cómo funciona el JavaScript Engine?

<h4>Apuntes</h4>
  • Corre todo el tiempo en el navegador
  • Lista de tareas
  • Necesitamos enviar código JS a nuestro ordenador
    • Directamente el ordenador no entiende el código JS
  • Es ahi donde el motor de JS nos ayuda
    • Funciona como un interprete
    • Esta en el navegador
  • Traduce el código ⇒ Just In Time Compiler

RESUMEN: El Engine de JavaScript es el encargado de poder traducir el código JS a código maquina. Pudiendo usar una estrategia Just In Time Compiler