JavaScript VS Python: comparación de sintaxis
Javascript Lenguajes de programación Python
A día de hoy, poder programar con Python y programar en JavaScript nos convierte en desarrolladores muy versátiles en varios frentes. Esto se debe a que estamos hablando de dos de los lenguajes de programación más utilizados a nivel mundial. En el lugar de trabajo, presentarse como desarrollador de Python y JavaScript se convierte en una buena tarjeta de presentación, ya que estos son algunos de los lenguajes de programación más solicitados por las casas de software en Europa y en el extranjero.
Aprender Python abre muchas puertas, como la inteligencia artificial, los sistemas ERP o el análisis de datos. Aprender JavaScript, por otro lado, te permite dominar el desarrollo web de una manera excelente, comprendiendo gradualmente cómo funcionan los diversos marcos que adoptan este lenguaje de programación.
Son dos lenguajes tan potentes como diferentes, aunque ambos se pueden usar para el desarrollo web (a través de varios frameworks o de forma nativa), con la balanza inclinada hacia JavaScript al ser más versátil tanto para el back-end como para el front. -fin.
El lenguaje JavaScript será sintácticamente muy diferente al código Python, para entender mejor estos lenguajes averigüemos cuáles son estas grandes diferencias:
Son dos lenguajes tan potentes como diferentes, aunque ambos se pueden usar para el desarrollo web (a través de varios frameworks o de forma nativa), con la balanza inclinada hacia JavaScript al ser más versátil tanto para el back-end como para el front. -fin.
Definiciones de variables:
La asignación es uno de los primeros conceptos que aprendes cuando aprendes a programar. Para definir una variable en Python escribimos el nombre de esta última seguido del signo = y el valor que se le asignará.
x = 7
En JavaScript la sintaxis es similar, pero delante del nombre de la variable debemos insertar la palabra clave var o let y al final de la línea de código el ";" para cerrar el statement.
let x = 7;
P.D: en Python no es necesario insertar el ";" al final de cada línea de código. Es una de las grandes diferencias sintácticas con la gran mayoría de los lenguajes de programación más utilizados.
Bloques de código:
El estilo sintáctico de un lenguaje se define precisamente por estos bloques. En la programación de Python tenemos que olvidarnos de las llaves para abrir/cerrar bucles, métodos, if-statement, convenientemente reemplazadas por los dos puntos ":".
if x == 7:
print(x)
En el lenguaje JavaScript se sigue la sintaxis de los corchetes. Una sintaxis que encontramos normalmente en casi todos los lenguajes de programación más solicitados (C#, Java, PHP ecc…).
function foo(x) {
console.log(x);
}
Funciones
Introducidas parcialmente en el ejemplo anterior, las funciones en Python se introducen mediante la palabra clave def que precede al nombre de nuestra función y los corchetes habituales.
def function_name(x, y, …):
print(x+y)
En JavaScript cuenta lo que ha sido confimado anteriormente, con la diferencia de que la palabra clave que anticipa el nombre de la función es function.
function function_name(x, y, …){
console.log(x+y);
}
Sin embargo, existe una diferencia sustancial no precisamente sintáctica. En el código de Python, la cantidad de argumentos pasados a la llamada a la función debe coincidir con la cantidad de parámetros definidos en la definición de la función. De lo contrario, se producirá una excepción. En programación JavaScript esto no es necesario, ya que los parámetros son opcionales.
Tipos de datos
Escribir en Python es complicado, ya que no necesitamos definir el tipo de datos antes de declarar la variable. Los tipos de datos primitivos en Python son: int, float, bool y str. Mientras que en JavaScript encontramos varios: Number, undefined, Boolean, String, Symbol, null y BigInt.
Si en JS null se considera un tipo de dato primitivo, en Python no lo es y, sintácticamente, se escribe de forma diferente, es decir, None.
Escribir comentarios
Para un código Python fácilmente comprensible y bien estructurado, es importante saber escribir comentarios. Veamos un breve ejemplo:
x = 3+2 # x is the sum of two integers
El comentario corresponde a la parte posterior al “#”, que explica que hace esa específica línea o bloque de código.
Lado JS la sintaxis de los comentarios cambia, escribiremos el comentario después del “//”.
let x = 3+2 // x is the sum of two integers
Operadores
Esenciales para escribir expresiones en el lenguaje de programación, en Python se distinguen diversamente. En el siguiente ejemplo se muestran en orden: división entre enteros, comparación entre dos valores o tipos de datos, operadores lógicos.
x=5
y=6
x // y
if (x==y):
print(x+y)
if (x > y and x % 2):
print(x)
if (x>y or x<y):
print(x)
if (x not y):
print(x+y)
or, not y and son los operadores lógicos útiles para crear una específica condición. En el mismo orden en JS tienen una sintaxis totalmente diferente.
x=5;
y=6;
Math.floor(x/y);
if (x==y) {
console.log(x+y);
}
if (x > y && x % 2) {
console.log(x);
}
if (x>y || x<y) {
console.log(x);
}
if (x ! y) {
console.log(x+y);
}
El único operador que se queda igual es “==”. Si pero en JavaScript si queremos verificar si tanto el valor como el tipo de datos son iguales, tenemos que usar este operador: “===”.
Ciclos y if-statement
La diferencia sintáctica entre Python y JS en los if se puede ver en casi todos los ejemplos que se han informado. Basta compararlos para comprender que sintácticamente cambia poco.
En cambio, en el ciclo for, en Python, la palabra clave será seguida por el nombre de la variable del loop y por otra palabra clave in que llama a la función base range(). Dentro de esta función, se deberá especificar los parámetros dentro de los cuales realizar el loop.
El for en JavaScript es muy similar al de C# o Java. Después de la palabra clave del loop, en los corchetes se insertará, en este orden, el índice que inicia el ciclo, la condición dentro de la cual debe detenerse el loop y el incremento de este índice.
for i in range(n):
# do something
for (var i = 0; i < n; i++) {
// do something
}
El while loop es muy similar, diríamos que igual, excepto por la habitual discrepancia entre el “:” (en Python) y los paréntesis (en JS).
while True:
#do something
while (True) {
// do something
}
Muestra cuán sintácticamente JavaScript y Python son diferentes. Esto puede ser un estorbo, pero tienes que imaginarlo como si estuvieras aprendiendo dos idiomas nuevos. La sintaxis del italiano no es la misma que la del inglés, que no es comparable a la del francés, etc. Hay que decir que Python, para ser un object-oriented, no se parece en lo más mínimo a todos sus "colegas". Por otro lado, JavaScript es sintácticamente muy similar a Java o C#, si queremos nombrar un par.
En este sentido, quizás aprender JavaScript se vuelve más fácil, ya que no estamos obligados a aprenderlo desde cero (sintácticamente).
Esto no debería impedir que pruebes un lenguaje en lugar de otro, sino todo lo contrario. Practicar con dos lenguajes de programación tan distantes sintácticamente entrena mucho la memoria, lo cual es útil para escribir rápidamente código limpio y comprensible.
¿Y tú cuál prefieres?
© 2022 Aulab. Todos los derechos reservados • P.IVA: IT07647440721 • Política de privacidad