Author:
Michael Morbach
Jan
28
Ich habe heute meinen Umstieg von Visual Studio 2008 auf Visual Studio 2010 Beta 2 gewagt. Hintergrund war, dass ich die Entwicklung des ArmyGen jetzt vorläufig erst einmal einstelle, da ich das Tool aufgrund der Bestimmungen von Games Workshop nicht so veröffentlich dürfte wie ich es ursprünglich wollte.
Direkt habe ich mich auch in ein neues Unterfangen geschmissen. Ich werde mich die nächste Zeit mehr mit WPF befassen und ein paar Kartenspiele implementieren, bevor ich dann letztendlich dazu kommen werde ein eigenes Kartenspiel zu entwickeln. Da auch bald meine Bachelorarbeit für mein Studienabschluss ansteht, passt es zeitlich auch grade sehr gut sich mit etwas zu befassen, was noch sehr neu ist und ggf. wird sich auch meine Bachelorarbeit mit WPF befassen.
Ich hoffe, dass mir der Umstieg auf Visual Studio 2010 mehr Unterstützung bei der Entwicklung von WPF Anwendungen bieten wird, was aber gleichzeitig auch bedeutet, dass alle meine Projekte in meinem SVN Repository nicht mehr mit Visual Studio 2008 kompatibel sein werden. Das heißt, dass ihr ( wenn ihr kein VS 2010 besitzt ) zwar die Sourcedateien noch runterladen könnt, aber ein eigenes VS2008 Projekt erstellen müsst.
Für meine Kartenspiele hab ich heute vorweg schon einmal einen “Randomizer” geschrieben, welcher einem “IShuffler” Zufallszahlen generiert, damit dieser wiederrum meine Karten mischt. IShuffler ist nur ein Interface für Mischalgorithmen, welches dann beispielsweise in einem Kartendeck eingebunden werden kann. Konkret implementiert habe ich bisher aber nur den “FisherYates” Mischalgorithmus, welcher mir aber auch schon als einer der effektivsten erscheint.
Die Implementierung der Klassen könnt ihr euch in meinem Repository ansehen.
Author:
Michael Morbach
Jan
14
Für einen Entwickler ist es im Alltag immer wichtig einen gut lesbaren und möglichst intuitiven Code zu schreiben. D.h. andere Entwickler sollten schnell verstehen können worum es geht und was welche Methode macht und das ggf. sogar ohne Dokumentation ( auch wenn diese natürlich unverzichtbar ist ). Optimal ist dies der Fall, wenn ein Methodenname so eindeutig ist, dass jeder weiß was sie macht.
Auf folgende Dinge sollten geachtet werden :
- Benutze keine Unterstriche oder ähnliche, nicht alphanumerische, Zeichen
- Benutze möglichst keine Wörter, welche in der Programmiersprache eingebettet sind
- Versuche einfach zu lesende Namen zu verwenden
- Verwende PascalCasing für Namespaces, Klassen, Typen und Methoden sowie Properties
- Verwende camelCasing für Parameter in Methoden und für lokale variablen
DON’T !
public myClass
{
public void method( myclassname valuename )
{
//logik
}
}
DO !
public MyClass
{
public void Method( MyClassName valueName )
{
//logik
}
}
Author:
Michael Morbach
Jan
14
Ich habe heute mal ein kleines Update in meinem SVN Repository gemacht und dort die beiden Patterns “Strategy” und “Observer” aus dem Buch “Head First Design Patterns” ( oder zu deutsch – “Entwurfsmuster von Kopf bis Fuss” ) hinzugefügt.
Ich habe sie allerdings nicht in Java, wie im Buch, geschrieben sondern nach C# übersetzt und als Konsolenanwendungen hinterlegt. Für all diejenigen die grade erst anfangen sich mit Design Patterns auseinanderzusetzen ist es auf jeden Fall einen Blick wert ! Es ist bestimmt auch eine Bereicherung für diejenigen unter euch, denen meine selbst gestalteten Beispiele nicht die nötige Erleuchtung gebracht haben.
Ich werde demnächst auch das Head First Beispiel zum “Decorator Pattern” in C# bereit stellen.
Viel Spaß damit !
Head First Strategy Pattern Beispiel C#
Head First Observer Pattern Beispiel C#
Alle meine hinterlegten Beispiele zu Design Patterns
UPDATE :
Habe jetzt auch das Decorator Pattern ins SVN hochgeladen. Viel Spaß damit !
Head First Decorator Pattern Beispiel C#