Endlich ist es soweit!
Das neue iOS von Apple kommt und ich bin schon wahnsinnig gespannt drauf. Es kommt in einem neuen Design mit einer ganz neuen Farbpalette und steht für iPhones ab der Version 4 zur Verfügung. Das Video zur siebten Version vom iOS kann man sich hier anschauen und verspricht so einiges.
Ich zumindest freu mich jetzt schon auf den 18. September :)
Freitag, 13. September 2013
Die ApplicationException im .NET Framework
Wozu wurde eigentlich die ApplicationException im .NET Framework eingeführt und wer sollte diese nutzen?
Sinn und Zweck dieser Exception war urspünglich alle selbst geschriebenen Exceptions von der ApplicationException ableiten zu lassen. So konnte man in einem try-catch Block einfach unterscheiden, ob eine Ausnahme aus der eigenen Anwendung oder aus dem .NET Framework geschmissen wurde.
Leider wurde dieses Konzept schnell wieder von Microsoft selbst über den Haufen geworfen, indem direkt aus dem Framework heraus schon ApplicationExceptions geworfen werden. So ist es zum Beispiel möglich beim Nutzen des Namespaces Reflection oder auch beim Laden eines FixedDocuments eine ApplicationException zu bekommen.
Sinn und Zweck dieser Exception war urspünglich alle selbst geschriebenen Exceptions von der ApplicationException ableiten zu lassen. So konnte man in einem try-catch Block einfach unterscheiden, ob eine Ausnahme aus der eigenen Anwendung oder aus dem .NET Framework geschmissen wurde.
Leider wurde dieses Konzept schnell wieder von Microsoft selbst über den Haufen geworfen, indem direkt aus dem Framework heraus schon ApplicationExceptions geworfen werden. So ist es zum Beispiel möglich beim Nutzen des Namespaces Reflection oder auch beim Laden eines FixedDocuments eine ApplicationException zu bekommen.
Donnerstag, 20. Juni 2013
Mit MEFedMVVM zur WPF Anwendung
Ich nutze nun schon seit geraumer Zeit das Framework Cinch von Sacha Barber um meine Anwendungen zu entwickeln. Cinch selber macht sich MEFedMVVM zu nutze um die Bindung zwischen View und ViewModel zu erstellen.
Mit dem Framework ist es leicht für die Design Zeit die gebundenen Klassen auszutauschen und das Testen wird durch die Schnitstellen sehr vereinfacht.
Hier die Links:
Mit dem Framework ist es leicht für die Design Zeit die gebundenen Klassen auszutauschen und das Testen wird durch die Schnitstellen sehr vereinfacht.
Hier die Links:
Dienstag, 18. Juni 2013
Command Line Args mit MEFedMVVM
Wie bekommt man eigentlich Command Line Argumente mit MEFedMVVM in sein ViewModel? Die Argumente kommen ja wie üblich in WPF der StartUp Methode der App Klasse mit.
Es gibt zwei Wege:
Es gibt zwei Wege:
- Entweder man nutzt die Argumente der StartUp Methode und weißt diese einem Service des Containers zu.
ICommandLineArgs service = ViewModelRepository.Instance.Resolver.Container.GetExport<ICommandLineArgs>().Value;
- Oder man greift ganz einfach auf die Methode System.Environment.GetCommandLineArgs() zu. Das hat den Vorteil, das es nicht nötig ist, in der StartUp Methode die Argumente zuzuweisen.
Nutzt man aber trotzdem einen eigenen Service, der intern die System.Environment.GetCommandLineArgs() nutzt, kann man diesen Service, wie gewohnt, seinem ViewModel übergeben. Für die Tests kann dann ganz einfach ein Test Service geschrieben werden, um die Argumente für die Testfälle vorzugeben.
Sonntag, 16. Juni 2013
Lesen um zu lernen
Jeden Tag schreitet die Entwicklung ein Stückchen vorran. Immer auf dem aktuellen Stand zu sein, ist nicht immer leicht. Clean Code Developer rät deshalb sechs Fachbücher im Jahr zu lesen. Wenn man nun mal überlegt, wie viel Fachbücher kosten, kann das schnell mal ins Geld gehen. Nehmen wir mal an ein Buch kostet 60 Euro und sollen sechs im Jahr lesen. Das wären schon mal 360 Euro im Jahr. Dabei gibt es immer wieder Bücher, bei denen schnell auffällt, dass das Buch für einen selbst nicht geeignet ist. Das heißt man würde sich, um die Anzahl sechs auch wirklich zu lesen, nochmal ein bis zwei Bücher extra kaufen. Und so landet man schnell bei kosten zwischen 400 und 500 Euro im Jahr.
safaribooksonline.com kann die Geldbörse entlasten. Für gut 240 Euro im Jahr, kann man eine viele viele Bücher online und auf mobilen Geräten lesen. Es gibt dort Fachbücher ohne ende und man kann sich zehn Bücher im Monat anschauen. Außerdem ist eine Volltextsuche über alle Bücher möglich, was einem das Suchen bei Problemen extrem vereinfacht.
Für 35 Euro monatlich bekommt man sogar einen komplett Zugang, in dem so viele Bücher gelesen werden können, wie man möchte.
Für die mobilen Geräte gibt es sogar die Möglichkeit die Bücher offline zu lesen!
Reinschauen lohnt sich in jedem Fall. Für 15 Tage kann man kostenfrei alles ausprobieren!
safaribooksonline.com kann die Geldbörse entlasten. Für gut 240 Euro im Jahr, kann man eine viele viele Bücher online und auf mobilen Geräten lesen. Es gibt dort Fachbücher ohne ende und man kann sich zehn Bücher im Monat anschauen. Außerdem ist eine Volltextsuche über alle Bücher möglich, was einem das Suchen bei Problemen extrem vereinfacht.
Für 35 Euro monatlich bekommt man sogar einen komplett Zugang, in dem so viele Bücher gelesen werden können, wie man möchte.
Für die mobilen Geräte gibt es sogar die Möglichkeit die Bücher offline zu lesen!
Reinschauen lohnt sich in jedem Fall. Für 15 Tage kann man kostenfrei alles ausprobieren!
Donnerstag, 13. Juni 2013
Nachtrag zu: Mauszeiger im Sourcecode setzen
Wie ich ja schon beschrieben hatte, ist es möglich den Cursor aus dem Sourcecode heraus zu setzen. Allerdings ist dabei zu beachten, dass dies bedeutet, dass das setzen der Eigenschaft Cursor am WPF Control keine Auswirkung mehr hat. Erst wenn man die Eigenschaft wieder auf null setzt, wird die Cursor Eigenschaft des Controls wieder berücksichtigt.
Dementsprechend sollte mein Beispiel viel eher so aussehen:
private void OnIsBusyChanged(object sender, bool isBusy)
{
if (isBusy)
Mouse.OverrideCursor = Cursors.Wait;
else
Mouse.OverrideCursor = null;
}
So wird die Anwendung, wenn sie in den Busy Modus versetzt wird, den Wait Cursor anzeigen. Ansonsten den Cursor, den das WPF Control vorgibt.
Mittwoch, 12. Juni 2013
TFS for free
Mit dem Team Foundation Server von Microsoft können Projekte geplant und verwaltet werden. Sowohl eine Sourcecode Verwaltung, als auch einen Buildagent bringt er mit sich.
Auf der Seite tfs.visualstudio.com kann man diesen kostenfrei nutzen!
Folgend ein paar Argumente, warum man es einfach mal versuchen sollte:
Auf der Seite tfs.visualstudio.com kann man diesen kostenfrei nutzen!
Folgend ein paar Argumente, warum man es einfach mal versuchen sollte:
- Es können beliebig viele Projekte angelegt werden.
- Bei der Sourcecode Verwaltung kann sogar zwischen der Microsoft eigenen und Git gewählt werden.
- Agile Projektplanung wird vom TFS auch unterstützt.
- Tests können ausgeführt werden.
- Arbeiten in Teams bei der kostenfreien Variante mit bis zu fünf Personen.
Und alles was man braucht, ist eine Windows Live ID. Also ausprobieren lohnt sich!
Abonnieren
Posts (Atom)