Saltar a contenido

Semana 1 - Pacto pedagógico

El pacto pedagógico es un acuerdo que se establece entre el docente y los estudiantes al inicio de un curso, con el fin de establecer las normas, expectativas, responsabilidades y compromisos de todas las partes involucradas en el proceso de enseñanza-aprendizaje.

Introducción a Programación Orientada a Objetos y Java

Objetivos de la Clase

  • Comprender los fundamentos de la Programación Orientada a Objetos (POO) y su importancia en el desarrollo de software.
  • Configurar un entorno de desarrollo para programar en Java.
  • Analizar la estructura básica de un programa en Java y escribir un primer programa funcional.

1. Conceptos Básicos de POO

La Programación Orientada a Objetos (POO) es un paradigma de programación que organiza el código en torno a "objetos" que representan entidades del mundo real. Estos objetos combinan datos (atributos) y comportamientos (métodos) para modelar sistemas de manera modular y reutilizable. Los principales conceptos de POO son:

1.1. Clases

Una clase es una plantilla o blueprint que define las propiedades y comportamientos de un tipo de objeto. Por ejemplo, una clase Coche puede describir atributos como color o marca y métodos como acelerar() o frenar().

public class Coche {
    String color; // Atributo
    String marca;

    void acelerar() { // Método
        System.out.println("El coche está acelerando.");
    }
}

1.2. Objetos

Un objeto es una instancia de una clase. Representa una entidad específica creada a partir de la plantilla de la clase. Por ejemplo, un objeto de la clase Coche podría ser un coche rojo de marca Toyota.

Coche miCoche = new Coche(); // Creación de un objeto
miCoche.color = "Rojo";
miCoche.marca = "Toyota";
miCoche.acelerar();

1.3. Encapsulamiento

El encapsulamiento consiste en ocultar los detalles internos de una clase y exponer solo lo necesario a través de métodos públicos. Esto se logra usando modificadores de acceso (private, public) y métodos getters y setters.

public class Coche {
    private String color; // Atributo privado

    public String getColor() { // Getter
        return color;
    }

    public void setColor(String color) { // Setter
        this.color = color;
    }
}

1.4. Herencia

La herencia permite que una clase (subclase) herede atributos y métodos de otra clase (superclase), promoviendo la reutilización de código. Por ejemplo, una clase Camion puede heredar de Vehiculo.

public class Vehiculo {
    String marca;
    void mover() {
        System.out.println("El vehículo se mueve.");
    }
}

public class Camion extends Vehiculo {
    int capacidadCarga;
}

1.5. Polimorfismo

El polimorfismo permite que objetos de diferentes clases sean tratados como objetos de una clase común, generalmente a través de herencia o interfaces. Por ejemplo, un método puede aceptar un Vehiculo pero trabajar con un Coche o un Camion.

Vehiculo miVehiculo = new Coche(); // Polimorfismo
miVehiculo.mover();

2. Configuración del Entorno de Desarrollo

Para programar en Java, es necesario configurar un entorno de desarrollo adecuado. Los componentes principales son el JDK (Java Development Kit) y un IDE (Entorno de Desarrollo Integrado).

2.1. Instalación del JDK

El JDK incluye las herramientas necesarias para compilar y ejecutar programas en Java. Sigue estos pasos:

  1. Descarga del JDK:
  2. Visita el sitio oficial de Oracle o adopta un JDK de OpenJDK (recomendado: OpenJDK 17 o superior).
  3. Descarga la versión adecuada para tu sistema operativo (Windows, macOS, Linux).

  4. Instalación:

  5. Sigue las instrucciones del instalador para tu sistema operativo.
  6. Configura la variable de entorno JAVA_HOME para apuntar al directorio de instalación del JDK.

  7. Verificación:

  8. Abre una terminal y ejecuta:
    java -version
    javac -version
    
  9. Deberías ver la versión instalada del JDK.

2.2. Instalación de un IDE

Un IDE facilita la escritura, depuración y ejecución de código. Opciones populares incluyen: - IntelliJ IDEA (recomendado para principiantes y profesionales). - Eclipse (gratuito y ampliamente usado). - Visual Studio Code (con extensiones para Java).

Pasos para IntelliJ IDEA: 1. Descarga e instala IntelliJ IDEA Community Edition desde el sitio oficial. 2. Crea un nuevo proyecto Java y configura el JDK instalado. 3. Escribe y ejecuta tu primer programa.

2.3. Configuración Básica

  • Asegúrate de que el proyecto esté configurado para usar el JDK instalado.
  • Crea un archivo .java (por ejemplo, Main.java) para comenzar a programar.

3. Estructura Básica de un Programa en Java

Un programa en Java sigue una estructura definida que incluye clases, métodos y un punto de entrada principal (main). A continuación, se detalla la estructura básica:

3.1. Componentes de un Programa

  • Clase: Todo programa en Java está contenido en una clase.
  • Método main: Es el punto de entrada del programa. Debe ser public, static, y devolver void.
  • Paquete: Organiza las clases en directorios lógicos (opcional para programas simples).

3.2. Ejemplo de Programa Básico

El siguiente código muestra un programa simple que imprime "¡Hola, mundo!" en la consola:

public class Main {
    public static void main(String[] args) {
        System.out.println("¡Hola, mundo!");
    }
}

3.3. Explicación del Código

  • public class Main: Define una clase llamada Main. El nombre del archivo debe coincidir con el nombre de la clase.
  • public static void main(String[] args): Método principal que Java ejecuta al iniciar el programa.
  • System.out.println: Imprime texto en la consola, seguido de un salto de línea.

3.4. Compilación y Ejecución

  1. Compilar:
  2. Guarda el código en un archivo llamado Main.java.
  3. En la terminal, navega al directorio del archivo y ejecuta:
    javac Main.java
    
  4. Esto genera un archivo Main.class (bytecode).

  5. Ejecutar:

  6. Ejecuta el programa con:
    java Main
    
  7. Salida esperada: ¡Hola, mundo!

3.5. Convenciones de Codificación

  • Nombres de clases: Usa UpperCamelCase (por ejemplo, MiClase).
  • Nombres de métodos y variables: Usa lowerCamelCase (por ejemplo, miMetodo).
  • Indentación: Usa 4 espacios o una tabulación para mantener el código legible.

Ejercicios Prácticos

  1. Ejercicio 1: Escribe un programa que imprima tu nombre y edad en la consola.
  2. Ejercicio 2: Crea una clase Persona con atributos nombre y edad, y un método presentarse que imprima un mensaje como "Hola, soy [nombre] y tengo [edad] años".
  3. Ejercicio 3: Configura tu IDE y compila el programa "¡Hola, mundo!" desde el IDE.