Java - Programación Estructurada :)

 
Vista:
sin imagen de perfil

Programación Estructurada :)

Publicado por Jordi (135 intervenciones) el 29/05/2017 22:20:26
Hola a todos.
Vengo a plantear una serie de dudas que tengo sobre la al parecer tan aclamada programación estructurada, aplicada en Java por supuesto.

Primero: Un método Java es equivalente a la tan odiada sentencia de Visual goto? Lo digo porque aunque no he hecho Visual en mi vida, por como describen esa sentencia en los artículos de programación estructurada, me parece muy similar a los métodos en Java. De ser similares, porque goto se odia tanto y en cambio los métodos no, si en el fondo estos también hacen saltos de un sitio a otro del código?

Segundo: Según he leído, hay unos pioneros de la programación estructurada que decían algo como que un programa puede ser hecho perfectamente empleando las sentencias while e if, y que hay que evitar a toda costa usar por ejemplo sentencias como else if, goto... Ya que hacen el código más confuso. Si lo que acabo de decir es cierto, que hay de sentencias como for all o switch? Estas también hacen el programa más des estructurado? Es recomendable evitar el uso de else?

Tercero y Último: Cada lenguaje de programación estructura todo de una forma muy distinta. Por ejemplo java puede instanciar clases mientras otros lenguajes no. En caso de Java, tengo entendido que hacer
1
new Clase();
es un "pecado mortal", o que hacer
1
2
3
4
5
for(int i = 0; i < 10; i++){
int aux = 0; //<------- Esta sentencia.
System.out.println(aux);
 
}
lo mismo. Entonces, teniendo en cuenta que los anteriores ejemplos no pueden hacerse en según que lenguajes, cada lenguaje tiene sus propios "protocolos" ya estipulados para que un programa esté bien estructurado, o estos "protocolos" son generales para toda la programación y somos nosotros que los aplicamos según la sintaxis de cada lenguaje?

La verdad es que estoy muy confuso. Me gustaría aprender sobre esta técnica de programación pero en todos sitios leo lo mismo: Nada de static innecesario, nada de goto, hacer el programa flexible... Pero no he encontrado nada que hable sobre por ejemplo que hacer para hacer flexible el programa.
No os imaginais lo que me ayudaría una respuesta por breve que sea. Estoy al punto de no saber si añadir un ActionListener mediante
1
2
3
4
5
6
ActionListener al = new ActionListener(){
@Override
public void actionPerformed(ActionEvent e){ ... }
 
}
ObjetoCualquiera.add(al);
o si hacer una clase que aplique el actionListener e implementarla al objeto... Y todo esto por querer hacer el puñetero código más estructurado.

Muchas gracias :)
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder