Buenas noches Jose Luis
El 28 de octubre de 2009 20:38, Jose Luis Gonzalez Pisa
<jlgonza...@gmail.com> escribió:
Estoy haciendo el diagrama de secuencia de un escenario (valga la
redundancia) en donde el actor envía un mensaje a la clase mayor (en
nuestro caso, Bisher, que es la empresa en la cual estamos
implementando el software) y esta clase necesita llamar a una clase
control, la pregunta es:
Ese mensaje (o mas bien, metodo) tiene que llamar al constructor de la
clase control o se crea una nueva operacion para poder llamarlo? o...
Ninguna de las anteriores?
Por organización deberá crear un método que podrá ser llamado desde el mismo constructor. Por ejemplo, si lo ha notado, el código autogenerado en la creación de Paneles o en general cualquier clase gráfica, genera un método denominado "initComponents" y este es llamado desde el constructor, quedando algo como:
public class MiPanel{
public MiPanel(){
initComponents();
}
private void initComponents(){
//creación de los componentes a agregar en el panel
}
}
De manera que usted podrá hacer algo como:
public class MiClase{
public MiClase(){
metodoNecesario();
}
public void metodoNecesario(){
//todo lo que necesite
}
}
Y en la clase que lo llame:
public class MiOtraClase{
public void metodoDePrueba(){
MiClase m = new MiClase(); //note que con este llamado está ejecutando directamente el metodoNecesario de la calse MiClase
}
}
O:
public class MiClase{
public MiClase(){
}
public void metodoNecesario(){
//todo lo que necesite
}
}
Y en la clase que lo llame:
public class MiOtraClase{
public void metodoDePrueba(){
MiClase m = new MiClase();
m.metodoNecesario();
}
}
Sugiero usar la segunda opción, de manera que el diagrama de secuencia quedaría como:
MiOtraClase -- public void metodoNecesario() --> MiClase
Bueno, imaginándonos las lineas de vida y todas esas cositas :D
La anterior pregunta me obliga a realizar una nueva (Que solo será
necesaria de responder si debo llamar la clase control mediante el
constructor), Lo que sucede es que no aparece en la lista de
operaciones disponibles del mensaje y me pareció muy riesgoso crear
una nueva operacion sin saber...
Tiene razón, el diagrama de secuencia del plugin de UML de NetBeans tiene esa falencia, en realidad no permite hacer llamados a un constructor, solo permite llamar métodos directamente, por lo que lo mejor es trabajar con métodos y dejar al constructor libre de operaciones. Sin embargo, conceptualmente el llamado al constructor es igualmente válido.
¿Que debo hacer? Digame dotorrr...
Veo que el análisis que ha hecho va por buen camino, así que simplemente continúe su labor.
pdt: Ya vi la risa de Miguel al ver que hasta ahora estoy haciendo el
diagrama de secuencia, pero es que especialmente el escenario que
estoy tratando de realizar tiene bastante dificultad :( (Podria
decirse es la esencia de la aplicacion) Por eso mismo deseo dar pasos
seguros.
Nooo, no me reí casi, digamos mas bien que me preocupé un poco.
De antemano muchas gracias...
De postmano muchas de nadas. Espero haber aclarado el tema.
Hasta luego,
--
Miguel Cubides
Ingeniería de Sistemas
Universidad Nacional