Pablo Tachella
Kamila Gutiérrez
Pablo Tachella
Pablo Tachella
Kamila Gutiérrez
Pablo Tachella
Claudio Jesus Vázquez Villanueva
Paul Cortes
juan carlos reyes granciano
Cristian David Restrepo Marin
KEVIN ALEXANDER PEÑARANDA SOTO
Braian Peña
César David Ramírez Dimaté
Felipe de Jesús Galindo Aguilar
Jaime Ortiz
Sebastian CA
Omar Villada
Francisco Ruiz Lezcano
Rahiber Paradas
Omar Juarez
JESUS ALMIRCAR CASTELLANOS
John Alassio
Alejandra Espinosa
John Alassio
David Gallego
Juan Manuel Alberto Martin
Wilson Alejandro Gonzalez Gaitan
Astrik Sem Torres Garcia
Juan José Calderón
Diego Boyatjian
Nicoll Idaly Angulo Mejia
Luis Betancourt
Rubén Hernan Barrera Chavez
Jair Israel Avilés Eusebio
Carlos David Guevara Martinez
En la clase 4 se explica como crear un proyecto Maven y en esta clase arranca como si ya lo supiéramos, imagino que estan al revés, aviso por si alguno llega y no entiende nada como me pasó a mi jaja
Totalmente de acuerdo con Pablo, existe algún curso que explique como se crea el proyecto Maven?
Hola maria, yo tome el curso el año pasado y si mal no recuerso reforcé Maven con el canal de youtube de MitoCode, se especializan en Java mas que nada. Hechale un vistaso a mi me fue de gran ayuda en su momento.
Lista de reproducción de Maven - MitoCode
Al final no es necesario tanto if.
package com.platzi.javatests.util; public class PasswordUtil { public enum SecurityLevel { WEAK, MEDIUM, STRONG } public static SecurityLevel assessPassword(String password) { if (password.length() < 8 || password.matches("[a-zA-Z]+")) return SecurityLevel.WEAK; if (password.matches("[a-zA-Z0-9]+")) return SecurityLevel.MEDIUM; return SecurityLevel.STRONG; } }
Excelente propuesta, muy bien pensado!!!
Buena aportacion
<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> </dependency> </dependencies>
para los que no les funciona ctrl + enter , pueden usar alt+insert , a mi me funciono.
Esto motiva a muchos a empezar en platzi.
Si recomiendo bastante que los métodos de los test se definan en CamelCase, ya que así es el estándar en Java y en el mundo laboral.
PasswordUtil.java
package com.platzi.javatests.util; public class PasswordUtil { public enum SecurityLevel { WEAK, MEDIUM, STRONG } public static SecurityLevel assessPassword(String password) { if (password.length() < 8) { return SecurityLevel.WEAK; } if (password.matches("[a-zA-Z]+")) { return SecurityLevel.WEAK; } if (password.matches("[a-zA-Z0-9]+")) { return SecurityLevel.MEDIUM; } return SecurityLevel.STRONG; } }
PasswordUtilTest.java
package com.platzi.javatests.util; import org.junit.Test; import static com.platzi.javatests.util.PasswordUtil.SecurityLevel.*; import static org.junit.Assert.assertEquals; public class PasswordUtilTest { @Test public void assessPasswordWeak_whenHasLessThanEightLetters() { assertEquals(WEAK, PasswordUtil.assessPassword("1234567")); } @Test public void assessPasswordWeak_whenHasOnlyLetters() { assertEquals(WEAK, PasswordUtil.assessPassword("abcdefgh")); } @Test public void assessPasswordMedium_whenHasLettersAndNumbers() { assertEquals(MEDIUM, PasswordUtil.assessPassword("abcd1234")); } @Test public void assessPasswordStrong_whenHasLettersNumbersAndSymbols() { assertEquals(STRONG, PasswordUtil.assessPassword("abcd123#!")); } }
También me surgió la misma duda, el método más usado es el CamelCase como bien mencionas, a menos que en los test usen esa nomenclatura de los guiones bajo.
Este es el curso Nº 5 que usa expresiones regulares! Estoy contemplando en tomar el curso de expresiones regulares!.
Para los que se les olvido lo que eran los enums: https://www.w3schools.com/java/java_enums.asp
Los enums si mal no recuerdo las clases de Anahi, son un grupo de constantes que declaro.
Dejo mi resolución
public class PasswordUtil { public enum SecurityLevel{ WEAK, MEDIUM, STRONG } /* * @return {@link SecurityLevel} * @param String * */ public static SecurityLevel assessPassword(String password){ SecurityLevel response = SecurityLevel.WEAK; /* * Expresiones regulares * ^ start-of-string * ([0-9]) a digit must occur at least once * ([a-z]) a lower case letter must occur at least once * ([A-Z]) an upper case letter must occur at least once * ([@#$%^&+=]) a special character must occur at least once * (?=\S+$) no whitespace allowed in the entire string * .{8,} anything, at least eight places though * $ end of string * + can be repeated several times * */ if(password.length() >= 8 && !password.matches("[a-zA-Z]+")){ if(password.matches("[a-zA-Z0-9]+")){ response = SecurityLevel.MEDIUM; } else{ response = SecurityLevel.STRONG; } } return response; } }
Excelente aporte de las expresiones regulares, ahora con el codigo a mi parecer es mas legible separar los if.
quedaria algo asi.
2 años después y aún se espera que suban la clase.
⚡️Ir al resumen del curso
Aca el profe trabaja con inteligIdea pero se puede con el mejor ide VSC,
y como se puede en VSC, que extensiones se deben instalar? gracias
Buenas, como estas? actualmente deje de lado el curso para retomarlo mas tarde, pero sin recordar específicamente a que iba mi comentario segun el contenido de la clase. VSC tiene muchos beneficios a la hora de interactuar con el repocitorio y con el Bash de Git. ademas por lo pronto, para ser mas directo con tu pregunta, VSC te ofrece una serie de paquewtones para Java, hoy dia, Java 19 tiene muchas accesibilidades pensando en los IDE de tendencia como VSC, InteligeIDea, etc... Busca en las extensiones de VSC todo lo referido a Java, y encontraras alli pack of java, que te ayudaran. tambien puedes buscar mucha info en Youtube ;)
El video de esta clase no esta disponible 🤯
Ya aparece, es un vídeo de youtube.
Ya esta disponible el video
Mi método assessPassword(String password) con la comprobación de los caracteres
public static SecurityLevel assessPassword(String password) { if (password.length() < 8 || password.matches("[a-zA-Z]+") ) return SecurityLevel.WEAK; if (password.matches("[a-zA-Z0-9]+")) return SecurityLevel.MEDIUM; if (password.matches("[a-zA-Z0-9!-/]+")) return SecurityLevel.STRONG; return null; }
Bueno recordad lo útiles que son las REGEX :D
dejo mi solucion public static SecurityLevel verifyPasswordLevel(String pass){
//menos de 8 caracteres o solo letras o solo numeros if (pass.length() < 8 || pass.matches("[a-zA-Z]+") || pass.matches("[0-9]+")) return SecurityLevel.WEAK; //si tiene letras y numeros es MEDIUM if (pass.matches("[a-zA-Z0-9]+")) return SecurityLevel.MEDIUM; //si tiene caracter especial es STRONG return SecurityLevel.STRONG; }
y mis test public class PasswordUtilTest {
@Test public void verifyWeakPassword() { PasswordUtil.SecurityLevel inputPass = PasswordUtil.verifyPasswordLevel("af34"); assertEquals(WEAK, inputPass); } @Test public void verifyWeakPassword2() { PasswordUtil.SecurityLevel inputPass = PasswordUtil.verifyPasswordLevel("holasoydiego"); assertEquals(WEAK, inputPass); } @Test public void verifyWeakPassword3() { PasswordUtil.SecurityLevel inputPass = PasswordUtil.verifyPasswordLevel("1234567898"); assertEquals(WEAK, inputPass); } @Test public void verifyMediumPassword(){ PasswordUtil.SecurityLevel inputPass = PasswordUtil.verifyPasswordLevel("abcd78945"); assertEquals(MEDIUM, inputPass); } @Test public void verifyStrongPassword(){ PasswordUtil.SecurityLevel inputPass = PasswordUtil.verifyPasswordLevel("abcd7#8945"); assertEquals(STRONG, inputPass); }
}
El curso de spring enseña como crear proyectos maven
El nombre de las pruebas unitarias también tienen un objetivo y en algunos casos tienen especificación Gherkin (Given Then When). Recomendado el curso de Fundamentos de pruebas de software.
para ver videos de youtube mejor no pago y veo los videos en youtube xd
Todos los cursos de Platzi tiene por lo general unao dos clases muestra en youtube. El 95% del contenido restante esta dentro de la plataforma
Interesante pero aun me quedaron muchas dudas, espero se disuelvan segun vayamos avanzando...