Aprovecha el precio especial y haz tu profesión a prueba de IA

Antes: $249

Currency
$209
Suscríbete

Termina en:

0 Días
7 Hrs
5 Min
9 Seg
Curso de TypeScript

Curso de TypeScript

Nicolas Molina

Nicolas Molina

TypeScript vs. JavaScript

2/24
Resources

Is TypeScript different from JavaScript, and is a TypeScript developer different from a JavaScript developer? The answer to both is yes, however, there is no noticeable difference. One (TypeScript) builds on the other (JavaScript) by adding elements to improve the bug detection and development experience.

Overview

JavaScript has undergone an exponential increase in its use, as it can be used in Frontend, Backend, IoT, among others. However, this was not created as a mature language from the beginning, it was with time that it has been improving to what it is today.

In JavaScript you only realize you have an error until the moment you run it, either in the browser or in a runtime environment such as NodeJS, but not before. What we want as developers is to get feedback as early as possible so that we have as few bugs as possible in production.

TypeScript's contribution

TypeScript encompasses everything JavaScript has, plus the new versions of ECMAScript, and adds static analysis to our code.
¿Qué engloba Typescript?

What does static code analysis mean?

The faster you find a bug, the easier it is to fix it.

In the book Software Engineering at Google[1] they point out certain layers to detect flaws in program development:

  1. Static code analysis: run through the code editor to look for typos, incorrect function calls and provide code auto-completion.
  2. Unit Tests: tests are performed to verify if a part of the code does what we want it to do.
  3. Integration Tests: we see how all the code works together and that it executes as we want it to.
  4. Code Review: we verify if the norms, standards and best practices established by the team have been followed.

[1] Software Engineering at Google. Lessons Learned from Programming Over Time - Titus Winters, Tom Manshreck and Hyrum Wright.

Contributed by: Martin Alvarez.

Contributions 77

Questions 6

Sort by:

Want to see more contributions, questions and answers from the community?

Typescript es Javascript con superpoderes

Typescript es a Javascript como Sass es a Css 😄

En resumen, con JavaScript nosotros nos damos cuenta de un error cuando se ejecuta cierto código en la App, mientras que con TypeScript, nos damos cuenta de los errores mientras estamos en el editor de texto o cuando compilamos el código, dándonos cuenta de los errores mas rápidamente y por lo tanto, mejorando la experiencia de desarrollo.

Me gustó mucho lo de los créditos al final del video. A veces haces muchos cursos en Platzi pero no te enteras (aunque te lo imaginas) de todo el trabajo que hay detrás. Importante también que den esa visibilidad a quienes hicieron posible el curso estando detrás del telón.

Un desarrollador en TypeScript se estreza antes de ejecutar y un Desarrollador en JavaScritpt se estreza despues de ejecutar.

al final de la compilación todo se convierte en JS. Podemos decir que TypeScript es JS con super poderes

Creo que es muy similar ya que se debe de desarrollar “pensando” en javascript, con las claras ventajas que ofrece typescript.

Se me hace más parecido a java o C# pero en esencia es similar como ya dije antes.

yo creo que no, TypeScript no es otro lenguaje como tal, es mas como una herramienta u otra capa agregada a JavaScript

TypeScriptDev == JavaScriptDev // true
TypeScriptDev === JavaScriptDev // false

Typescript da superpoderes a javascript, y hace que nuestro codigo en cierta medida sea fuertemente tipado, esto nos pemite darnos cuentas de los erorres, antes del tiempo de ejecucion o compilacion. En cambio javascript es debilmente tipado.

Existen leves diferencias en la sintaxis de cada codigo, pero vale la pena aprenderlas, nos ayudara a tener un mejor codigo.

Hace poco lei que Microsoft propone cambios en JavaScript como añadirle tipado fuerte, aca un articulo que habla sobre esto
https://www.genbeta.com/desarrollo/microsoft-propone-cambios-importantes-javascript-que-nos-permita-vincular-variables-a-tipo-dato-para-evitar-errores

¿Un desarrollador de Javascript es igual a un desarrollador de Typescript?
Mi respuesta es sí, typescript sigue siendo javascript pero con tipado. Si alguien conoce typescript conoce javascript. Y fácilmente un dev de javascript puede aprender typescript.

Por qué usar TypeScript?

Previene muchos erros que pueden escaparse hacia Producción, errores simples que normalmente se cometen al escribir JavaScript. Segun Airbnb puedes prevenir el 38% de bugs en un sistema solo por implementar correctamente y hasta un 15% por el simple hecho de utilizarlo.

TypeScript va a estar analizando tu codigo constantemente, hallando posibles fallas.

Herramientas escritas en TypeScript

  • Jest
  • NestJS
  • Electron
  • Ionic
  • Vue.js
  • Redux

JavaScript vs TypeScript - Qué debo tener en cuenta?

  • JavaScript Developer ≠ TypeScript Developer ? Si, pero no son tan diferentes. Si tienes el conocimiento básico de JS, añadirle la capa del analisis de codigo estatico no será un problema.
  • JavaScript no es un lenguaje que haya sido planeado correctamente desde el incio, es un proyecto que fue creciendo y mejorando con los años debido a esto en JS hay errores solo te das cuenta si tienes errores cuando el codigo está en ejecución.
  • TypeScript está tomando siempre las versiones modernas de JavaScript y va a establecer un analisis estatico del código poniendo typos.

“The earlier you find a mistake, the easier it is to fix”

Capas de un código sin bugs

  1. El analisis estatico corre directamente en el edito encontrando typos, llamadas a funciones incorrectas, etc.
  2. Los Unit Test donde verificamos que nuestro codigo hace lo que se supone que tiene que hacer
  3. Integration Test que verifica como funcionan las diferentes caracteristicas de un codigo
  4. Code review es donde una persona verifica el funcionamiento

Yo creo que si sabes Javascript ya sabes gran parte de typescript, por lo que considero que no es tan diferente.

Un desarrollador de Typescript es tendrá menos errores que un desarrollador de Javascript, y en principio como el feedback es mas rapido podra ser más productivo. Las experiencias de desarrollo serán distintas… por lo que un desarrollador JS es distinto a un desarrollador TypeScript

les recomiendo otro excelente curso de este profesor :
“manipulación de arreglos” :

https://platzi.com/cursos/arrays/

En el minuto 4:18 se corta el video omitiendo una parte de la explicacion. Se infiere, pero estaria bien arreglarlo para que las personas que no lo infieran lo puedan entender.

**TypeScript vs. JavaScript** En el mundo del desarrollo web y de software, la discusión sobre TypeScript y JavaScript es cada vez más relevante. A continuación, exploraremos los aspectos esenciales del ecosistema de JavaScript que son cruciales para trabajar con TypeScript, además de responder a preguntas comunes sobre la relación entre ambos lenguajes y sus respectivos desarrolladores. 1. <u>La Relación entre JavaScript y TypeScript:</u> Es fundamental entender que TypeScript es un superconjunto de JavaScript. Esto significa que cualquier código JavaScript válido es también código TypeScript. TypeScript introduce características que mejoran la detección de errores y la experiencia del desarrollador, como el tipado estático. Por lo tanto, un desarrollador de JavaScript no es muy diferente de un desarrollador de TypeScript, aunque este último cuenta con herramientas y técnicas adicionales que facilitan el trabajo. 2. <u>La Evolución de JavaScript:</u> JavaScript ha experimentado un crecimiento exponencial en su uso. Hoy en día, se utiliza en múltiples plataformas, incluyendo: \- Frontend: Para crear interfaces de usuario dinámicas. \- Backend: A través de entornos como Node.js. \- Aplicaciones móviles: Mediante frameworks como React Native. \- Internet de las Cosas (IoT): En la programación de dispositivos conectados. A pesar de su popularidad, JavaScript no comenzó como un lenguaje maduro. Ha evolucionado con el tiempo, incorporando mejoras y nuevas características a través de versiones de ECMAScript. 3. <u>Desafíos del Desarrollo en JavaScript:</u> Uno de los principales retos al trabajar con JavaScript es que los errores no se detectan hasta que se ejecuta el código, lo que puede llevar a problemas en producción. Esta característica resalta la importancia de obtener retroalimentación temprana durante el desarrollo, con el objetivo de minimizar los errores. 4. <u>La Contribución de TypeScript:</u> TypeScript amplía las capacidades de JavaScript al añadir: \- <u>Análisis de código estático:</u> Esto permite la detección de errores antes de la ejecución, ayudando a identificar problemas como errores tipográficos y llamadas a funciones incorrectas. \- <u>Compatibilidad con las últimas versiones de ECMAScript:</u> TypeScript permite a los desarrolladores aprovechar las características más recientes del lenguaje. **¿Qué es el Análisis de Código Estático?** El análisis de código estático es una técnica que permite detectar errores sin ejecutar el código. Cuanto más rápido se encuentren los errores, más fácil será solucionarlos. Según el libro Software Engineering at Google, hay varias capas para detectar fallas en el desarrollo de software: * Análisis de Código Estático: Realiza verificaciones en el editor de código, identificando errores comunes y ofreciendo autocompletado. * Pruebas Unitarias (Unit Tests): Estas pruebas aseguran que cada componente del código funciona según lo previsto. * Pruebas de Integración (Integration Tests): Evalúan cómo interactúan diferentes componentes del sistema y si el conjunto funciona como se espera. * Revisión de Código (Code Review): Un proceso donde el código es revisado por otros desarrolladores para asegurar que se cumplan las normas y mejores prácticas.

Para mi, claramente TypeScript es para JavaScript lo que es Sass para CSS. Es como considerar que por usar React ya no estas usando Javascript 🤔 eso esta muy mal (es más React es una librería, aunque fuera un framework como Angular o Vue igualmente sigue siendo JavaScript).

TypeScript es un complemento para mejorar JavaScript, no un lenguaje completamente aparte (dado que igualmente al final el resultado es compilado a JavaScript).

TypeScript es un lenguaje transpilado a JavaScript, lo que se traduce y compila antes de ser usado en un navegador. Esto no significa que sea un reemplazo, sino que lo complementa, permitiendo que utilicemos el nuevo código de TypeScript y el lenguaje que ya conocemos de JavaScript

URL Fuente

JS permite violar muchas cosas. Por el contrario TS le pone orden a la cosa. Es algo así cómo que JS es venir de estudiar en el colegio. TS es estar en una universidad estricta. Jamás, aunque sea el mismo estudiante, serán el mismo enfoque

Por si alguno se llegó a confundir en el minuto 1:44, lo que el profe quiso decir fue: “Porque al final lo que TypeScript coge como subset de Javascript”…

Happy Coding!

En resumen es Js con super poderes. Con js nos damos cuenta del error al ejecutar el codigo, con Ts nos damos cuenta mientras lo escribimos, segun entiendo en esta clase. Opiniones?

TS ❤️

Segun yo, no son diferentes un Desarrollador de JS a uno de TS
Un Desarollador Typescript es de cierta forma mejor que un desarrollador javascript porque tiene mayor control sobre la informacíon que está manejando en su código, lo que lo hace menos propenso a cometer errores y le facilita la solición de bugs complejos.
Mi respuesta a la pregunta de que si un desarrollador de Typescript es diferente a un desarrollador de javascript, diria que si, la mentalidad es diferente a la hora de usar una herramienta
Typescript es como Javascript altamente tipado

si debe ser diferente

Pienso que typescript tiene mejoras a lo que es javascript, pero al Cesar lo que es del Cesar y Javascript tiene su historia.
Si
supongo, con lo poquito que se, que al codificar codigo javascript con typescript tiene la gran ventaja que me va diciendo inmediatamente algunos de los problemas o errores, lo cuales los podre corregir de inmediato y no esperar a correrlo.

seeeeeee

Si son diferentes

Nicolas, el mejor profe de platzi! Se aprende demasiado con NIco.
Respecto a la pregunta, creo que no es diferente, el desarrollador en typescript está agregando una funcionalidad muy poderosa a JS pero en sí mismo vendría a ser lo mismo

Typescript parece ser igual que Js pero con funcionalidades extras que le permiten hacer el código mas fácil

TypeScript = Java Script Pro+

Creo que para ser desarrollador de typeScript es necesario entender muy bien el tipado del codigo y algo de POO que no se suele usar en javaScript , por tanto creo que no son lo mismo.

no hay diferencias entre los desarrolladores ya que los lenguajes son similares, simplemente typescript facilita al desarrollador encontrar errores mas rápido

Creo que un desarrollador de typeScript es el mismo que uno de js , la única diferencia es la facilidad y rapidez que tiene typeScript en encontrar errores en comparación con js

Considero que si bien Typescript es un tipo de “extensión” de JS, esto no significa que un desarrollador de JS sea inmediatamente uno de Typescript, ya que las características nuevas y sintaxis que este aporta deben conocerse para manejarlas apropiadamente.

Sin embargo, considero que debido a dicha relación, un desarrollador Typescript sí sería un desarrollador de JS.

Diría que es una implicación unidireccional:
TS => JS
!JS => !TS

Segun lo que he aprendido Typescript Dev != Javascript Dev, no son iguales ya que un typescript dev tiene que aprender las reglas de uso del tipado adicional al conocimiento que ya tiene de javascript!, el javascript dev no tiene que aprender nada.

Segun lo que escuche en esta clase un Typescript Dev != Javascript Dev.

Porque las diferencias entre ambas versiones hacen que los sesgos y paradigmas de los desarrolladores sean distintos. Piensan distinto, y por lo tanto no son iguales.

Un desarrollador de JavaScript no necesariamente sabe TypeScript, he ahí la principal diferencia.

Typescript es Javascript con superpoderes

muy buena la analogía con SASS!

El análisis estático de código me recordó de inmediato a Visual Studio, el IDE. Por allá en el 2008-2009. Nunca conocí programa que reportara los errores de forma más frustrante que esa. Sin embargo, la importancia de esto es enorme.

Existen similitudes entre ambos desarrolladores, el primero por trabajar con un lenguaje tipado (TS) se ve forzado a corregir los errores que aparezcan sobre la marcha, mientras que el otro (JS) puede generar errores al momento de escribir el codigo sin darse cuenta hasta el momento de ejecutar su app

Un desarollador de JavaScripts es diferente a un desarollador de TypeScript?

Sí, un desarrollador de JavaScript es diferente de un desarrollador de TypeScript. Los desarrolladores de JavaScript se centran en escribir código JavaScript para crear aplicaciones web dinámicas. Los desarrolladores de TypeScript se centraron en escribir código TypeScript para crear aplicaciones web dinámicas con tipado estático y otros beneficios adicionales.

Creo que sí, aunque la base de TypeScript es JavaScript

JavaScript es a TypeScript lo que SuperMario a SuperMario cuando se come una seta.

Aunque es la misma base, pero Typescript es de tipado fuerte, estático y objetos basados en clases. Esto hace una gran diferencia puesto que no permite violaciones y malas prácticas que a la hora de compilar generan un problema mayor, Javascript es usado generalmente para Web mientras que Typescript puede ser usado en Web pero también para aplicaciones de mayor escala

a mi por ejemplo me ha pasado que defino una función y olvidó poner const, solo se hace evidente cuando corro el programa

Pienso que la diferencia entre ambos desarrolladores es como alguien que juega un deporte por afición a alguien que lo juega de manera profesional. Ambos juegan el deporte pero el profesional será aquel que sobresalga

TS es una herramienta que se ejecuta antes de que se ejecute el código (static) y garantiza que los tipos del programa sean correctos (typechecked).

Respondiendo al ejercicio del vídeo, creo que Ts es Js con superpoderes, algo así como Sass con Css.

No hay mucha diferencia, creo que sería un desarrollador con más herramientas

Pienso que ambos desarrolladores son iguales solo que el desarrollador de TypeScript tiene más herramientas para resolver sus errores mucho más rápido.

typescript es js con superpoderes

TypeScript es JavaScript sin sorpresas.

Lo leí en alguna parte.

TypeScript es un JavaScript enriquecito atraves de azucar sintaxica en el cual pasa a ser un lenguage altamente tipiado vs un lenguajge debilmente tipeado como JavaScript.

Yo pienso que son diferentes debido a que la forma en la que piensa un desarrollador cambia con el lenguaje.

los devs de Ts y js Sí son diferentes

El desarrollador de Javascript es capaz de crear aplicaciones que funcionan en diferentes plataformas. Pero el desarrollador de Typescript se asegura de que esa aplicación funciona de la manera esperada en esas plataformas.

Se me ocurre que la diferencia entre JS y TS es en la manera en que prefieres contemplar el proceso, donde con JS haces todo sin saber que ocurrira sino hasta el final que corres el codigo y con TS ya te va diciendo desde el proceso lo que esta faltando y demas. Haciendo referencia a StarWars, seria algo como esto:

JavaScript: Tienes que usar la computadora para apuntar al blanco.

TypeScript: Usa la fuerza, Luke. Entregate.

Por eso los de Slack dicen que debes dejar de preocuparte y confiar en el compilador.

El concepto tipico de TypeScript que vi en mucho lugares es:
TypeScript es un super set de JavaScript, esto significa que todo código js es código valido ts.
Lo único que hace TypeScript es añadirle esteroides a JavaScript, amén de corregir errores o malas practicas que son sencillas de cometer en js puro.

Un desarrollador de JS es más propenso a tener errores en su código vs alguien que usa TS. Sin embargo, los cambios al momento de desarrollo se ven principalmente en la declaración de tipos en las variables y objetos. Luego considero que es muy similar.

Si, totalmente diferente

No hay diferencia porque a la final Typescript le da superpoderes a JS lo q quiere decir q un dev en JS que sepa TS tiene super poderes.

Typescript, Sass, Webpack, Eslint, Stylint, i love it

vamos a ver como me va con Ts

Considero que un TS dev es diferente a un JS dev. Aunque es cierto que si sabes JS, ya estás escribiendo TS, pero al estilo AnyScript. Sin embargo, aquel que realmente sabe TS puede usar las diversas estructuras de tipado, así como su combinacion, herencia, genéricos y demás, en el momento adecuado.

Typescript al final es JavaScript, sin embargo es mucho mas fácil y rápido desarrollar con Typescript

Typescript es como una extensión de Javascript en la que podemos asignar tipos de dato, lo cual nos da mas posibilidades de generar código con menos errores.