0% encontró este documento útil (0 votos)
17 vistas24 páginas

Huertos Escolares y Java: Innovación Educativa

Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
17 vistas24 páginas

Huertos Escolares y Java: Innovación Educativa

Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 24

HUERTO UMB

PROGRAMACION ORIENTADA A OBJETOS

PRESENTADO POR
CESAR URIEL RODRIGUEZ EDUARDO

PROFESRORA
ING. ANA KAREN GONZALEZ SALDAÑA

FECHA
18/JUNIO/2034
INTRODUCCION

Los huertos escolares, tradicionalmente vinculados a la agricultura y la biología,


están evolucionando para incluir conceptos de programación, como Java, un
lenguaje fundamental en el mundo del desarrollo de software. A la escuela o al lector
le interesara como es que esta desarrollado este programa.

Imaginemos un huerto escolar donde los estudiantes no solo aprenden sobre


cultivos y sostenibilidad ambiental, sino que también exploran las bases de la
programación a través de Java. Este enfoque innovador no solo les enseña sobre
la naturaleza y la alimentación saludable, sino que también les proporciona
herramientas para entender cómo funcionan las tecnologías que rodean sus vidas
diarias.
Los estudiantes pueden escribir programas para monitorear el riego automatizado,
analizar datos meteorológicos para mejorar los rendimientos o incluso crear
aplicaciones educativas para compartir sus descubrimientos con la comunidad
escolar.
Así, un huerto escolar que integra programación en Java no solo cultiva plantas,
sino también mentes ágiles y preparadas para demostrar a generaciones que están
por entrar, que sea una motivación que en la programación le puedes dar el giro
que quieras.
ABSTRAC

Here's the translated version in British English:


School gardens, traditionally linked to agriculture and biology, are evolving to include
programming concepts such as Java, a fundamental language in the world of
software development. Schools or readers may be interested in how this programme
is developed.
Imagine a school garden where students not only learn about crops and
environmental sustainability but also explore the basics of programming through
Java. This innovative approach not only teaches them about nature and healthy
eating but also provides tools to understand how technologies surrounding their daily
lives work.
Students can write programmes to monitor automated irrigation, analyse weather
data to improve yields, or even create educational apps to share their discoveries
with the school community.
Thus, a school garden integrating Java programming not only cultivates plants but
also agile minds prepared to demonstrate to generations to come that in
programming, you can give it the twist you want.
MARCO TEORICO

Educación Ambiental y Sostenibilidad: Los huertos escolares son herramientas


poderosas para educar a los estudiantes sobre la importancia de la sostenibilidad y
el cuidado del medio ambiente. Permiten aprender de manera práctica sobre ciclos
naturales, conservación de recursos y prácticas agrícolas sostenibles.
Integración Curricular: Los huertos escolares no solo enseñan conceptos de
ciencias naturales como biología y química, sino que también pueden integrar
matemáticas (por ejemplo, cálculo de áreas de cultivo), lengua y literatura (a través
de la escritura de informes o diarios de huerto) y ciencias sociales (estudiando la
historia de la agricultura y la alimentación).
Promoción de la Salud y Alimentación Saludable: Los huertos escolares
fomentan una mayor conexión con los alimentos frescos y saludables, ayudando a
combatir la obesidad infantil y promoviendo hábitos alimenticios saludables desde
una edad temprana.
Impacto Psicológico y Emocional: Trabajar en un huerto puede tener un efecto
terapéutico y calmante en los estudiantes, ayudándolos a reducir el estrés y mejorar
su bienestar emocional.
OBJETIVO GENERAL
Desarrollar un programa en Java es integral y accesible que facilite la gestión
eficiente del huerto y actúe como una herramienta educativa valiosa para la
comunidad estudiantil de la UMB. Esta base de datos tiene como propósito
promover la aplicación práctica de conocimientos en botánica y horticultura, mejorar
las prácticas de cultivo, fomentar la sostenibilidad y aumentar la conciencia
ambiental entre los estudiantes.
A través del aprendizaje de Java, los estudiantes adquieren habilidades básicas y
fundamentales en programación. Pueden aprender a escribir código para crear
programas simples que automatizan tareas relacionadas con la gestión del huerto,
como el riego automatizado o la monitorización de condiciones meteorológicas.

3 OBJETIVOS ESPECIFICOS

❖ Desarrollo de habilidades en programación: Capacitar a los estudiantes


para que adquieran habilidades básicas y avanzadas en programación
utilizando Java. Esto incluye entender los conceptos fundamentales de
programación, como variables, estructuras de control, funciones y clases, a
través de proyectos prácticos relacionados con la gestión y optimización.

❖ Aplicar la tecnología en un huerto: Utilizar la programación en Java para


mejorar la eficiencia y sostenibilidad del huerto escolar. Por ejemplo, los
estudiantes podrían desarrollar programas para monitorear y controlar el
riego automatizado basado en sensores de humedad del suelo o para
analizar datos meteorológicos y ajustar las prácticas de cultivo para
maximizar los rendimientos y la salud de las plantas.

❖ Resaltar la creatividad y la Innovación: Estimular la creatividad de los


estudiantes al permitirles diseñar y desarrollar aplicaciones educativas
relacionadas con la agricultura y el medio ambiente.
HIPOTESIS

La integración de la programación en Java en los huertos escolares podría potenciar


aún más los beneficios educativos, ambientales y sociales ya conocidos, al
proporcionar a los estudiantes herramientas adicionales para gestionar de manera
eficiente los recursos agrícolas y ambientales.
En los huertos escolares incrementará significativamente el interés y la participación
de los estudiantes en el aprendizaje STEM y la agricultura sostenible. Esto se
reflejará en un aumento en el rendimiento académico en áreas relacionadas con
ciencia, tecnología, ingeniería y matemáticas, así como en una mayor conciencia
ambiental y habilidades prácticas para el manejo eficiente de recursos agrícolas y
ambientales.

REQUERIMIENTOS DE SOFTWARE Y HARDWARE

Sistema Operativo: El programa debe ser compatible con los sistemas operativos
admitidos por NetBeans, que incluyen Windows, macOS y Linux.

Software de programación: NetBeans IDE 8.2 Se requiere el IDE NetBeans


para el desarrollo y la compilación del programa.

Lenguaje de Programación: El programa se desarrolló utilizando el lenguaje de


programación java en NetBeans.

Computadora: Se requiere una computadora con capacidad para ejecutar el


programa.

Conexión a Internet: Se requiere una conexión a Internet para acceder a


recursos en línea.

Dispositivo de Entrada: Se requiere un dispositivo de entrada, como un teclado y


un mouse o un panel táctil, para interactuar con la interfaz de usuario del
programa.
ALGORITMO

Inicio del programa:

• Inicializar el programa.
• Mostrar el menú principal.

Menú principal:

• Presentar opciones al usuario por número:


o
1. Frutas
o

2. Verduras
o

3. Exterior
o

4. Interior

Dependiendo de la categoría seleccionada, mostrar las siguientes plantas:

• 1. Frutas:
o
1. Fresa
o

2. Frambuesa
o

3. Zapote Blanco
o

4. Durazno
o

5. Aguacate
o

6. Granada
• 2. Verduras:
o
6. Chile Habanero
o

2. Chile Manzano
o

3. Chile de Árbol
o

4. Tomate Cherry
o

5. Acelga
o

6. Zanahoria
o

7. Lechuga
o

8. Frijol
o

9. Calabaza
o

10. Cilantro
o

11. Rábano
• 3. Exterior:
o
11. Jaca
o

2. Ficus
o

3. Colorín
o

4. Pirul
o
5. Pino Piñonero
o

6. Fresno
o

7. Calistemo Rojo
o

8. Llorón
o

9. Trueno
o

10. Macuil
• 4. Interior:
o
10. Bertha
o

2. Lengua de Suegra
o

3. Azucena
o

4. Árbol de la Abundancia
o

5. Hoja Elegante
o

6. Telefono
o

7. Cuna de Moisés
o

8. Aralia
o

9. Garra de Tigre
o

10. Zebra
Las plantas se seleccionan por su número y se muestra su información:

• Nombre común
• Nombre científico
• Toxicidad
• Época de plantación
• Altura
• Flor o fruto
• Distribución
• Dificultad cuidado
• Temperatura
• Luz solar
• Zona de rusticidad
• Agua
• Propagación

Salir del programa con aceptar:

• Finalizar la ejecución del programa.

CODIGO COMENTADO

package formularios;

/**

* Clase principal que representa la ventana principal del programa.

* @autor Cesar Uriel

*/

public class ventanaprincipal extends javax.swing.JFrame {

/**

* Constructor de la clase ventanaprincipal.

* Inicializa los componentes de la interfaz gráfica.


*/

public ventanaprincipal() {

initComponents(); // Llama al método que inicializa los componentes.

/**

* Este método es llamado desde el constructor para inicializar la forma.

* ADVERTENCIA: No modificar este código. El contenido de este método


es siempre

* regenerado por el Form Editor.

*/

@SuppressWarnings("unchecked")

// <editor-fold defaultstate="collapsed" desc="Generated Code">

private void initComponents() {

// Inicializa el panel principal

jPanel1 = new javax.swing.JPanel();

// Inicializa la etiqueta con el título del programa

jLabel3 = new javax.swing.JLabel();

// Inicializa el botón para comenzar

jButton1 = new javax.swing.JButton();

// Inicializa la etiqueta de bienvenida

jLabel2 = new javax.swing.JLabel();

// Inicializa la etiqueta para el fondo de la interfaz gráfica


jLabel1 = new javax.swing.JLabel();

// Configuración para cerrar la ventana al salir del programa

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

// Configuración del panel principal con un layout absoluto para


posicionar los componentes

jPanel1.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());

// Configuración de la etiqueta del título

jLabel3.setFont(new java.awt.Font("Tw Cen MT Condensed Extra Bold",


3, 48)); // NOI18N

jLabel3.setForeground(new java.awt.Color(0, 204, 0));

jLabel3.setText("PLANTS CONSULT");

// Añade la etiqueta del título al panel principal con coordenadas


absolutas

jPanel1.add(jLabel3, new
org.netbeans.lib.awtextra.AbsoluteConstraints(30, 190, 400, -1));

// Configuración del botón de comenzar

jButton1.setBackground(new java.awt.Color(0, 102, 0));

jButton1.setText("COMENZAR");

// Añade un listener para manejar el evento de clic del botón

jButton1.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {


jButton1ActionPerformed(evt); // Método a llamar cuando se
presiona el botón

});

// Añade el botón de comenzar al panel principal con coordenadas


absolutas

jPanel1.add(jButton1, new
org.netbeans.lib.awtextra.AbsoluteConstraints(170, 310, -1, -1));

// Configuración de la etiqueta de bienvenida

jLabel2.setBackground(new java.awt.Color(51, 153, 0));

jLabel2.setFont(new java.awt.Font("Tw Cen MT Condensed", 3, 36)); //


NOI18N

jLabel2.setForeground(new java.awt.Color(0, 204, 0));

jLabel2.setText("BIENVENIDO A");

// Añade la etiqueta de bienvenida al panel principal con coordenadas


absolutas

jPanel1.add(jLabel2, new
org.netbeans.lib.awtextra.AbsoluteConstraints(120, 90, 210, 60));

// Configuración del fondo de la interfaz gráfica

jLabel1.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/imagenes/fondo1.jpg"))); //
NOI18N

// Añade el fondo al panel principal con coordenadas absolutas

jPanel1.add(jLabel1, new
org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 590, 470));
// Configuración del layout del contenido principal de la ventana

javax.swing.GroupLayout layout = new


javax.swing.GroupLayout(getContentPane());

getContentPane().setLayout(layout);

layout.setHorizontalGroup(

layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)

);

layout.setVerticalGroup(

layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)

);

pack(); // Ajusta el tamaño de la ventana para que se ajuste a sus


componentes.

}// </editor-fold>

/**

* Método que se ejecuta cuando se presiona el botón "COMENZAR".

* Abre una nueva ventana y cierra la ventana actual.

*/

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {


Ventana2 siguiente = new Ventana2(); // Crea una nueva instancia de la
siguiente ventana

siguiente.setVisible(true); // Hace visible la nueva ventana

this.dispose(); // Cierra la ventana actual

/**

* Clase Ventana6 extiende javax.swing.JFrame para crear una ventana de GUI.

* Utiliza el framework Swing.

* Autor: Cesar Uriel

*/

public class Ventana6 extends javax.swing.JFrame {

// Constructor de la clase Ventana6

public Ventana6() {

initComponents(); // Llama al método initComponents para inicializar la


interfaz gráfica.

// Método para inicializar los componentes de la interfaz gráfica.

@SuppressWarnings("unchecked")

private void initComponents() {


// Inicialización de componentes de GUI

jLabel1 = new javax.swing.JLabel();

jTextField1 = new javax.swing.JTextField();

jButton1 = new javax.swing.JButton();

jScrollPane1 = new javax.swing.JScrollPane();

jTextArea1 = new javax.swing.JTextArea();

// Configuración del comportamiento de cierre de la ventana.

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

// Configuración del texto del JLabel

jLabel1.setText("Escribe tu nombre");

// Configuración del texto del JTextField

jTextField1.setText("jTextField1");

// Configuración del texto del JButton

jButton1.setText("Mostrar nombre");

// Acción que se realiza al presionar el JButton

jButton1.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {


jButton1ActionPerformed(evt); // Llama al método
jButton1ActionPerformed cuando se hace clic en el botón

});

// Configuración del JTextArea para mostrar varias líneas de texto

jTextArea1.setColumns(20);

jTextArea1.setRows(5);

jScrollPane1.setViewportView(jTextArea1);

// Configuración del diseño de la ventana utilizando GroupLayout

javax.swing.GroupLayout layout = new


javax.swing.GroupLayout(getContentPane());

getContentPane().setLayout(layout);

// Configuración horizontal del diseño de la ventana

layout.setHorizontalGroup(

layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGroup(layout.createSequentialGroup()

.addGap(28, 28, 28) // Espacio inicial de 28 píxeles

.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.L
EADING)

.addComponent(jLabel1) // Añade el JLabel al diseño


.addComponent(jTextField1,
javax.swing.GroupLayout.PREFERRED_SIZE, 141,
javax.swing.GroupLayout.PREFERRED_SIZE)) // Añade el JTextField con un
tamaño preferido de 141 píxeles

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELAT
ED) // Espacio entre componentes

.addComponent(jButton1) // Añade el JButton al diseño

.addContainerGap(78, Short.MAX_VALUE)) // Espacio final de 78


píxeles

.addGroup(layout.createSequentialGroup()

.addContainerGap()

.addComponent(jScrollPane1) // Añade el JScrollPane que contiene


el JTextArea

.addContainerGap())

);

// Configuración vertical del diseño de la ventana

layout.setVerticalGroup(

layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGroup(layout.createSequentialGroup()

.addGap(19, 19, 19) // Espacio inicial de 19 píxeles

.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.B
ASELINE)

.addComponent(jLabel1) // Añade el JLabel al diseño

.addComponent(jTextField1,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE) // Añade el JTextField con un
tamaño preferido

.addComponent(jButton1)) // Añade el JButton al diseño

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELAT
ED) // Espacio entre componentes

.addComponent(jScrollPane1,
javax.swing.GroupLayout.PREFERRED_SIZE, 217,
javax.swing.GroupLayout.PREFERRED_SIZE) // Añade el JScrollPane con un
tamaño preferido de 217 píxeles

.addContainerGap(30, Short.MAX_VALUE)) // Espacio final de 30


píxeles

);

pack(); // Ajusta el tamaño de la ventana automáticamente según los


componentes

// Acción que se realiza cuando se hace clic en el JButton

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {

String nombre = jTextField1.getText(); // Obtiene el texto del JTextField

jTextArea1.setText("Hola " + nombre); // Muestra el texto en el JTextArea

// Método principal para ejecutar la aplicación

public static void main(String args[]) {

// Establece el look and feel del sistema


try {

for (javax.swing.UIManager.LookAndFeelInfo info :


javax.swing.UIManager.getInstalledLookAndFeels()) {

if ("Nimbus".equals(info.getName())) {

javax.swing.UIManager.setLookAndFeel(info.getClassName());

break;

} catch (ClassNotFoundException ex) {

java.util.logging.Logger.getLogger(Ventana6.class.getName()).log(java.util.lo
gging.Level.SEVERE, null, ex);

} catch (InstantiationException ex) {

java.util.logging.Logger.getLogger(Ventana6.class.getName()).log(java.util.lo
gging.Level.SEVERE, null, ex);

} catch (IllegalAccessException ex) {

java.util.logging.Logger.getLogger(Ventana6.class.getName()).log(java.util.lo
gging.Level.SEVERE, null, ex);

} catch (javax.swing.UnsupportedLookAndFeelException ex) {

java.util.logging.Logger.getLogger(Ventana6.class.getName()).log(java.util.lo
gging.Level.SEVERE, null, ex);

// Crea y muestra la ventana

java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {

new Ventana6().setVisible(true); // Hace visible la ventana

});

// Declaración de variables de los componentes de la interfaz gráfica

private javax.swing.JButton jButton1; // Botón para mostrar el nombre

private javax.swing.JLabel jLabel1; // Etiqueta para indicar al usuario que


escriba su nombre

private javax.swing.JScrollPane jScrollPane1; // Panel de desplazamiento


para el área de texto

private javax.swing.JTextArea jTextArea1; // Área de texto para mostrar el


nombre

private javax.swing.JTextField jTextField1; // Campo de texto para que el


usuario escriba su nombre

DIAGRAMA DE CLASES
FUNCIONAMIENTO
CONCLUSIÓN

Se observa que el huerto escolar ha sido un espacio dinámico donde los estudiantes
no solo han aprendido sobre botánica y agricultura, sino también sobre
responsabilidad, trabajo en equipo y cuidado del medio ambiente. Además, ha
servido como una plataforma efectiva para integrar la educación práctica en el plan
de estudios, permitiendo a los estudiantes aplicar los conceptos aprendidos en el
aula a situaciones reales.
Al estudiante o al profesor que lea todo esto sabrá la importancia que es indagar en
temas dentro y fuera enfocada a sistemas computacionales, como creador tienes
oportunidad de experimenta cualquier tema de tu interés, y tener todo en orden
para próximos trabajos o proyectos universitarios e industriales.

REFERENCIAS
COTE, W. A. Ed. 1965. Cellular Ultrastructure of Woody Plants. Syracuse University Press. New York.
603 pp. CRONQUIST, A. 1984. Introducción a la Botánica. CECSA. México. 848 pp. CURTIS, J. 1976.
Introducción a la Citología Vegetal. Departamento de Enseñanza, Investigación y Servicio en
Fitotecnia. Universidad Autónoma Chapingo. Ediciones Patena A. C. Chapingo. 262 pp. CURTIS, J.
1986. Microtecnia Vegetal. Ed. Trillas. México.

También podría gustarte