.NET Blog   ·   .NET Casts   ·   .NET GUI Foren   ·   .NET BlogBook   ·   WPF Blogger   ·   visual studio one   ·   ASP.NET professional

  • ACHTUNG - NEUES BLOG

    Ab sofort steht unter http://devtyr.norberteder.com mein neues Blog zur Verfügung. Dieses Blog wird nicht weiter betreut, bleibt aber erhalten. Neue Eintr%auml;ge erfolgen nur mehr im neuen Blog. Kommentare werden ebenfalls nicht mehr behandelt. Wer weiterhin meinen Einträgen und Aktivitäten folgen möchte, möge bitte RSS-Feeds, Verlinkungen etc. an die neue Location anpassen.
Download .NET Essentials Installer
Trickkiste

Making of Community-Projects – Interview mit Norbert Eder

06.11.09 - .NET, Grundlagen, Base Framework, WPF, ASP.NET, Silverlight, Mobile Devices, Datenverwaltung, Visual Studio, Allerlei, Internet, Community
Beitrag von Norbert Eder
 Gregor Biswanger hat mich vor einigen Tagen zum Thema Making of Community-Projects interviewt. Dabei ist ein nettes Gespräch entstanden, welches seit gestern bei ihm zu lesen ist. Es stand die Frage im Raum, wie es denn zu Community-Projekten kommt und wie man denn diese schließlich aufbaut. Ein nettes Gespräch, wo es wohl noch massig weitere Dinge zu sagen gäbe.

Zum Interview
  Kommentar hinzufügen   |  0 Trackbacks   |  Permalink  |  Trackback-URL


.NET BlogBook wieder verfügbar

29.08.09 - Blog-Intern, .NET, Grundlagen, Base Framework, WPF, ASP.NET, Silverlight, Internet, Community
Beitrag von Norbert Eder
 Wie auch mein Blog waren einige meiner Websites lange Zeit nicht online (bzw. sind es teilweise noch immer). Dies wird sich nun - durch einen Wechsel - wieder ändern.

Den Anfang macht dotnet-blogbook.com. Die Site steht ab sofort wieder zur Verfügung - jedoch noch nicht alle Downloads. Alle BlogBooks bis inklusive Version 3 können herunter geladen werden. Die weiteren Ausgaben werden in den kommenden Tagen hinzugefügt und stehen dann wie gewohnt zur Verfügung.

Gerade zum BlogBook habe ich sehr viele Anfragen bekommen. Das Projekt wird weitergeführt und es wird auch wieder aktualisierte Versionen geben.
  Kommentar hinzufügen   |  0 Trackbacks   |  Permalink  |  Trackback-URL


Viele Beispiele zu Data Binding, MVVM, MVC und mehr

02.06.09 - .NET, Grundlagen, WPF
Beitrag von Norbert Eder
  Du suchst WPF-Beispiele zu Data Binding (Datenbindung), MVVM, MVC oder anderen Bereichen? .NET GUI bietet mittlerweile zahlreiche Beispiele zu diesem Thema und es werden mehr. Diese stehen als vollständige Solutions zum Download bereit: .NET GUI Downloads.

Zu den meisten Beispielen finden sich auch dazupassende Artikel, die Hintergrundwissen vermitteln.

Diese Liste wird laufend um neue Beispiele und Artikel erweitert und stellt mittlerweile einen guten Anlaufpunkt dar.

  Kommentar hinzufügen   |  0 Trackbacks   |  Permalink  |  Trackback-URL


Student BigDays 2009 – Packen wir’s an!

02.03.09 - .NET, Grundlagen, WPF, ASP.NET, Silverlight, Visual Studio, Internet, Community
Beitrag von Norbert Eder
 Student BigDays ist eine Roadshow an Österreichs Universitäten, wo Informationen und Know How über aktuelle Microsoft-Themen vermittelt werden. Das Ziel ist, Informationen außerhalb des Studiums zu vermitteln, also Dinge die nicht im aktuellen Lehrplan stehen.

An folgenden Fachhochschulen und Universitäten werden die Student BigDays 2009 Halt machen:
  • FH Salzburg
  • Universität Salzburg
  • FH Joanneum
  • Universität Innsbruck
  • FH Hagenberg
  • Johannes Kepler Universität Linz
  • Universität Salzburg

Die Teilnahme ist für alle Studenten kostenlos.

Weitere Informationen zu den Sessions, den Speakern etc. sind unter http://www.studentbigdays.at zu finden.

  Kommentar hinzufügen   |  0 Trackbacks   |  Permalink  |  Trackback-URL


Einfache Messungen der Performance

22.01.09 - .NET, Grundlagen
Beitrag von Norbert Eder
 Es ist schon lange her, da hatte ich im Beitrag Zeitmessung einfach gemacht auf die Klasse Stopwatch hingewiesen. Da nach wie vor sehr viele Entwickler diese Möglichkeit der sehr einfachen Messung nicht kennen, möchte ich nochmals darauf hinweisen.

Gerade beim Vergleich von Codestücken oder bei der Erhebung von Zeiten an bestimmten Stellen kann damit großer Aufwand eingespart werden und man erhält innerhalb kürzester Zeit Kennzahlen. Zusätzlich ist es damit einfach, ein eigenes Performance-Service zu implementieren, um an zentralen Stellen der Anwendung Messungen durchzuführen. Dadurch können auch im laufenden Betrieb Engpässe festgestellt werden.

  Kommentar hinzufügen   |  0 Trackbacks   |  Permalink  |  Trackback-URL


Coding Standards als wichtiges Instrument

07.01.09 - Entwicklung, Diskussionen, Qualitätsmgmt., .NET, Grundlagen
Beitrag von Norbert Eder
 Wichtigstes Ziel in der Softwareentwicklung ist es, Projekte zeitgerecht und qualitativ hochwertig abzuschließen. Damit dies auch funktionieren kann, bedarf es Coding Standards, die von allen Team-Mitgliedern eingehalten werden müssen.

Da es wieder Zeit wurde, die eigenen Coding Standards anzupassen, machte ich mich auf die Suche, um meinen Horizont diesbezüglich wieder etwas zu erweitern. Dabei stieß ich auf die Coding Standards Reference Documents von Clint Edmonson. Clint hat dabei grundlegende Coding Standards für VB.NET und C# aufbereitet und als Download zur Verfügung gestellt.

Folgende Themen werden behandelt:
  • Golden Rules
  • Formatting
  • Commenting
  • Capitatlization & Naming
  • Programming

Diese Dokumente stellen eine gute Grundlage für jeden Softwareentwickler, als auch für gesamte Teams dar. Im Idealfall werden Ergänzungen gemacht und als Standardlektüre für jeden Entwickler im Team verpflichtend vorgesehen.

Weiters empfiehlt es sich, die Coding Standards auch entsprechend zu kontrollieren, damit sie tatsächlich Anwendung finden. Dies kann in Reviews passieren.

Der eine oder andere mag an dieser Stelle vielleicht die Meinung vertreten, dass zuviel Einschränkung schlecht ist. Dem kann ich allerdings nicht zustimmen. Ein Team an Entwicklern bedarf eine Führung und auch Rahmenbedingungen innerhalb derer sie sich zu bewegen haben. Nur dann kann ein (hoffentlich) optimales Ergebnis verfolgt und erzielt werden.


  3 Kommentare - 1475 mal angesehen   |  0 Trackbacks   |  Permalink  |  Trackback-URL


Hilfe! Ich werde verändert!

22.12.08 - Entwicklung, .NET, Grundlagen, Security
Beitrag von Norbert Eder
 Im Artikel Ich werde beklaut! habe ich darüber geschrieben, wie einfach Ressourcen aus einer WPF-Anwendung entwendet werden können und warum es sich - aus meiner Sicht - nicht lohnt, diese Inhalte mit hohem Aufwand zu schützen.

Nun ist das Stehlen von Ressourcen (Layouts, Styles, Grafiken, etc.) wohl eine der häufigsten Arten, aber nicht die Schlimmste. Seltener, aber dennoch nicht zu unterschätzen ist es, wenn Software von Fremden bewußt verändert wird. Für viele Anwendungsbereiche mag das vielleicht kaum eine Relevanz haben, aber gerade im Security-Bereich kann dies äußerst unangenehme Folgen mit sich bringen. Aber wie kann man sich davor schützen?

Strong Named Assemblies


Der erste Ansatz ist, den eigenen Assemblies einen Strong Name zu verpassen. Die Identität der Assembly besteht hierbei aus ihrem Namen, der Versionsnummer und Informationen der Kultur (sofern diese gesetzt wurde) inklusive eines öffentlichen Schlüssels (Public Key), als auch einer digitalen Signatur. Dies ist ein einfacher Weg, der frei Haus durch .NET mitgeliefert wird, hat jedoch so seine Tücken als dass ein Strong Name sehr einfach entfernt werden kann. Danach kann die Software normal verwendet und auch verändert werden. Die veränderte Assembly kann zwar ohne Signatur nicht im den Global Assembly Cache (GAC) installiert werden, was aber in vielen Fällen auch nicht vorgesehen ist.

Nichts desto trotz sollte Strong Named Signing dennoch verwendet werden, da es doch eine zusätzliche Hürde darstellt und es daher für viele weniger attraktiv ist, die Software zu verändern. Alle Angreifer können damit allerdings nicht ausgeschlossen werden.

Wie vor Veränderung schützen?


Ein vollständiger Schutz ist nie möglich. Man kann es dem Angreifer aber erheblich schwerer machen. Es gibt zahlreiche Tools, die hier Abhilfe schaffen wollen. In diesem Zusammenhang werden oft Obfuscating-Tools genannt, die jedoch nicht vor Veränderung schützen. Andere Produkte fahren weit größere Geschütze auf. Eines davon ist CodeVeil. Dieses Tool bietet nicht nur Obfuscating-Mechanismen, sondern verschlüsselt zusätzlich auch MSIL. Weiters werden entschlüsselte Informationen nicht im selben Speicherbereich der Assembly geladen, wodurch eine Speicher-Dump erheblich erschwert wird.

Es gibt also durchaus Mechanismen, um sich bestmöglich zu schützen. Eine 100%ige Garantie wird es allerdings nie geben. Man kann also immer nur versuchen, einen Schritt vor den bösen Jungs zu sein bzw. es ihnen so schwer zu machen, dass die Attraktivität, die Software zu manipulieren, möglichst gering ist.

Wichtig ist zusätzlich, dass man sich als Entwickler über die Möglichkeiten der Angreifer informiert. Einen interessanten Einstieg bietet hier der Artikel Assembly Manipulation and C#/VB.NET Code Injection.

PS: Viele Tools unterstützen in den aktuellen Versionen weder WPF noch Silverlight. Hier bleibt zu hoffen, dass die Hersteller Mittel und Wege finden, uns Entwickler auch bei diesen Technologien mit Security zu unterstützen.


  Kommentar hinzufügen   |  0 Trackbacks   |  Permalink  |  Trackback-URL


Gewinne ein BASTA! Spring 2009 Ticket

25.11.08 - Grundlagen, WPF, Silverlight, Internet, Community
Beitrag von Norbert Eder
  Darf's ein Ticket für die Hauptkonferenz der BASTA! Spring 2009 sein? Auf .NET GUI gibt es ab sofort eines zu gewinnen!

Der Aufwand, um am Gewinnspiel teilzunehmen, ist sehr gering. So nimmt jeder teil, der bis 16. Januar 2009 einen How To-Beitrag schreibt. Natürlich ist es auch möglich, mehrere Beiträge zu schreiben - dadurch steigen auch die Chancen auf den Gewinn!

Der behandelte Themenbereich muss passend gewählt sein. D.h. alles aus dem Bereich Grafische Benutzeroberflächen unter .NET ist möglich. Dies inkludiert unter anderem
  • Windows Presentation Foundation
  • Silverlight
  • Windows Forms

Also am besten gleich mal einen Beitrag schreiben, um sicher am Gewinnspiel teilzunehmen!

Zur News
Zu den How To's

  2 Kommentare - 790 mal angesehen   |  0 Trackbacks   |  Permalink  |  Trackback-URL


.NET BlogBook geht in die 7. Runde

15.10.08 - Blog-Intern, .NET, Grundlagen, WPF, ASP.NET, Internet, Community
Beitrag von Norbert Eder
 Heute ist der Tag der Wahrheit. Es steht mittlerweile die siebte Ausgabe des .NET BlogBooks zur Verfügung.

Diese Ausgabe bringt eine Reihe an Neuerungen mit sich:
  • Es gibt aktuell kein gesamtes PDF mehr. Die einzelnen Teilbereiche wurden in einzelne Dateien verpackt. Damit bekommt jeder den Bereich, der in interessiert, Downloadgrößen und -zeiten werden dadurch minimiert.
  • Alles wurde in ein neues Layout verpackt. Damit wird sichergestellt, dass die Lesbarkeit nun besser gegeben ist und auch die Ergebnisse beim Druck positiver ausfallen.
  • Natürlich wurden auch neue Beiträge eingearbeitet.

Da dies einen relativ hohen Aufwand darstellt, steht zur aktuellen Zeit nur der Bereich Windows Presentation Foundation zur Verfügung. Die weiteren Teile werden im Laufe der kommenden Tage und der nächsten Woche nachgeliefert.

Auf jeden Fall würden wir uns über Rückmeldungen sehr freuen und hoffen, dass wir das erhaltene Feedback gut umsetzen konnten.

Weitere Informationen und Download-Möglichkeiten finden sich auf der Projekt-Homepage unter http://www.dotnet-blogbook.com

  3 Kommentare - 766 mal angesehen   |  0 Trackbacks   |  Permalink  |  Trackback-URL


Einstieg in NHibernate leicht gemacht

10.08.08 - .NET, Grundlagen, Datenverwaltung
Beitrag von Norbert Eder
 Hibernate ist mittlerweile kein unbekannter O/R Mapper mehr. Ursprünglich aus der Java-Welt, gibt es bereits seit langer langer Zeit auch eine Portierung für .NET, NHibernate genannt.

Auch bei mir laufen einige meiner Projekte erfolgreich auf NHibernate. Demzufolge bekomme ich immer wieder Anfragen diesbezüglich. Meist geht es darum, wie denn ein erstes Projekt (egal ob Demo-Anwendung oder Real-World-Applikation) gestartet werden kann.

Da NHibernate jetzt nicht unbedingt meinem Hauptfokus entspricht, hatte ich mich immer geweigert, einen kurzen Artikel diesbezüglich zu verfassen. Und wie es auch sein sollte, stieß ich - auf der Suche nach einer guten Einführung - auf folgenden Artikel, den ich NHibernate-Einsteiger nur wärmstens empfehlen kann:

Your first NHibernate based application

Darin wird sehr gut in einfachen Schritten erklärt, wie man eine erste Anwendung basierend auf NHibernate umsetzen kann. Die weiteren Schritte liegen dann wohl darin, sich einen eigenen entkoppelten Layer zu basteln, welcher für weitere Anwendungen eingesetzt werden kann.


  1 Kommentar - 1692 mal angesehen   |  0 Trackbacks   |  Permalink  |  Trackback-URL



Weiter