Zum Inhalt springen

Just about .Net

It's just a blog about .Net…

Ich finde es immer äußerst unbefriedigend wenn ich eine gute Präsentation vollgestopft mit Rhetorik und Wissen sehe, aber drei Tage später kaum noch die wichtigsten darin genannten Infos aufzählen kann.

Deshalb hier der Vortrag von der DDC noch einmal in Form eines detailierten Handouts, dem man auch Informationen entnehmen können sollte wenn man nicht dabei war.
weiter lesen…

Zwei Tage DDC liegen hinter mir. Übermüdet und voller neuer Eindrücke sitze ich nun in einem Regionalexpress nach Dresden der hoffentlich auch irgendwann einmal ankommt, vielen Dank Deutsche Bahn für die bescheidene Anbindung.

Gefühlte 95% der Zeit war ich dabei als üblicher Teilnehmer unterwegs. Die einzigen Unterscheidungsmerkmale gegenüber der Allgemeinheit waren das rote Bändchen am Namensschild und der große Aufdruck „Speaker“ auf meinem Poloshirt. Die Insignien der Konferenzelite wenn man so will, welche schnellere Kontaktaufnahme und einige detailliertere Einblicke in die Organisation garantierten.

weiter lesen…

Einer der viel gesprochenen Leitsätze des Testens ist: “Finger weg von privaten Membern”. Der Gedanke hinter dieser Aussage ist einleuchtend, denn je mehr Aussagen ich in einem Test über die Implementierung mache, desto höher die Wahscheinlichkeit, dass ich ihn später anpassen muss oder er fehl schlägt.

Nichts desto trotz, kann man sich durch den Zugriff auf private Member gelegentlich viel Arbeit sparen wenn es darum geht einen Test aufzusetzen und außerdem hilft es manchmal sogar beim Aufspüren von Bugs. Weiterhin ist es teils unumgänglich auch Dinge zu testen die als internal gekennzeichnet sind und demnach theoretisch nicht vom Testprojekt identifiziert werden könnten. weiter lesen…

In einem früheren Post hatte ich einmal beschrieben wie Data-Driven-Tests mit NUnit umgesetzt werden können. Damals habe ich bereits darauf hingewiesen, dass so etwas theoretisch auch mit MS Test und dem Visual Studio möglich ist, was ich nun erläutern möchte.

weiter lesen…

Ich habe mal wieder etwas geschrieben bzw. an etwas mit geschrieben. Gemeinsam mit einem guten Freund habe ich den Artikel “Mit Geschichten zum Erfolg” in der aktuellen Dotnetpro verfasst. Ziel dessen war einmal ohne die direkte Betrachtung von Scrum, Kanban und Co. über die Möglichkeiten aufzuklären die sich ergeben wenn man Anforderungen auf eine etwas andere Art als den typischen Use Case, nach ISO oder Sätzen wie: “The X shall Y” verfasst.

Natürlich geht es dabei nicht zuletzt auch um Agilität und natürlich ist dieses Thema nicht unbedingt brand heiß oder absolut neu, aber uns ging es viel mehr darum die für den Entwickler wichtigen Kernfaktoren bei diesem Vorgehen hervorzuheben.

Zumindest aus meiner Sicht ist Agilität zu einem gewissen Grad zum Modewort verkommen, dass nicht selten genutzt wird wenn das Wort Chaos besser angebracht währe. Ein Prozess wird meiner Meinung nicht dadurch agil, dass die Anforderungen nur tröpfchenweise zu den Entwickler durchsickern. Er wird auch nicht dadurch agil, dass man jeden Morgen 15 Minuten im Kreis sitzt und über Probleme redet. Er wird agil, weil tatsächlich auf Veränderungen eingegangen werden kann ohne all zu große Reibungsverluste befürchten zu müssen und dafür ist es notwendig, dass das Team zu jeder Zeit den aktuellen Ist-Zustand der Software kennt und sich ebenso bewusst über den zukünftigen Soll-Zustand ist.

Kern dessen ist daher die User Story. Ganz einfach weil sie alle notwendigen Infos auf einen Blick darstellt ohne dabei ein bestimmtes Vorwissen vorauszusetzen. Sie ist einfach zu verstehen und verbietet die nachträgliche Diskussion darüber nicht. Im Gegenteil, sie fördert die Diskussion auf eine normalsprachliche Weise ohne das Geschwurbel, dass ich regelmäßig lesen muss weil irgend wer versucht sich nach allen Seiten hin abzusichern.

Genau diese Aussage ist mir aber in anderen Veröffentlichungen, Bücher ausgenommen, die ich bisher gelesen habe etwas zu kurz gekommen und so haben Stefan und ich uns darüber her gemacht das zentrale Wissen dazu zu destilieren und einmal ohne den Verweis auf Scrum usw. zusammen zu fassen, in der Hoffnung gleichzeit erklären zu können warum jedes einzelne Teammitglied davon profitiert.

Bei WPF bzw. Silverlight gibt es grundsätzlich die gleiche „Problematik“ wie bei Windows Forms bis .Net 4.0: Diagramme gehören einfach nicht zum Lieferumfang des Frameworks. Deshalb muss man in der Regel zu Dritt-Herstellern greifen, bindet die Charts von Windows Forms ein oder sucht sich kostenlose Alternativen.

In diesem Artikel soll es zunächst um die letztere Fassung gehen wobei in dem Fall zwischen Dynamic Data Display und dem WPF- bzw. Silverlight Toolkit gewählt werden kann. Nachfolgend werden die beiden Fassungen aus den Toolkits näher beschrieben. weiter lesen…

In meinem Neujahrspost habe ich schon angedeutet, dass ich dieses Jahr wohl viel unterwegs sein werde und so steht jetzt fest, dass ich im Mai auf der .Net Dev Con zu MS Test sprechen werde.

Dort werde ich unter dem Titel: “MS Test -  der missverstandene Stiefbruder” im Grunde das auseinander nehmen, was ich die letzten zwei Jahre im Umgang mit der Visual Studio Test Integration und weitestgehend freien Alternativen erlebt habe. Genauer geht es mir dabei um die Lücke zwischen Unit Tests mit NUnit, Moq und Resharper, gegenüber den System- und Integrationstests mit Visual Studio, samt Pex und Moles.

Ich habe dabei nicht vor auf irgend welchen Designschwächen von was auch immer welchen Tools herum zu hacken. Viel mehr geht es mir darum die unterschiedlichen Sichtweisen gegenüber zu stellen die hinter den einzelnen Frameworks stehen, deren wichtigste Features zu erläutern und die Gründe zu nennen warum sie verwendet werden. Ob sie ihre Arbeit gut machen muss dann jeder selbst entscheiden.

Ich hoffe also auf eine rege Teilnahme und freue mich auf jeden den ich am 15. Mai willkommen heißen darf.

Eine der wichtigsten Gründe Prism einzusetzen ist die Möglichkeit die GUI in Regionen aufzuteilen. Jede dieser Regionen wird als Content-, Items- o.ä. Control repräsentiert und kann dann zur Laufzeit mit 1 (ContentControl) bis n (Items- oder TabControl) UserControls bestückt werden. Auf diese Weise wird die eigentliche Benutzeroberfläche lose gekoppelt und kann ohne größeren Aufwand an neue Anforderungen angepasst werden.

Ein immer wiederkehrendes Problem stellt für mich dabei die Nutzung des ItemsControl dar. Jenes zeigt die einzelnen Views in Form einer Liste an, was unter Umständen etwas langweilig und verwirrend wirken kann. Aus diesem Grund bietet es sich an, jene Views durch Überschriften oder Abgrenzungen voneinander zu trennen, aber wie kriegt man das hin? Kann man es evtl. auch ohne Prism verwenden? Und vor allem wie schafft man es mit möglichst wenig Aufwand? weiter lesen…

Das Semester neigt sich dem Ende, die Vorlesungen sind fast alle gehalten und so ist jetzt eine gute Möglichkeit den Studenten ein wenig Wissen abseits des eigentlichen Lehrplans zu vermitteln.

Dank Professor Nestler hatte ich auf diese Weise wieder die Möglichkeit einen Spezialvorlesung an der HTW-Dresden zu halten. Nach dem ich mich beim letzten Mal im Juni vor allem der agilen Entwicklung und dem automatisierten Test gewidmet hatte, ging es dieses Mal um Pattern, Clean Code und Prism. weiter lesen…

Ja, ja, ich weiß ich bin äußerst spät dran. Bis ich bei der Auswertung der Zugriffsstatistiken sehen musste, dass es in den letzten Tagen eine ganze Reihe Hits auf mein Neujahrspost 2011 gab, hatte ich eigentlich gar nicht vor etwas zu posten. Aber wenn sich die paar Leute, die sich auf diese Seite verirren schon damit zufrieden geben alte Glückwünsche zu lesen bekomme ich automatisch ein schlechtes Gewissen.

Dies soll nun aber nicht bedeuten, dass ich aufhöre zu schreiben! Der inaktive Monat Dezember resultierte vorallem daraus, dass ich sehr viel zu tun habe und hatte. So betreue ich neben der regulären Arbeit seit Oktober ein Projektseminar an der HTW – Dresden bei dem ich mit 7 Studenten in zwei SCRUM Teams Webapplikationen auf Basis von Azure und .Net entwickle. Weiterhin werde ich am 16. Januar eine Vorlesung zu Patterns und Clean Code an der gleichen Hochschule halten, deren Folien hier verfügbar sein werden.

Im Februar sollten dann auch zwei Artikel zu Specflow und agilem Anforderungsmanagement in der Dotnetpro erscheinen die ich (mit)geschrieben haben, während ich aktuell mit einem Kollegen am nächsten Artikel zu MS Test sitze. Last but not least, ist zur Zeit ein großer Zertifizierungsreigen bei mir mit UML und MCTS. Wobei ich mich mittlerweile zertifizierter UML Profressional nennen darf.

Viele Gründe also um die Zeit für das Blog etwas zu verringern, vor allem wenn man zwischendurch auch einmal so etwas wie Freizeit haben will. Dennoch werde ich versuchen wieder auf mein Post pro Woche zu kommen. Natürlich immer mit der Maßgabe, dass dieses auch Sinn macht. Sinnloses gibt es im Netz ja schon zur Genüge…

Demnach bedanke ich mich bei allen, die mein Blog noch nicht aus ihrem RSS-Reader geschmissen haben, freue mich über jeden neuen Besucher und wünsche allen einen so guten Start ins neue Jahr wie ich ihn habe :)