Software ist ein Satz von Anweisungen, Daten oder Programmen, die zum Betrieb von Computern und zur Ausführung bestimmter Aufgaben verwendet werden. Sie ist das Gegenteil von Hardware, die die physischen Aspekte eines Computers beschreibt. Software ist ein allgemeiner Begriff, der sich auf Anwendungen, Skripte und Programme bezieht, die auf einem Gerät ausgeführt werden. Sie kann als der variable Teil eines Computers betrachtet werden, während die Hardware der unveränderliche Teil ist.
Die beiden Hauptkategorien von Software sind Anwendungssoftware und Systemsoftware. Eine Anwendung ist eine Software, die einen bestimmten Bedarf erfüllt oder Aufgaben ausführt. Systemsoftware ist so konzipiert, dass sie die Hardware eines Computers steuert und eine Plattform bietet, auf der Anwendungen ausgeführt werden können.
Zu den anderen Softwaretypen gehören Programmiersoftware, die die Programmierwerkzeuge bereitstellt, die Softwareentwickler benötigen, Middleware, die zwischen Systemsoftware und Anwendungen angesiedelt ist, und Treibersoftware, die Computergeräte und Peripheriegeräte steuert.
Frühe Software wurde für bestimmte Computer geschrieben und zusammen mit der Hardware verkauft, auf der sie lief. In den 1980er Jahren begann man, Software auf Disketten und später auf CDs und DVDs zu verkaufen. Heute wird die meiste Software gekauft und direkt über das Internet heruntergeladen. Software kann auf den Websites der Anbieter oder der Anwendungsdienstleister gefunden werden.
Beispiele und Arten von Software
Unter den verschiedenen Kategorien von Software sind die folgenden am häufigsten anzutreffen:
Anwendungssoftware. Die häufigste Art von Software, die Anwendungssoftware, ist ein Computersoftwarepaket, das eine bestimmte Funktion für einen Benutzer oder in einigen Fällen für eine andere Anwendung ausführt. Eine Anwendung kann in sich geschlossen sein oder aus einer Gruppe von Programmen bestehen, die die Anwendung für den Benutzer ausführen. Beispiele für moderne Anwendungen sind Office-Suiten, Grafiksoftware, Datenbanken und Datenbankverwaltungsprogramme, Webbrowser, Textverarbeitungsprogramme, Softwareentwicklungswerkzeuge, Bildbearbeitungsprogramme und Kommunikationsplattformen.
Systemsoftware. Diese Softwareprogramme sind so konzipiert, dass sie die Anwendungsprogramme und die Hardware eines Computers steuern. Systemsoftware koordiniert die Aktivitäten und Funktionen der Hardware und Software. Darüber hinaus steuert sie den Betrieb der Computerhardware und stellt eine Umgebung oder Plattform für alle anderen Softwaretypen bereit. Das Betriebssystem ist das beste Beispiel für Systemsoftware; es verwaltet alle anderen Computerprogramme. Weitere Beispiele für Systemsoftware sind die Firmware, Computer-Sprachübersetzer und Systemdienstprogramme.
Treibersoftware. Diese Software, die auch als Gerätetreiber bezeichnet wird, wird oft als eine Art Systemsoftware angesehen. Gerätetreiber steuern die an einen Computer angeschlossenen Geräte und Peripheriegeräte und ermöglichen ihnen, ihre spezifischen Aufgaben zu erfüllen. Jedes Gerät, das an einen Computer angeschlossen ist, benötigt mindestens einen Gerätetreiber, um zu funktionieren. Beispiele hierfür sind die Software, die mit nicht standardisierter Hardware geliefert wird, einschließlich spezieller Game-Controller, sowie die Software, die Standardhardware wie USB-Speichergeräte, Tastaturen, Kopfhörer und Drucker ermöglicht.
Middleware. Der Begriff Middleware beschreibt Software, die zwischen Anwendungs- und Systemsoftware oder zwischen zwei verschiedenen Arten von Anwendungssoftware vermittelt. Middleware ermöglicht es beispielsweise Microsoft Windows, mit Excel und Word zu kommunizieren. Sie wird auch verwendet, um eine Fernarbeitsanforderung von einer Anwendung auf einem Computer mit einem bestimmten Betriebssystem an eine Anwendung auf einem Computer mit einem anderen Betriebssystem zu senden. Sie ermöglicht auch, dass neuere Anwendungen mit älteren arbeiten können.
Programmier-Software. Computerprogrammierer verwenden Programmiersoftware, um Code zu schreiben. Mit Programmiersoftware und Programmierwerkzeugen können Entwickler andere Softwareprogramme entwickeln, schreiben, testen und debuggen. Beispiele für Programmiersoftware sind Assembler, Compiler, Debugger und Interpreter.