Softwarestack
Als Softwarestack (etwa „Softwarestapel“) oder Solution-Stack bzw. Lösungsstack (etwa „Lösungsstapel“), oft kurz als Stack bezeichnet, bezeichnet man eine Reihe von aufeinander aufbauenden Softwarekomponenten, die gemeinsam eine Plattform bilden.
Ein Stack setzt sich hierbei zusammen aus dem Betriebssystem, dem Webserver und der Laufzeitumgebung, der Programmiersprache, den Programmierwerkzeugen (z. B. IDE und Compiler), der Lösung für die Datenpersistenz (z. B. Datenbank), sowie Frameworks, Bibliotheken und Schnittstellen. Häufig eingesetzte Stacks werden oft mit einer Abkürzung bezeichnet.
Unter Full Stack wird die Gesamtheit all jener Stacks bezeichnet. Der Begriff wird hauptsächlich zur Beschreibung eines Softwareentwickler-Generalisten (Full Stack Developer) benutzt.
Beispiele
| Abkürzung | Betriebssystem | Webserver | Laufzeitumgebung | Datenpersistenz | Programmiersprache | IDE | Sonstiges |
|---|---|---|---|---|---|---|---|
| LAMP | Linux | Apache | Perl, PHP oder Python | MySQL oder MariaDB | Perl, PHP oder Python | ||
| LAPP | Linux | Apache | Perl, PHP oder Python | PostgreSQL | Perl, PHP oder Python | ||
| LNMP/LEMP | Linux | Nginx | Perl, PHP oder Python | MySQL, MariaDB | Perl, PHP oder Python | ||
| LLMP | Linux | Lighttpd | Perl, PHP oder Python | MySQL oder MariaDB | Perl, PHP oder Python | ||
| LYME | Linux | Yaws | Mnesia | Erlang | |||
| LYCE | Linux | Yaws | CouchDB | Erlang | |||
| GLASS | Linux | Apache | GemStone | Smalltalk | Seaside | ||
| LEAP | Linux | Eucalyptus, AppScale | Python | Python | |||
| XAMPP | Apache | PHP, Perl oder Python | MySQL oder MariaDB | PHP, Perl oder Python | |||
| MAMP | macOS | Apache | PHP, Perl oder Python | MySQL oder MariaDB | PHP, Perl oder Python | ||
| WAMP | Windows | Apache | PHP, Perl oder Python | MySQL oder MariaDB | PHP, Perl oder Python | ||
| NMP | Nginx | PHP | MySQL oder MariaDB | PHP | |||
| WIMP | Windows | IIS | MySQL oder MariaDB | PHP, Perl, Python | |||
| WISA | Windows, Windows Server | IIS | .NET | SQL Server | C#, F#, VB.NET | Visual Studio | ASP.NET |
| WINS | Windows, Windows Server | IIS | .NET | SQL Server | C#, F#, VB.NET | Visual Studio | |
| OpenACS | Linux oder Windows | AOLserver | PostgreSQL oder Oracle | Tcl, OpenACS | |||
| MEAN | Node.js | Browser | MongoDB | JavaScript, TypeScript oder Dart | Angular, Express.js | ||
| MERN | Node.js | Browser | MongoDB | JavaScript, TypeScript oder Dart | React.js, Express.js | ||
| SNAKEOIL | Linux oder Windows | Flask (Jinja2 und Werkzeug) | Python | MongoDB | Python | Docker (Software),
Traefik (Reverse Proxy) | |
| SMACK | Apache Mesos | JVM | Apache Cassandra + Apache Spark | Java | IntelliJ IDEA, Eclipse, NetBeans | Akka, Apache Kafka | |
| XRX | Browser | XML-Datenbank (BaseX, eXist, MarkLogic Server) | XML, xHTML, XQuery, XSLT, XForms | REST | |||
| BCHS[1] | BSD (OpenBSD) | Open BSD httpd | SQLite | C | |||
| JAM[2] | Browser | REST-API | JavaScript, Markup (HTML, CSS) | ||||
| Android | Android | Android Runtime (ART) | SQLite | Java, Kotlin | Android Studio | Android SDK | |
| Apple | macOS, iOS | macOS | Objective-C, Swift | Xcode | Cocoa | ||
| Xamarin | Windows, macOS, Linux, iOS, Android | Mono, .NET | SQLite | C#, F# | Visual Studio, MonoDevelop | ||
| PhoneGap | iOS, Android, Windows | Apache Cordova | SQLite | JavaScript, HTML, CSS | |||
| .Net-Framework | Windows, Azure | IIS | .NET | SQL Server; alle relationalen und nicht-relationalen Datenbanken | C#, F#, VB.NET | Visual Studio | ASP.NET, WinForms, WPF, UWP, WCF, WF |
| .NET Core/.NET | Windows, macOS, Linux, Azure | IIS, Apache, Nginx | .NET Core | SQL Server; alle relationalen und nicht-relationalen Datenbanken | C#, F#, VB.NET | Visual Studio | ASP.NET |
| SAFE | Azure | .NET Core | SQL Server; alle relationalen und nicht-relationalen Datenbanken | F# | Visual Studio | Suave, Fable, Elmish |
Weblinks
- Heuristiken zur Wahl des Software-Stacks Thomas Ruhroth & Kai Schmidt: How to Tech-Stack: Technologieauswahl für langlebige Projekte, in: Informatik Aktuell, 9. Januar 2024
- Software-Stack in: Computerweekly
Einzelnachweise
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.