Auftragsprogrammierung - Bereiche
Je nach Art der Software-Lösung wird diese auf einem lokalen Rechner, Smartphone, Server, Mikrokontroller oder auf mehreren Hardware-Komponenten laufen. Beispiele finden Sie auf der nächsten Seite. Die hier genannten Bereiche sind keine Kategorien gleicher Ebene und vor allem als Ideengeber für die eigene Software gedacht.
Desktop-Anwendungen
Diese Anwendungen werden in der Regel mit einem Setup oder Installer einmalig auf einem oder mehreren lokalen Rechnern installiert und dann dort ausgeführt. In vielen Fällen ist dies die ideale Lösung. Beispiele für eigene Projekte dieser Art findet man auf SenPC.
Webanwendungen
Hier läuft die Software auf einem Server und lässt sich von den Anwendern durch den Besuch der Internetseite in einem normalen Browser bedienen. Auch wenn dies nicht ganz so komfortabel ist wie Desktop-Anwendungen (längere Reaktionszeiten, kein Zugriff auf das Ordnersystem) sind doch die Möglichkeiten ungleich größer als bei normalen, statischen Webseiten. Ein eigenes Beispiel von Webanwendungen ist VivaMusica.eu.
Smarphone-Apps
Manchmal soll die Anwendung von unterwegs mit mobilen Endgeräten genutzt werden können. Besonders die Integration von Telefon oder SMS, Videos oder Fotos oder von GPS- und Lagesensor Daten bieten interessante Möglichkeiten. Sie profitieren von meinen Erfahrungen bei der Entwicklung für Android und Windows Phone.
Webservices
Webservices sind quasi Webanwendungen, die nicht von menschlichen Benutzern sondern von Rechnern im Web aufgerufen werden und damit die ideale Schnittstelle bei der Integration mehrerer Bereiche in Ihre Software-Lösung.
Internet
Eine Software kann über das Internet (oder ein Intranet) Daten austauschen und so mit Benutzern oder anderer Software komunizieren. Genaueres darüber lesen Sie im Abschnitt Internet.
Datenbanken
Oftmals ist Software mit einer Datenbank verknüpft, um z.B. Personen, Artikel, Produkte, Rechnungen oder ähnliches zu verwalten. Mehr Infos und konkrete Anwendungsfälle gibt es im Abschnitt Datenbanken.
Schnittstellen
Viele Anbieter stellen so genannte APIs bereit, auf welche sich mit eigener Software zugreifen lässt. So lassen sich z.B. Bezahlungen über PayPal anbieten (siehe Beispiel in eigener Cadenzo-Software), individuelle Ebay-Anwendungen erstellen oder die Skype-Technologie nutzen.
Mikrokontroller
In letzter Zeit ist ein sehr interessanter, neuer Bereich in mein Tätigkeitsfeld hinzugekommen: Kostengünstige Mikrokontroller (z.B. Arduino) können in kleinen Robotern oder CNC-Maschinen Schrittmotoren und Servos steuern oder Messwerte von Sensoren lesen, verarbeiten und weiterleiten.