Spyder (Software)
# Spyder (Software)

Spyder ist eine plattformübergreifende, integrierte Open-Source-Entwicklungsumgebung (IDE) für die wissenschaftliche Programmierung in der Programmiersprache Python. Spyder lässt sich mit einer Reihe von Paketen des wissenschaftlichen Python-Stacks integrieren, darunter NumPy, SciPy, Matplotlib, Pandas, IPython, SymPy und Cython, sowie mit anderer Open-Source-Software. Es wird unter der MIT-Lizenz veröffentlicht und ist Teil der Anaconda-Distribution.

Ursprünglich 2009 von Pierre Raybaut als "pydee" erstellt und entwickelt, wird Spyder seit 2012 von einem Team wissenschaftlicher Python-Entwickler und der Community gepflegt und kontinuierlich verbessert.

Spyder ist mit Erst- und Drittanbieter-Plugins erweiterbar und beinhaltet Unterstützung für interaktive Werkzeuge zur Dateninspektion. Spyder verwendet Qt für seine GUI und ist dadurch plattformübergreifend unter Windows, auf MacOS über MacPorts und auf Linux-Distributionen wie Arch Linux, Debian, Fedora, Gentoo Linux, openSUSE und Ubuntu verfügbar.

## Merkmale

Zu den Merkmalen gehören:

* ein Editor mit Syntax-Hervorhebung, Introspektion, Code-Vervollständigung
* Unterstützung für mehrere IPython-Konsolen
* die Möglichkeit, Variablen von einer GUI aus zu untersuchen und zu bearbeiten
* ein Hilfefenster, das automatisch oder bei Bedarf Rich-Text-Dokumentation zu Funktionen, Klassen und Methoden abrufen und wiedergeben kann
* ein mit IPdb verbundener Debugger zur schrittweisen Ausführung
* statische Code-Analyse, bereitgestellt von Pylint
* ein Laufzeit-Profiler, um Code zu benchmarken
* Projektunterstützung, die die gleichzeitige Arbeit an mehreren Entwicklungsmaßnahmen ermöglicht
* ein integrierter Datei-Explorer zur Interaktion mit dem Dateisystem und zur Verwaltung von Projekten
* eine „Suchen in Dateien“-Funktion, die eine vollständige Suche nach regulären Ausdrücken über einen bestimmten Bereich ermöglicht
* ein Online-Hilfebrowser, der es Benutzern ermöglicht, Python und Paketdokumentation innerhalb der IDE zu durchsuchen und anzuzeigen
* ein Verlaufsprotokoll, das jeden in jede Konsole eingegebenen Benutzerbefehl aufzeichnet
* eine interne Konsole, die eine Selbstprüfung und Kontrolle über den eigenen Betrieb des Spyder ermöglicht.

## Plugins

Verfügbare Plugins sind:

* Spyder-Unittest, das die Unit-Test-Rahmenwerke Pytest, Unittest und Nose mit Spyder integriert
* Spyder-Notebook, das die Anzeige und Bearbeitung von Jupyter-Notebooks innerhalb der IDE ermöglicht
* Spyder-Reports, die die Verwendung von Literate programming ermöglicht
* Spyder-Terminal, das die Möglichkeit bietet, plattformübergreifende Systemshells innerhalb von Spyder zu öffnen, zu steuern und zu verwalten
* Spyder-Vim (in Entwicklung), enthält Befehle und Abkürzungen, die den Texteditor Vim emulieren
* Spyder-Autopep8, das den Code automatisch an den Standard-PEP-8-Codestil anpassen kann
* Spyder-Line-Profiler und Spyder-Memory-Profiler zur Erweiterung der eingebauten Profiling-Funktionalität für eigene Testreihen und die Messung der Speichernutzung.
