Este grupo de lenguajes han mantenido su popularidad con el tiempo, algunos por el impacto que generan en los procesos de aprendizaje, otros porque han sido implementados por grandes exponentes de la industria de la tecnología.
En esta lectura aprenderás cómo implementar en cada uno de estos lenguajes los elementos básicos que utilizarás en tu día a día como desarrolladora de software.
Variables
En todos los lenguajes, las variables almacenan temporalmente un valor y pueden presentarse de diferentes tipos, sin embargo, su alcance y definición cambian entre un lenguaje y otro enfocándose en la necesidad de tu aplicación y la lógica que estés deseando implementar.
En JavaScript encontrarás que var, let y const serán la manera en la cual puedes definir variables y van a permitirte almacenar algo, pero su uso difiere y se verá extendido o limitado de acuerdo a la que uses, por ejemplo:
Si defines una variable usando “var” tendrás un alcance global, esto quiere decir que el valor de esa variable podrá ser accedido, alterado o bloqueado por procesos dentro del documento donde lo hayas definido.
“let” tiene un alcance más corto y solo estará disponible dentro del bloque de código donde fue definido, de esta manera puedes tener otra variable fuera de ese alcance incluso con el mismo nombre y valor pero no se cruzarán ni generarán conflicto alguno.
Con el uso de “const” hay un punto interesante porque estamos haciendo referencia a un valor que será de sólo lectura, es decir, que esta variable no podrá ser reasignada. Por lo tanto, debemos hacer un uso adecuado correspondiente a su naturaleza.
Para el caso de PHP, se define una variable usando el signo $ seguido del nombre que le des. Además, no es obligatorio definir variables antes de inicializarlas para poder usarlas (aunque ésta sea una buena práctica), por ejemplo:
En lugar de escribir:
$saludo;$saludo = “Hola, soy un saludo”;
Puedes escribir:
$saludo = “Hola, soy un saludo”;$numero =8;$nombre = “Juanito”;
La definición de variables en Python es igualmente muy simple y útil pues no es requerido indicar el tipo de variable o algún símbolo antes de definirla, simplemente tienes que indicar el nombre y en seguida asignarle un valor si así lo deseas, por ejemplo:
saludo = “Hola, yo también soy un saludo en Python”nombre = “Mi nombre es Juanito”
Funciones
Para definir funciones hay una similitud muy marcada entre JavaScript y PHP porque su estructura base es simplemente escribir la palabra reservada “function” seguido por el nombre de la función y paréntesis que bien pueden estar vacíos si no recibe ningún valor o incluir los parámetros separados por comas.
Sin embargo, en PHP puedes definir el alcance de la función; si será pública, privada o estática, pero si no se lo indicas explícitamente, de manera automática se creará pública.
Con Python esta definición es distinta, pues solo utiliza “def”, seguido por el nombre de la función y los parámetros que recibe, al igual que los lenguajes anteriormente mencionados. Adicionalmente, un bloque de código no empieza por las típicas llaves, sino por dos puntos ( : ) que indican que debajo empiezan sus instrucciones a ejecutar.
Estructuras de control
Cómo ya has visto, cada lenguaje tiene su propia forma de escribir las cosas. No obstante, las estructuras de control son un punto en común. A pesar de que las instrucciones empiecen con llaves, con dos puntos o que las líneas de código terminen en punto y coma o no, la forma del contenido en las estructuras de control no cambia su lógica, suceden de la misma forma y ofrecen el mismo servicio en los tres lenguajes.
El condicional “if” en todos los casos evalúa una condición basada en operadores lógicos de comparación. Los ciclos también siguen con este mismo patrón porque incluso su definición cumple con la misma estructura y respetan la forma en la cual funciona. Es esta la magia de saber programación primero que un lenguaje específico.
El proceso de debugging
El muy conocido debugging o depuración es una actividad que realizamos cuando estamos probando un código en un punto muy específico del cual necesitamos ver un resultado o una salida en consola para conocer específicamente qué puede estar pasando en un punto crítico de nuestra aplicación.
Para realizar esta inspección, utilizamos normalmente alguna instrucción que nos muestre algo que definamos y dependiendo del lenguaje que utilicemos contamos diferentes herramientas.
En JavaScript existe el muy popular console.log() que dentro de sus paréntesis recibe el valor que va a mostrar justo cuando la ejecución de la aplicación llegue a donde está ubicado y mostrará este valor en consola. Sin embargo, no es el único método pues también se puede utilizar debugger para detener la ejecución de la aplicación justo en el punto donde lo hayamos ubicado.
console.log(“Quiero ver esto en consola”)
Con PHP hay varias formas y la que utilices dependerá del contexto en el cual quieres ver este mensaje o valor de referencia para la depuración además del tipo de dato que devolverá.
Se puede hacer uso de “echo” que es la forma más clásica de mostrar cadenas de texto en PHP. Sin embargo, no será útil si deseas mostrar valores de tipo objeto o algo más complejo, en este caso puedes usar var_dump para conocer el tipo de dato que devuelves o print_r para imprimir lo que sea que traiga.
echo “Quiero ver esto cuando el código pase por aquí”;var_dump($soyunavariable);print_r([“Hola”]);
Python, por supuesto, también ofrece herramientas para hacer esta actividad de depuración, como es el uso de la librería pdb, con la cual se pueden crear breakpoints sobre los cuales hacer pausas en la ejecución y probar esas fracciones de manera fácil y controlada.
Puedes igualmente usar el clásico “retorno de mensajes”, pero también tienes una herramienta que lo puede hacer por ti.
Métodos de arrays
Con todo lo que has aprendido, ya puedes entender que la programación es la base y los lenguajes solo son caminos sintácticos que pueden ayudarte en ciertos proyectos o necesidades muy específicas.
Los arrays son secuencias de valores contenidas en un mismo espacio y además comparten su mismo tipo, pero, además de ello, pueden ordenarse, medirse, accederse y realizar muchas acciones más.
En todos los lenguajes lo puedes hacer pero variará la sintaxis que debas usar para lograrlo, algunos métodos de arrays que encontrarás:
Upper para pasar a mayúsculas uno o varios valores de un array.
Lower para pasar a minúsculas uno o varios valores de un array.
Sort para ordenar los valores.
Length para conocer la cantidad de posiciones del array.
Ejemplo de UpperCase en JavaScript para pasar a mayúsculas toda una oración:
const cadenaMinuscula ='espero que tengas un gran dia';cadenaMinuscula.toUpperCase()//ESPERO QUE TENGAS UN GRAN DIA
Ejemplo de tolower en C para pasar a minúsculas toda una palabra:
cadena ='MARIA';resultado =tolower(cadena);// maria
Ya les di un acercamiento en la clase pasada, pero para poner más datos acerca de estos lenguajes:
.
En JavaScript, aunque hacemos mucho énfasis en "usa con cuidado el const" la verdad es que no importa, en la mayoría del tiempo dentro de tu código de JavaScript vas a declarar tus variables como const y es porque realmente rara vez vas a crear una variable cuyo valor realmente vaya a cambiar. De hecho, mi mejor consejo es que siempre que puedas uses const, y si realmente necesitas que una variable cambie ahí si usa let, pero NUNCA usas var, escribí un tutorial enseñándote sobre esto:
.
¡Deja de usar var en JavaScript! ¿Por qué no es buena práctica usarlo?
.
Pasándonos al lado de PHP, cuando lleguen a usar una cosa maravillosa llamada "Laravel", verán que existe una hermosa función llamada dd() que facilita inmensamente el debuging, es una función que te genera un elemento HTML interactivo para debuguear cualquier cosa que le pases, es simplemente hermoso 👀
excelente video amigo felicitaciones, muy bien explicado todo
Estos aportes son muy útiles! Demasiado jajaja
📌 Cuando aprendas un lenguaje de programación conscientemente, te dará habilidades para aprender otro de forma más sencilla. Los lenguajes de programación por lo general tendrán estructuras similares en algún punto.
Genial!👏😄
Pienso que esta introducción hubiera sido mucho mejor explicada en un video... Saludos
Tienes mucha razón ya que fueron 3 clases continuas de documentación y no de video, creo que aveces explicar en un video de forma pausada se aprende mas que dar el video super rápido como e podido apreciar en este curso.
Un video es más sencillo de entender, eso es cierto. Sin embargo llegará el momento en que nos enfrentemos a la documentación para aprender temas particulares de cada lenguaje y esas serán lecturas extensas y con suerte en español.
Bueno la verdad si me hubiera gustado un videito que explicara más.
Es importante apoyarnos de contenido alterno.
En algún momento (de la vida) nos tendremos que enfrentar a diferentes casos mediante los cuales se nos exigirá enfrentarnos a la documentación para aprender dentro de la programación.
Por otro lado también me hubiera gustado un video XD.
Resumen de la clase 32 y 34 :)
Excelente
espectacular el resumen!! yo lo estoy haciendo igual, pero me cuesta mantener la prolijidad de la letra, gracias colega!
Les recomiendo a las personas que no han tenido un acercamiento grande en estos conceptos que puedan empezar con lenguajes como C o C++ ¿Por que? Esto es fundamental para entender todos los lenguajes, lenguajes como python son muy fáciles de utilizar pero hay varias cosas que no sabrás por que pasan a menos de que antes hayas pasado por un lenguaje de nivel intermedio como lo puede ser c.
tomaré tu sugerencia, me gustaría aprender algún lenguaje que represente todo un reto para que puedan vincularlo a otro en un futuro. gracias! Solo que no se si es muy demandado por las empresas todavía..
Creo que Freddy aquí te contradice un poco Sebastián.
Me quedo con la frase: "Programación es la base y los lenguajes son los caminos". :D
Totalmente de acuerdo.
Valoro cada uno de los comentarios de la comunidad, ya que algunos tienen más experiencia que otros y siempre aportan algo que es muy complementario con la clase actual, de verdad muchas gracias!
Yo tmb mi estimado
concuerdo contigo!
Si no fuera por los aportes estaría el doble de perdida de lo que estoy ahora. Creo que esta forma de presentar la información no ayuda mucho a los que somos principiantes.
Empecé con JavaScript y me ha parecido interesante, se que Python se ve un poco más sencillo, luego seguiré con el cuando domine bien JS.
buena explicación, sin embargo, también se debe ser consiente de que existen lenguajes de programación de distintas generaciones, y así como hay algunos muy intuitivos hay otros que requieren un cierto conocimiento técnico a la hora de su implementación, un ejemplo es Fortran.
llevo un par de semanas estudiando y aun no comprendia bien la diferencia entre var, let, const y gracias a platzi se me aclaran estos conceptos!
var:alcanze global se puede llamar desde todo el codigo.
let: alcanze para el mismo bloque,objeto y/o funcion que se ejecutara en el momento.
const: es un tipo de variable que no cambiara en el transcurso del codigo,se podra usar para funciones y operaciones pero su nombre no se podra cambiar
Es lo que llaman el Scope o ambito de una variable. Aplicable a JS.
en serio, lo hacen de lo mas complicado.. que les cuesta poner el mismo ejemplo, en distitnos lenguajes, para que podamos ver las diferencias? y qué tal llevar el orden? usen la lógica!
Yo pensé lo mismo con los ejemplos, creo que sería mejor poner el mismo para cada lenguaje. Y ya después nosotros averiguar los demás en diferentes lenguajes. Así sería más ordenado
yo entendi, de cualquier forma son ejemplos
Sugiero cambiar esta parte a un video de introducción y luego poner como extra también el texto.
Cuando haces sort en PHP, si no específicas como es en este caso (creo), por qué decide acomodar en ese orden el array?
Muy buen post!. Platzi debería crear algo así donde los profesores y estudiantes mas dedicados puedan crear contenido educativo con el fin de ayudar a toda la comunidad, mientras mas enseñas mas aprendes!
Ya la hay, cuando entras a un curso en su homepage al lado de "contenido de curso", dice "Tutoriales de estudiantes". Son videos que la comunidad hace respecto al curso
No sabia eso. Gracias Jhonier
PHP es un lenguaje de programación de uso general que se adapta especialmente al desarrollo web. Fue creado inicialmente por el programador danés-canadiense Rasmus Lerdorf en 1994. En la actualidad, la implementación de referencia de PHP es producida por The PHP Group
Su desarrollo Web esta del lado de Wordpress.
Creo que sería mucho más fácil entender las diferencias entre los distintos lenguajes de programación, si nos pusieran a pasar el mismo ejercicio varias veces, pero cada vez con un lenguaje de programación diferente.
.
Por ejemplo, que nos dieran la instrucción "Declara una variable que contenga el valor 123" y que tuvieramos que hacer lo mismo pero cada vez con un lenguaje distinto.
.
Entender estos conceptos con pura teoría no es suficiente. Deberían poner ejercicios prácticos que ayuden a comprender los conceptos.
Eso abarcaría varios cursos. Este curso son fundamentos y una introducción a algunos de ellos.
me imagino que cada lenguaje tendrá sus fortalezas, espero mas adelante poder usarlos de manera adecuada dependiendo del programa que vaya a desarrollar.