BorderLayoutBoxedLayoutOpenLayout Maximum textMedium textSmall text
Wir wählen unsere Open Source Produkte sehr sorgfältig aus.

Open Source

Ergänzend zu den Microsoft Technologien setzen wir auch Open Source Technologien ein. Wir wählen die Komponenten, Tools und Produkte dabei jedoch sehr sorgfältig aus. Nur was uns wirklich begeistert wird bei der Entwicklung unserer Software berücksichtigt.

Subversion und Tortoise

Wir setzen in unseren eigenen Projekten für die SourceCode Verwaltung ausschließlich Subversion ein. Subversion hat den großen Vorteil, dass man immer und überall entwickeln kann, ohne mit einem Server verbunden sein zu müssen. Um in diesen Disconnected Modus zu wechseln, muss der Entwickler nichts tun. Lediglich für das Zurückspielen der eigenen Änderungen oder eine Aktualisierung des Source Codes ist eine Verbindung zum Server und ein entsprechender Datenabgleich notwendig.

Tortoise ist ebenfalls ein OpenSource Produkt, mit dem der Zugriff auf die Subversion Repositories ermöglicht wird. Tortoise integriert sich dabei direkt in den Windows Explorer, was bei der Arbeit sehr komfortabel ist. Zusätzlich zu Tortoise gibt es auch die Möglichkeit, die Sourcecodeverwaltung mit einem weiteren OpenSource Tool "AnkhSVN" direkt in die Entwicklungsumgebung Visual Studio zu integrieren. Alternativ gibt es dazu auch ein kommerzielles Produkt: "VisualSVN".

Testdriven.NET und N-Unit

Für unser Unit Testing verwenden wir Testdriven.NET und die N-Unit Bibliothek. Testdriven.NET integriert sich direkt in die Entwicklungsumgebung von Visual Studio und ermöglich das Starten und Debuggen von einzelnen Testfällen direkt aus dem Code heraus. In unserer Entwicklung sind Unit Tests nicht mehr wegzudenken.

Für anspruchsvolle Unit Tests benötigt man früher oder später auch sogenannte Mock Objekte, die das Verhalten anderer Komponenten, die nicht getestet werden sollen simulieren. Auch dafür gibt es Open Source Frameworks. Bisher implementieren wir unsere Mock Objekte aber lieber selbst.

Subsonic

Subsonic ist ein Data Access Framework, das sich sehr stark an der Datenbank orientiert. Es verfolgt den Ansatz, zuerst das Datenmodell zu entwickeln und daraus automatisch die Objekte für die Datenzugriffsschicht zu generieren. Der große Vorteil dieses Frameworks ist, dass nach jeder Änderungen der Datenbank ein einziger Mausklick genügt, um den Code der Datenzugriffsschicht entsprechend anzupassen.

Im Gegensatz zu Data Access Frameworks, die den Ansatz eines klassischen Object Relational Mappers verfolgen, ist Subsonic sehr einfach zu konfigurieren und kann innerhalb von Minuten für neue Projekte verwendet werden.
Subsonic hat seinen Ursprung im Active Record Design Pattern aus der Ruby on Rails Technologie. Die Templates, die den Code generieren können angepasst werden, so dass auch andere Ansätze, wie z.B. das Repository Pattern möglich sind.

Wir verwenden Subsonic vor allem deshalb, weil wir i.d.R. zuerst das Datenmodell entwickeln und daraus dann die Data Access- und Domainlogik ableiten. Der Vorteil dieser Vorgehensweise ist, dass man beim DB Design keine Kompromisse machen muss und weniger Code bzw. gar kein Code für das Mapping von Tables zu Objects schreiben muss.

DotNetNuke

DotNetNuke ist ein Content Management System, das auf .NET Technologie basiert und auch für die Erstellung der mindtecture Website zum Einsatz kam. Der grosse Vorteil von DotNetNuke ist die erweiterbare modulare Architektur. Dies hat dazu geführt, dass es einen grossen Markt von Skins (graphische Design Templates) und Modulen (erweiterte Programm- und Datenbankfunktionalität) gibt. So kann für Zusatzanforderungen ein bestehendes Modul eingekauft oder ein neues Modul entwickelt werden. DotNetNuke wird beispielsweise bereits mit einem Webshop Modul ausgeliefert, das bereits eine Integration von PayPal und Kreditkartenzahlung ermöglicht.

Ein weiterer Vorteil ist die Möglichkeit, mit nur einer Installation gleich mehrere Portale zu betreiben, die alle als autarke Einheiten verwaltbar und adminstrierbar sind. Daher gibt es mittlerweile schon sehr viele Marktplätze und andere Portale, die mit DotNetNuke realisiert wurden.

DotNetNuke hat auch ein paar kleine Nachteile, wie z.B. die anfängliche Ladezeit, wenn die Anwendung das erste Mal gestartet wird, oder die fehlende Unterstützung von Mehrsprachigkeit bei 1:1 Übersetzungen innerhalb der gleichen Website. Jedoch gibt es für alle genannten Punkte einfache Lösungen, die wir ihnen gerne aufzeigen.

Copyright 2008-2011 by axvision GmbH - Monitored by SiteUptime