Integrierte Entwicklertools

PyCharm bietet eine umfassende Sammlung an sofort einsatzbereiten Tools. Dazu gehören unter anderem ein integrierter Debugger und Testrunner; ein Python-Profiler; ein integriertes Terminal; die Integration bekannter VCS, integrierte Datenbank-Tools; Möglichkeiten zur Remote-Entwicklung mittels Remote-Interpreter; ein integriertes SSH-Terminal; die Integration von Docker und Vagrant.

Visueller Debugger

PyCharm stellt umfangreiche Möglichkeiten zum Debuggen Ihres Python/Django- und JavaScript-Codes zur Verfügung:

  • Platzieren Sie direkt im Editor Haltepunkte und definieren Sie die Stoppbedingungen
  • Beobachten Sie kontextbezogene lokale Variablen und benutzerdefinierte Überwachungspunkte, einschließlich komplexer Objekte, und bearbeiten Sie Werte in Echtzeit

Erfahren Sie mehr über den Debugger auf der Seite zum Python-Debugger.

Inline-Debugger

Bei einem Inline-Debugger werden alle Live-Daten des Debuggers direkt im Editor angezeigt, wobei die Variablenwerte in das Look-and-feel des Editors integriert sind. Die Variablenwerte können direkt neben ihren Verwendungen im Quellcode betrachtet werden.

Step into My Code

Mit „Step into My Code“ konzentrieren Sie sich ausschließlich auf Ihren eigenen Code: Der Debugger bleibt innerhalb Ihres Codes und überspringt Bibliotheken.

Mehrprozess-Debugging

PyCharm kann Anwendungen debuggen, die mehrere Python-Prozesse starten (z. B. Django-Anwendungen, die nicht im Modus --no-reload ausgeführt werden, oder Anwendungen, die diverse andere Webframeworks mit einer ähnlichen Herangehensweise an das automatische Neuladen von Code verwenden).

„Run/Debug“-Konfigurationen

Jede Ausführung eines Skriptes, eines Tests oder des Debuggers erstellt eine separate „Run/Debug“-Konfiguration, die zu einem späteren Zeitpunkt bearbeitet und verwendet werden kann. Die Run/Debug-Konfigurationen können über die Projekteinstellungen mit dem ganzen Team geteilt werden.

Führen Sie Ihren Code aus

Ausführbar in jeder Python-Umgebung

Sie können eine beliebige Python-Datei ausführen. Klicken Sie einfach mit der rechten Maustaste auf die gewünschte Datei und wählen Sie „Run <your script>“ aus.

PyCharm ermöglicht die mühelose Konfiguration Ihrer bevorzugten Python-Umgebung für Ihr Projekt – ob lokal, per Remote-Interpreter oder mit virtualenv.

Interaktive Konsole

Die interaktiven Konsolen für Python und Django, die in PyCharm verwendet werden können, bieten viele Vorteile gegenüber den Standardkonsolen: Syntaxprüfung mit Inspektionen in Echtzeit, automatisches Abgleichen von Klammern und Anführungszeichen und natürlich Codevervollständigung. Beide Konsolen können zusammen mit lokalen Interpretern und Remote-Interpretern verwendet werden.

Integriertes Terminal

Dieses Feature macht PyCharm zu einer vollwertigen Python-IDE. Es ist nicht nötig, die IDE während des Entwicklungsprozesses zu verlassen. Das lokale Terminal ist für Windows, Linux und macOS verfügbar.

Vollständige Python-Unterstützung

PyCharm unterstützt alle wichtigen Python-Implementierungen einschließlich Python 2.x und 3.x, Jython, IronPython, PyPy und Cython. Die IDE bietet folgende Funktionen:

  • Syntaxhervorhebung, Fehlerüberprüfung und Codeformatierung
  • Kontextabhängige Codevervollständigung
  • Navigation im Code und Strukturansicht
  • Schnelle Suche nach Verwendungen und Refaktorierungstools
  • Codeinspektionen und vieles mehr

Unit-Tests

PyCharm unterstützt die Integration aller gängigen Python-Testframeworks: Doctests, Nose und Attest.

Führen Sie Ihre eigenen Tests mit PyCharm aus: Testdateien, einzelne Testklassen, Methoden oder alle Tests innerhalb eines Verzeichnisses. Sehen Sie sich die Ergebnisse im grafischen Testrunner mit Ausführungsstatistiken und einfacher Navigation im Testcode an.

Code-Coverage

PyCharm arbeitet mit Coverage.py zusammen, dem Standardtool zur Ermittlung von Code-Coverage in Python-Programmen. Das Tool überwacht Ihr Programm, merkt sich, welche Teile des Codes ausgeführt wurden, und analysiert dann die Quelle, um potenziell ausführbaren Code zu identifizieren, der nicht ausgeführt wurde. Die Ergebnisse werden Ihnen für spätere Analyse und einfache Navigation im Code in einem übersichtlichen, visuellen Format dargestellt.

Python Profiler

Behalten Sie dank der Integration von Python Profiler und der Unterstützung von yappi und cProfile die volle Kontrolle über Ihren Code. Das farbige Diagramm für Funktionsaufrufe zeigt Ihnen detaillierte Statistikdaten und aufgenommene Snapshots an. Sehen Sie sich den zusammenfassenden Bericht an und wechseln Sie von der Ausführungsstatistik direkt zur Funktion in Ihrem Python-Code.

BDD für Python

BDD ist jetzt in Form von Behave und Lettuce für Python verfügbar. Schreiben Sie für Menschen lesbare Texte, die das Verhalten Ihrer Anwendung beschreiben. PyCharm unterstützt Sie mit hilfreichen Tools für Installation und Konfiguration, Run-Konfiguration und IntelliSense für BDD-Frameworks.

Visualisierung gleichzeitiger Threads

Mit der Visualisierung gleichzeitiger Threads erlangen Sie die volle Kontrolle über Ihre Multithread-Anwendungen. Sie können Ihre Python-Anwendung im „Concurrency Diagram“-Modus ausführen und über einen gesonderten Button den Zustand der Threads innerhalb Ihres laufenden Prozesses in Echtzeit als Diagramm darstellen.

Versionsverwaltungssysteme

Dank der einheitlichen Unterstützung von Git, SVN, Mercurial, Perforce und anderen Versionsverwaltungssystemen können Sie lokale Änderungen verwalten und komplexe Branch-Operationen durchführen. Sämtliche mühsamen Aufgaben (Hinzufügen, Entfernen und Löschen von Dateien) werden automatisch ausgeführt.

Die folgenden Funktionen stehen Ihnen bei der Arbeit mit einem beliebigen VCS zur Verfügung:

  • Integrierte Änderungslisten – fassen Sie Ihre Änderungen für mehr Übersichtlichkeit in mehreren Listen zusammen
  • Zwischengespeicherte Änderungen (Shelve) – legen Sie bestimmte Änderungen für spätere Wiederherstellung beiseite
  • Ansicht der Repository-Änderungen – zeigt die Commits anderer Teammitglieder an
  • Ansicht für ankommende Änderungen – zeigt die Änderungen am Code an, die noch nicht in Ihre lokale Kopie übernommen wurden
  • Benachrichtigung über veraltete Änderungen – warnt, wenn die Datei, an der Sie arbeiten, seit Ihrer letzten Synchronisierung verändert wurde

Lokaler Verlauf

PyCharm verfolgt alle Änderungen nach, die an den Quelldateien vorgenommen werden, und rettet Ihren Code bei ungewolltem Verlust oder ungewollten Änderungen, selbst wenn diese von einer anderen Anwendung verursacht wurde. Sie können jederzeit den Verlauf einer bestimmten Datei oder eines Verzeichnisses einsehen und zu einer früheren Version zurückkehren.

Integriertes grafisches Merge-Tool

Mit dem integrierten grafischen Merge-Tool lösen Sie sämtliche Konflikte schnell und intuitiv. Die lokal vorgenommenen Änderungen werden während der Eingabe in der Randleiste hervorgehoben, was eine intuitive Navigation im Code und ein schnelles Widerrufen einzelner Änderungen mit nur zwei Klicks ermöglicht.

Diff-Ansicht

Mithilfe der integrierten grafischen Diff-Ansicht können Sie Änderungen zwischen zwei Dateien mühelos nachverfolgen und ansehen und zwei Versionen einer Datei (lokale Änderungen oder Unterschiede zwischen lokalen Dateien und ihren Revisionen im Remote-Repository) vergleichen.

Datenbank-Tools

Bearbeiten von Datenbanken

Greifen Sie direkt über die IDE auf Oracle, SQL Server, PostgreSQL, MySQL und andere Datenbanken zu. Mit PyCharm können Sie SQL-Code bearbeiten, Daten durchsuchen, Schemata und Tabellendaten verändern, Abfragen ausführen und sogar Schemata mit UML-Diagrammen analysieren.

SQL-Injection

SQL-Code kann in andere Sprachen eingebettet oder im SQL-Editor bearbeitet werden. Dazu bietet die IDE Syntaxhervorhebung, intelligente Codevervollständigung, Codeanalyse in Echtzeit, Codeformatierung und Navigation.

Unterstützung für SQLAlchemy

PyCharm bietet intelligentes Code-Insight für die SQLAlchemy-Bibliothek, was relevante Codevorschläge und automatische Vervollständigung ermöglicht. Zur Unterstützung dieses praktischen SQL-Toolkits gehören auch SQLAlchemy-Diagramme, die Ihre Datenstruktur visualisieren.

PyCharm Professional Edition stellt Ihnen die neuesten Funktionen von DataGrip bereit, um Ihre Arbeit mit Datenbanken zu erleichtern. Erfahren Sie mehr über die Features von DataGrip

Möglichkeiten für Remote-Entwicklung

SSH Remote-Tools

Über die integrierte SSH-Konsole können Sie via SSH eine Verbindung zu einem Remote-Computer herstellen und diverse Aktionen ausführen. Zusätzlich dazu können die SSH-Remote-Tools so konfiguriert werden, dass sie mit einem einzigen Klick direkt aus der IDE gestartet werden.

Remote-Interpreter

Die Verwendung eines Remote-Interpreters anstelle eines lokalen Python-Interpreters erlaubt Ihnen das Ausführen, das Debugging und Profiling Ihrer Anwendung in einer produktionsnahen Umgebung oder einer Testumgebung auf einem echten oder einem mit Vagrant oder Docker virtualisierten Server.

Vagrant

Vagrant ist ein praktisches Tool, das nativ in PyCharm integriert ist und Sie bei der Erstellung von reproduzierbaren Entwicklungsumgebungen unterstützt. Dieses Tool ermöglicht das Teilen der VM-Einstellungen für die Entwicklung durch Weitergabe eines einfachen Skriptes. Andere Entwickler können dann mit dem Vagrant-Befehl „up“ eine identische Maschine starten.

Docker

PyCharm ermöglicht die Arbeit mit Docker, einer beliebten offenen Plattform für verteilte Anwendungen für Entwickler und Systemadministratoren. Sie können einen Python-Interpreter im Docker-Container angeben und ihn in Ihrem Projekt für die Ausführung, das Debugging und Profiling Ihrer Anwendungen verwenden.

Integration von Issue-Trackern

Wenn Ihre ToDo-Liste Teil eines Issue-Tracking-Systems ist, können Sie PyCharm so einrichten, dass Sie die Probleme direkt über die IDE bearbeiten können. Geben Sie einfach den Server Ihres Issue-Trackers an – schon können Sie:

  • aus einer gefilterten Liste Aufgaben zur Bearbeitung auswählen
  • VCS-Änderungen automatisch in entsprechenden Aufgaben zusammenfassen
  • Commits im VCS durchführen, wobei der Aufgabenname bzw. die Aufgaben-ID automatisch eingetragen wird
  • zwischen Aufgaben wechseln, ohne den Kontext der IDE zu verlieren (geöffnete Editor-Tabs, Haltepunkte usw.)

PyCharm unterstützt folgende Systeme für Bug-Tracking: Atlassian JIRA, JetBrains YouTrack, Lighthouse, Pivotal Tracker, GitHub, Redmine und Trac.