Autor Tema: ENTREGA:CU00638B métodos tipo función java  (Leído 2986 veces)

momo

  • Principiante
  • **
  • Mensajes: 64
    • Ver Perfil
ENTREGA:CU00638B métodos tipo función java
« en: 30 de Agosto 2014, 19:28 »
Bueno Aquí les dejo el ejercicio de la entrega  CU00638B el cual dice lo siguiente :



/*Considera estás desarrollando un programa Java donde necesitas trabajar con objetos de tipo Motor (que representa el motor de una bomba para mover fluidos).
 * Define una clase Motor considerando los siguientes atributos de clase: tipoBomba (int), tipoFluido (String), combustible (String).
 * Define un constructor asignando unos valores de defecto a los atributos y los métodos para poder establecer y obtener los valores de los atributos.
 * Crea un método tipo función que devuelva un booleano (true o false) denominado dimeSiMotorEsParaAgua() donde se cree una variable local booleana motorEsParaAgua de forma
 * que si el tipo de motor tiene valor 1 tomará valor true y si no lo es tomará valor false. El método debe devolver la la variable local booleana motorEsParaAgua.

Código: [Seleccionar]
public class Motor1
  {
      int tipoBomba;
      String tipoFluido,combustible;
     
      public Motor1()
      {
          tipoBomba=0;
          tipoFluido="";
          combustible="";
       
       }
      public void setBomba(int valorBomba)
       {
           tipoBomba=valorBomba;
        }
      public void setFluido(String valorTipoFluido)
        {   
            tipoFluido=valorTipoFluido;           
        }
      public void setCombustible(String valorCombustible)
      {
          combustible=valorCombustible;
       }
     
       public boolean dimeSiMotorEsParaAgua()
       {
           boolean motorparaagua=false;         
           if(tipoBomba==1)
           {
               motorparaagua=true;
               System.out.println("Motor para agua es " + motorparaagua);
           }else if(tipoBomba==0)
           {   
             
               System.out.println("Motor para agua es " + motorparaagua );
           }
           return motorparaagua;
       
       }
       public int getBomba(){return tipoBomba;}
       public String getFluido(){return tipoFluido;}
       public String getCombustible(){return combustible; }
    }


NOTA: Por favor dime si cumplo con lo que pide el ejercicio es que no lo entendí muy bien. ahhh   y me dicen si tengo algún otro detalle como las declaraciones de las variables  que siempre tengo algunos problemas con ella
« Última modificación: 02 de Septiembre 2014, 07:52 por Mario R. Rancel »

dongo

  • Intermedio
  • ***
  • Mensajes: 177
    • Ver Perfil
Re:ENTREGA:CU00638B
« Respuesta #1 en: 31 de Agosto 2014, 11:25 »
Hola en cuanto a sintáctica esta totalmente correcto.

Por otro lado, en la semántica fallas en algunos puntos, por ejemplo:

  • La variable motorparaagua -> Para que estuviera de acuerdo al consenso entre desarrolladores, debería ser: motorParaAgua

Después en los métodos getters y setters fallas en la definición del nombre también fallas.

A ver tu a los atributos los has llamado tipoBomba y tipoFluido, hasta aquí bien. Pero cuando creas los getter y setters, nombras a estos getBomba, getFluido, setBomba, setFluido. Esto no se adapta a la especificación que java y desarrolladores avanzados recomiendan.

La recomendación es que los métodos getter y setter se llamen igual que el atributo al cual están asociados, precedidos por la palabra set o get según sea el caso y utilizando camel case(Primera letra en mayúsculas de cada palabra).

Por lo tanto si tu has llamado a los atributos  tipoBomba y tipoFluido, para que tu código se adapte a los estándares, sus métodos getters y setters respectivos, deberían llamarse getTipoBomba(), getTipoFluido(), setTipoBomba(...), setTipoFluido(...).

Esto ahora mismo a tu nivel no tiene mucha importancia, pero en el futuro, si te metes a trabajar con algún framework(hibernate, jsf, spring, ...) te van a exigir que tengas esos métodos y ademas con esa convención de nombres.

Si esto te cuesta mientras estas desarrollando, yo te recomiendo que tengas en una libretita todas estas normas de la convención  de nombres:
  • nombres de clase, interface, enum -> Todas las primeras letras de cada palabra que la componen en mayúscula(camel case).
  • nombres de variables, nombres de atributos y nombres de método -> primera palabra minúsculas, siguientes empiezan por mayúscula.
  • nombres de constantes -> todas las letras en mayúsculas.
Y no se si me dejo alguna... En fin, tras acabar el ejercicio te recomiendo que lo repases y veas que estas normas se cumplen, poco a poco iras haciéndolo de forma automática.

Bueno un saludo!

momo

  • Principiante
  • **
  • Mensajes: 64
    • Ver Perfil
Re:ENTREGA:CU00638B
« Respuesta #2 en: 31 de Agosto 2014, 18:21 »
Muchas Gracias Amigo y si lo anotare siempre son esos los detalles que me cuestan

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".