Carina Payleman
EstudianteSharon Gizela Arana Mendoza
EstudianteSantiago Andres Alvarez Cuadros
EstudianteArturo Malgor
EstudianteSergio Brandon De Lucio Chavero
EstudianteJose Gabriel Argüello
EstudianteJuan Antonio Delgadillo Carrillo
EstudianteSandra Rosa Arroyo Paredes
EstudianteJonathan Meixueiro
EstudianteAyriel Noriega
EstudianteOscar Agustin Flores Arana
EstudianteFrancisco Ponce
Estudiantexi Rg
EstudianteJosé Fernando Fuentes Roa
EstudianteDaniel Ochoa
EstudianteLuis Vicente Gorpa Cruzado
EstudianteSandra Rosa Arroyo Paredes
EstudianteAxel Enrique Galeed Gutierrez
EstudianteJoan Manuel Theran Burgos
EstudianteAriel Ezequiel Biazzo Genua
EstudianteMaria Alejandra Luna Tito
EstudianteAna Rotela Cabrera
EstudianteDavid Galvan
EstudianteAxel Enrique Galeed Gutierrez
EstudianteSandra Rosa Arroyo Paredes
EstudianteAxel Enrique Galeed Gutierrez
EstudianteEmerson Cedeño
EstudianteEugenio Condori
EstudianteReglas de nomenclatura.
¿Cómo nombro correctamente mis variables, funciones, etc...?
jajajaja el 'ubiqueee??' me hizo el día! <3
Recuerden siempre utilizar PascalCase para nombrar clases. Esto también aplica para nombrar alias types e interfaces en TypeScript
El lenguaje ubicuo, también conocido como lenguaje universal, es un concepto desarrollado por el experto en tecnología de la información y autor Martin Fowler, que se refiere a un lenguaje común y compartido entre todos los miembros de un equipo o empresa, independientemente de sus antecedentes, roles o áreas de experiencia.
El objetivo del lenguaje ubicuo es mejorar la comunicación y la colaboración en un equipo, especialmente en proyectos complejos en los que participan varias partes interesadas. Al establecer un conjunto común de términos y definiciones, se pueden evitar malentendidos, errores y retrasos, lo que puede mejorar la eficiencia y la calidad del trabajo.
El lenguaje ubicuo se basa en la idea de que las personas utilizan el lenguaje para modelar su comprensión de un dominio. Al establecer un lenguaje compartido, se puede mejorar la comprensión de un proyecto o sistema, lo que puede conducir a una mejor toma de decisiones y mejores resultados.
El ejemplo sobre el lenguaje ubicuo tiene bastante que ver con el desarrollo de software debido a que cuando creamos una base de datos tenemos que definir las entidades y esas entidades pueden ser el ejemplo de clientes usuarios etc. todo lo podemos juntar en usuarios y después partir en dimensiones de direcciones, ubicaciones, billeteras, contacto, etc. entonces esto no solamente afecta la legibilidad del código también afecta la estructura de la base de datos la mantenibilidad de la misma y además de que respeta el principio DRY debido a que el código que tendríamos que escribir para llamar la Data de los diferentes nombres que se le da al usuario es básicamente el mismo y se repite tres veces.
Reglas para la nomenclatura
➯ Para contribuir a que nuestro código sea limpio hay que nombrar correctamente a nuestras variables funciones y clases, las variables funciones, etc deben ser expresivas, es decir en ingles y camel case, evitar el uso de guiones, guiones bajos y abreviaturas.
// no recomendado const yyyymmdstr = moment().format("YYYY/MM/DD"); // no recomendado const currentDate = moment().format("YYYY/MM/DD");
➯ Nombres sin información técnica , evitar usar nombre relacionados a la tecnología, tipo de dato o clase.
// No recomendado let arrayNames = ["Alex", " Mariana", "Cande"]; //recomendado let namesList = ["Alex", " Mariana", "Cande"];
➯ Usar lenguaje ubicuo, ques es? aquel que se construye a partir del lenguaje que usan los expertos en el dominio, un lenguaje en común entre los devs y los interesados
// no recomendado getUserInfo(); getClientData(); getCustomerRecord(); // recomendado getUser();
tanto user, client and customer se pueden agrupar en user, si representan el mismo concepto. (representar a un usuario)
yo solo tengo una duda y no es escusa para no aprender ingles, pero por que simpre en ingles si LATAM somos demasiados que hablamos español .. y por que USA es quien saca solo la tecnologia ami me gustaria globalizar mas el idioma español
const diaActual const sumarNumeros const busqeuda const verificarResolucion
ami me gusta mas asi cuando aprend y cree proyectos los are de esta forma pero claro que si entrare ala escuela de academy inglis
Razones del uso del inglés:
Sin embargo, tienes razón en señalar la importancia del español:
Consideraciones prácticas:
Lenguaje ubicuo, es un término usado en el desarrollo, para entenderlo más fácil, imagina que es la jerga que tienes en tu grupo de amigos cuándo es un proyecto en un equipo. Ejemplo: Decir 'Se está ofreciendo' y que todos entiendan que 'Estaría bien hacer esto'.
Y es como la jerga de una región cuándo es de un lenguaje, como en este caso (Javascript). Ejemplo: En España dices 'Lo está petando' En México dices 'La está rompiendo'
En ambos casos te podrán entender que 'Le está yendo muy bien', pero para evitar confusión y sonar raro, a dónde vas, haces lo que ves. Como en Javascript dices getUser() y en Python dices get_user()
El uso de var comenzó a desaconsejarse oficialmente desde ECMAScript 2015, también conocido como ES6, lanzado en 2015.
Fue en esa versión donde aparecieron:
como reemplazos modernos y más seguros para var.
El siguiente código no contempla estrictamente palabras en ingles. Sin embargo funcionan sin problemas. ¿donde quedaría si no la posibilidad de inventiva? si se tiene que someter la programación como si fuera una biblia donde se repite sin saber que se repite function crearGato(nombre, edad) { var perro = { nombre: nombre, edad: edad, meow: function() { return "Meow!"; } }; return perro; }
La cuestión es que no hacemos el código para nosotros, sino para todo un equipo de trabajo o para futuras personas que lleguen a darle mantenimiento. Es lo que pasa en la vida laboral, y sí, el código funciona, pero si esta porción de código llega a ser turnada con un equipo global, estoy seguro de que no será legible, y el equipo tendrá que desperdiciar tiempo de desarrollo (que es muy caro) para poder descifrar cosas como: por qué retornar un objeto perro si estamos creando un gato, por qué utilizar var y no const al crear una variable.
Toca facilitar la legibilidad del código para que pueda ser leído por otras personas que tengan conocimiento en el lenguaje de programación, y no tanto de nuestro idioma.
Podríamos cambiar el código a esto para hacerlo más legible.
function createCat(name, age) { const cat = { name, age, growl: function() { return "Meow!"; } }; return cat }
E incluso refactorizarlo hasta tener una sintaxis más parecida a ES6 (también hay que saber cuando factorizar, si es necesario y si en realidad mejora su legibilidad)
const createCat = (name, age) => ({ name, age, growl: () => "Meow" })
Hola, alguien ha visto alguna clase sobre EMMET en Platzi? He buscado en todo el catálogo Aún no encuentro
Hola Avv, realmente no es necesario crear una sola clase para EMMET, con que leas la documentación en una hora aprendes lo básico para crear los bloques HTML de manera rápida. Mira, acá está la documentación oficial").
Cuando la aplicación es muy grande hay procesos muy especificos, entonces me queda la duda de esa última regla que tan estricta debe ser, ya que hay cosas puntuales como conseguir el telefono de un usuario, los datos del creador de un post, cosas así.
Como debería nombrarse en estos casos?
¿Por qué para arrayNames lo correcto es namesList? ->
¿Lo correcto no seria name si tuviera un valor y para muchos valores seria names?.
Respuestas por favor. Gracias.
por que no listNames? Pues por la gramatica en ingles primero es el adjetivo y luego el sustantivo. name list, asi que lo correcto segun gpt es nameList.
Consulta.
En la clase anterior la profesora dijo que recomienda declarar las contantes con mayúsculas, pero ahora nos dice que usemos camelCase ¿Cuál deberíamos usar?
Tengo entendido que por practicidad y mejor lectura del código tendríamos que utilizar mayúsculas para las contantes. Gracias. :D
y como serai el nombre de esas variables que solo usamos una vez y ya, por ejemplo para parsear, eliminar esapcios de un texto, etc?
Bueno, al ser una funcion podrias poner por ej:
removeSpaces()
Fijate que remove es una accion pero no le agregue ningun tecnisismo como FN de function.
Si tienes ganas, puedes usar bard o gpt para explorar mas ideas!
a mi me cuesta mucho nombrar mis variables y funciones, y mas porq esto se debe hacer en ingles
Resumen de la clase
miVariable, miFuncion.const para variables que no cambian, let para variables que sí cambian, y function o arrow functions para definir funciones.Consulta. En la clase anterior la profesora dijo que recomienda declarar las contantes con mayúsculas, pero ahora nos dice que usemos camelCase ¿Cuál deberíamos usar? Tengo entendido que por practicidad y mejor lectura del código tendríamos que utilizar mayúsculas para las contantes. Gracias. :D
las const si deben ser con mayusculas los let con camelcase Ejemplo: - EMPTY_TEXT = '' - nameList = [...]
@Sandra, muchas gracias. 😁
Sobre el naming convention en variables algunas recomendaciones que me han sido de gran utilidad (extrapolable a otros lengs. de programación*), sumado a lo dictado en este bloque de clases sobre "Nombre y uso de las variables":
Alguna otra recomendación? 🤓
//REGLA 1 => Nombres pronunciables y expresivos usando camelCase //No recomendado const yyyymmdstr = moment.format("YYYY/MM/DD"); //Recomendado const currentDate = moment.format("YYYY/MM/DD"); //REGLA 2 => Nombres sin información tecnica (tipo de dato, tipo de clases, etc) //No recomendado let arrayNames = ["Juan", "Pedro", "Maria"]; //Recomendad let namesList = ["Juan", "Pedro", "Maria"]; //REGLA 3 => Usar lenguaje ubicuo,crear un lenguaje en común para desarrolladores e //interesados, determinando palabras de uso común. //No recomendado getUserId(); getClientData(); getCustomerRecord(); //Recomendado getUser(); ```*//REGLA 1 => Nombres pronunciables y expresivos usando camelCase//No recomendado*const yyyymmdstr = moment.format("YYYY/MM/DD");*//Recomendado*const currentDate = moment.format("YYYY/MM/DD"); *//REGLA 2 => Nombres sin información tecnica (tipo de dato, tipo de clases, etc)//No recomendado*let arrayNames = \["Juan", "Pedro", "Maria"];*//Recomendad*let namesList = \["Juan", "Pedro", "Maria"]; *//REGLA 3 => Usar lenguaje ubicuo,crear un lenguaje en común para desarrolladores e //interesados, determinando palabras de uso común.//No recomendado*getUserId();getClientData();getCustomerRecord();*//Recomendado*getUser();