Didáctica de la Informática

28 diciembre 2005

Ruby vs. Java

Ruby es el lenguaje que hemos seleccionado aquí como el más apropiado para enseñar Programación.

Java es el lenguaje que hemos seleccionado en el Ciclo Formativo de Grado Superior en Desarrollo de Aplicaciones Informáticas como el más apropiado para enseñar Programación en la asignatura Programación en Lenguajes Estructurados.

Veamos ahora cómo se comportarían en un combate cuerpo a cuerpo estos dos «pesos pesados» de la Programación:

  1. «Hola Mundo»

    • En Ruby:
    • puts "Hola Mundo"
    • En Java:
    • public class HolaMundo {
      public static void main(String[] args) {
      System.out.println("Hola Mundo");
      }
      }

  2. Calcular el enésimo término de la sucesión de Fibonacci:

    • En Ruby:
    • def fibrec(n)
      case n
      when 0..1 then n
      else fibrec(n - 1) + fibrec(n - 2)
      end
      end

      print "Introduce el número: "
      num = gets.to_i

      puts "El número que corresponde a la secuencia es: " + fibrec(num).to_s
    • En Java:
    • import java.io.*;

      class fiborecc {
      // Rosalía Gómez Rodríguez
      public static void main(String[] args) {
      int num;
      System.out.println("Introduce el numero");

      num = LeerEntero();

      System.out.println("El numero que corresponde en la secuencia es " + FibonacciRec(num));
      }

      static int FibonacciRec(int n) {
      if (n == 0)
      return 0;
      else if (n == 1)
      return 1;
      else
      return (FibonacciRec(n - 1) + FibonacciRec(n - 2));
      }

      static int LeerEntero() {
      try {
      return Integer.parseInt(Cadena());
      } catch (NumberFormatException e) {
      return Integer.MIN_VALUE;
      }
      }

      public static String Cadena() {
      InputStreamReader isr = new InputStreamReader(System.in);
      BufferedReader flujoE = new BufferedReader(isr);

      try {
      return flujoE.readLine();
      } catch(IOException e) {
      return null;
      }
      }
      }
No hay más preguntas, señoría.