Este canal pretende compartir conocimientos informáticos entre todos los integrantes de la comunidad Internet. Se tratarán diversas materias, desde ofimática básica y avanzada hasta programación, pasando por diseño gráfico y web.
Hola Profe! Tiempo sin pasar por tu canal :) quería preguntarte si tienes algún curso tutorizado de SQL, no lo encuentro en tu web. Disculpa por hacer este comentario en este video. Un abrazo
A alguien mas le ha pasado que al prescindir del modificador de acceso final de la variable boolean dentro del metodo enMarcha funciona sin error alguno? es quizá algo de las actualziaciones del JDK? gracias por los conocimientos sr Juan
Hola profe Juan. Como siempre es un gran gusto saludarte. Aunque últimamente no he vuelto a participar en los comentarios de RU-vid de tus cursos, estoy muy al tanto de tu contenido. Actualmente paso mis días en Godot y en tu Python tutorizado. Te envío saludos y los mejores deseos para ti y los tuyos.
Nota: Clase es una plantilla también se conoce como molde a través de la cuales se crean los objetos, Un Objeto es una instancia concreta de una Clase es decir esta construida a partir de la clase. Un Objeto tiene métodos que son el "comportamientos del objeto" tambien tiene atributos llamadas características que son las "propiedades del objeto, datos del objeto". Ejemplo: ------ > Clase = Vehiculo: Caracteristicas del Objeto:( nombre, color, modelo): -----> Instancia concreta de la Clase: Objeto = Auto1 ("Fiat" "Rojo" "2022";) ----> Objeto = Auto2 ("Toyota Corolla" "Blanco" "2024") .
Buenas tardes profesor, dos cosas. Número 1 me gustaría que usted deje o si puede dar canales para realizar donaciones a su canal. Ya que la ayuda que brinda a la comunidad es enorme! Número 2 difiero del comentario de esa persona. Ya que en mi caso especial y como toda opinión me baso en lo que a mi respecta, empecé a ver Python sin conocer nada de informática, y su conocimiento me fué de tan pero tan ayuda, que a la hora de empezar otro lenguaje o si quiera ver funciones anidadas en excel, sus conocimientos me fueron de base para una gran mansión (analogía). Ni hablar de la comprensión sobre el mismo lenguaje que esa extensa explicación me dió. Desde ya muchas gracias y de verdad espero que lea mi mensaje, ya que sería para mi de gran alivio que por lo menos haya visto una persona más, expresando la inmensa gratitud que se merece.
Gracias!!! Excelente, para los que vienen detrás, al día de hoy 21 mayo 2024, hasta este video/vídeo (como gusten en llamarlo) está vigente... por ahora todo funciona...
profe a mi me basto con modificar un poco mi codigo... que vuelvo y repito, no esta muy bien si me baso en eso de la modularizacion, porque ahora tengo un metodo que hace o crea 3 clases de Items diferente, pero como es mi codigo me lo permito :D haha class Practica_Lamina extends JPanel{ public Practica_Lamina () { setLayout(new BorderLayout()); JPanel practicalamina= new JPanel(); JMenuBar practicaBarra= new JMenuBar(); grupo = new ButtonGroup(); //---------------------------------------------------- fuente=new JMenu("Fuente"); estilo=new JMenu("Estilo"); tamano=new JMenu("Tamaño"); practicaBarra.add(fuente); practicaBarra.add(estilo); practicaBarra.add(tamano); //---------------------------------------------------- crear("Arial","fuente"); //aqui llamo al metodo que cree, que se llama crear, dentro de este metodo. agrege los items a sus respectivos menus y aparte de eso crear("Bauhaus 93","fuente");//con la clase StyledEditorKit, los puse a la escucha de la clase oyente crear("Verdana","fuente"); // crear("Negrita", "estilo"); crear("Cursiva", "estilo"); // crear("12","tamano"); crear("16","tamano"); crear("20","tamano"); crear("24","tamano"); //------------------------------------------------------ practicalamina.add(practicaBarra); add(practicalamina, BorderLayout.NORTH); JTextPane areatexto = new JTextPane(); add(areatexto); } public void crear(String nombre, String nombre_fuente) { JMenuItem Item = new JMenuItem (nombre); JCheckBoxMenuItem box = new JCheckBoxMenuItem(nombre); radio =new JRadioButtonMenuItem(nombre); grupo.add(radio); if (nombre_fuente=="fuente")fuente.add(Item); if (Item.getActionCommand()=="Arial")Item.addActionListener(new StyledEditorKit.FontFamilyAction("Cambiar_letra","Arial")); else if (Item.getActionCommand()=="Bauhaus 93")Item.addActionListener(new StyledEditorKit.FontFamilyAction("Cambiar_letra","Bauhaus 93")); else if (Item.getActionCommand()=="Verdana")Item.addActionListener(new StyledEditorKit.FontFamilyAction("Cambiar_letra","Verdana")); if(nombre_fuente=="estilo")estilo.add(box); if(box.getActionCommand()==("Negrita")) {box.addActionListener(new StyledEditorKit.BoldAction());box.setIcon(new ImageIcon("src/graficos2/negrita.png"));} if(box.getActionCommand()==("Cursiva")) {box.addActionListener(new StyledEditorKit.ItalicAction());box.setIcon(new ImageIcon("src/graficos2/cursiva.png"));} if (nombre_fuente=="tamano") tamano.add(radio); if(radio.getActionCommand()=="12")radio.addActionListener(new StyledEditorKit.FontSizeAction("cambia_tamano", 12)); if(radio.getActionCommand()=="16")radio.addActionListener(new StyledEditorKit.FontSizeAction("cambia_tamano", 16)); if(radio.getActionCommand()=="20")radio.addActionListener(new StyledEditorKit.FontSizeAction("cambia_tamano", 20)); if(radio.getActionCommand()=="24")radio.addActionListener(new StyledEditorKit.FontSizeAction("cambia_tamano", 24)); } private JRadioButtonMenuItem radio; private JMenu tamano, fuente,estilo; private ButtonGroup grupo; } }
profe como mi codigo es un tanto diferente del tuyo. yo lo hise con el metodo setIcon... :D, pero asi como lo hiso usted, a mi tambien me funcionaria, solo que ya que estoy adquiriendo conocimientos, quiero que mi codigo sea mio y no una copia del suyo. aunque no voy a negar que su forma es mejor si nos vamos a eso de la modulizacion... if(Item.getActionCommand()==("Negrita")) {Item.addActionListener(new StyledEditorKit.BoldAction());Item.setIcon(new ImageIcon("src/graficos2/negrita.png"));} if(Item.getActionCommand()==("Cursiva")) {Item.addActionListener(new StyledEditorKit.ItalicAction());Item.setIcon(new ImageIcon("src/graficos2/cursiva.png"));}
No había comentado hasta ahora, pero toca decir que muy bueno este curso de verdad. Muy satisfecho con lo que he ido aprendiendo. Un par de cosas de la práctica las tuve que hacer según el video, pero en su mayoría salió solo, e incluso añadí algunos toques propios que se me fueron ocurriendo como un mensaje de confirmación antes de borrar registros, una restricción para que solo se puedan poner números en el campo de Id o un botón extra para limpiar los campos más cómodamente. Me alegra haber podido hacer estas cosas de manera más independiente y comprobar que funcionan, y todo gracias al curso. Grande Juan!!!
Yo lo que entiendo que todo esta maremágnum de IoC y DI, es para flexibilizar el código central el core, para no tener que tocar el archivo donde se ejecuta la aplicación, el día de mañana si se necesita cambiar algo que sea en los módulos externos en el .xml...
Muchas gracias por el curso, creo que el bucle for se entiende mejor si en vez de imprimir el nombre por pantalla se incluye también la impresión del estado del contador i en cada vuelta del bucle.
la verdad me parece excelente este canal,he intentado estudiar en varios y sin embargo este es el mas claro porqe te explica paso a paso sin dejar nada a la interpretacion ,muchas gracias.
7 años despues, y a pesar de los avances que ha tenido la programación, el curso sigue siendo excelente para rellenar ese conocimiento base necesario en la programación. 5 estrellas