|

Écrivez
à AILES ! |

Retour
vers les blagues |
|
|
« Hello World »
optimisé
|
|
Voilà un délire pour initié. Après
avoir découvert comment programmer
"Hello World"...
on peut vous demander la même chose en java.
Votre première réponse pourrait être
quelque chose d'aussi simple que :
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, world!");
}
}
Mais si vous voulez un code plus évolutif,
si vous voulez tout "optimiser"...
alors vous pouvez vous mettre à utiliser des designs patterns
(modèles de conception) dans tous les sens et... prier (en
en Java), pour
que cela marche ! |
"Hello World" en java avec
des patterns :
public interface MessageStrategy
{
public void sendMessage();
}
public abstract class AbstractStrategyFactory
{
public abstract MessageStrategy
createStrategy(MessageBody mb);
}
public class MessageBody
{
Object payload;
public Object getPayload() {
return payload;
}
public void configure(Object obj) {
payload = obj;
}
public void send(MessageStrategy ms) {
ms.sendMessage();
}
}
public class DefaultFactory
extends AbstractStrategyFactory
{
private DefaultFactory() {;}
static DefaultFactory instance;
public static AbstractStrategyFactory getInstance()
{
if (instance==null) instance =
new DefaultFactory();
return instance;
}
public MessageStrategy
createStrategy(final MessageBody mb)
{
return new MessageStrategy()
{
MessageBody body = mb;
public void sendMessage()
{
Object obj = body.getPayload();
System.out.println((String)obj);
}
};
}
}
public class HelloWorld
{
public static void main(String[] args)
{
MessageBody mb = new MessageBody();
mb.configure("Hello World!");
AbstractStrategyFactory asf =
DefaultFactory.getInstance();
MessageStrategy strategy = asf.createStrategy(mb);
mb.send(strategy);
}
} |
|