Programmier(ge)hilfen

Software für die tägliche Arbeit als Programmierer...

Übersicht

Software wird mit Software entwickelt. Daher ist es für mich wichtig, einen Satz hilfreicher Programme zur Verfügung zu haben, um effektiv arbeiten zu können.

SciTE - Ein Editor für alle Fälle

SciTe (Open Source)

Programme werden immer noch in textueller Form erzeugt, daher ist der Text-Editor das wichtigste Werkzeug für einen Programmierer. Auch wenn die meisten Programmierer die meiste Zeit ihre Texte (Programmcode) in einer speziellen Entwicklungsumgebung tippen, ist es wichtig einen weiteren Editor für die Aufgaben / Texte außerhalb der Entwicklungsumgebung zu besitzen.

Für mich ist SciTE dieser oben beschriebene Text-Editor.

Ursprünglich war dieser Editor nur als Demo für das Editor-Control scintilla gedacht. Inzwischen hat sich diese Demo zu einem vollwertigen Editor entwickelt. Der Editor ist nicht mit einer Unzahl von Funktionen überfrachtet, sondern besticht mit schnellen Startzeiten und der Konzentration auf das Wesentliche, dem Editieren von Text. Durch das tolle Syntax-Highlighting und eine angenehme Tastaturbelegung werden Benutzer des Visual Studios sich sofort zu Hause fühlen.

Man kann mit dem Editor nicht nur programmieren:
Die Texte dieser Web-Seite sind mit diesem Editor erstellt worden.

Seit Version 2.23 ist eine Txt2Tags-Unterstützung eingebaut, die jedoch von Hand eingeschaltet werden muss. Dieses neue Feature vereinfacht das Schreiben der Texte dieser Web-Seite.

ditto - eine Multi-Zwischenablage

Ditto Projektseite (Open Source)

Eine Erweiterung für die Zwischenablage.

copy und paste-programming ist ein böses Schimpfwort in der Programmierer-Szene. Auch wenn man auf "copy und paste programming" verzichtet, ist die Zwischenablage ein wichtiges Hilfsmittel bei der Arbeit mit dem Computer. Das betrifft nicht nur Programmierer. Manchmal ist eine Zwischenablage nicht genug. Wenn man mehrere Dinge (Texte, etc.) von einer Stelle kopieren möchte muss am ständig zwischen den Programmen wechseln. Oder man muss Dinge wiederholen: Nach dem Motto das hatte ich doch gerade noch in der Zwischenablage.

In solchen Situationen kann Ditto helfen:

Das Programm merkt sich die letzten N (einstellbar) Einträge in der Zwischenablage. Über eine konfigurierbare Tastenkombination kann man alle Inhalte der Zwischenablage der letzten Zeit wieder herstellen. Die gespeicherten Inhalte der Zwischenablage stehen auch nach einem Neustart des Rechners weiterhin zu Verfügung.

Damit kann man mehrere Texte nacheinander in die Zwischenablage kopieren und anschließend woanders einfügen.

Windows 8.1
Ditto scheint unter Windows 8.1 Probleme mit der Fensterreihenfolge zu erzeugen.

doxygen

doxygen (Open Source)

Doxygen kann aus (entsprechend formatierten) Kommentaren im Quellcode eine fertige Dokumentation generieren.

Ich formatiere meine Kommentare in C++ so, dass ich mit doxygen eine externe Dokumentation generieren kann. So erhalte ich, mit einem geringen Mehraufwand, eine aktuelle Dokumentation. Der Mehraufwand beschränkt sich auf das Einhalten weniger formaler Regeln, die es doxygen ermöglichen die benötigen Information aus den Kommentaren zu extrahieren und mit dem Code in Verbindung zu bringen.

Mit diesem kleinen Anreiz sorge ich für einheitliche Kommentare in meinem Quellcode.

Das Ganze funktioniert nicht nur mit C++. Doxygen unterstützt auch C#, Python und andere. (Wobei die Python-Unterstützung nicht vollständig ist.)

process explorer

Process Explorer von Sysinternals (frei)

Der bessere Task-Manager.

Das Programm zeigt mehr Informationen (geladenen Dlls, offene Handles, ...) über die laufenden Prozesse an, als z.B. der Task-Manager.

Im Hauptfenster werden in einer Liste ausgewählter Informationen aller Programme angezeigt. Mit einem nicht modalen Dialog kann man zusätzlich alle Informationen eines Programms anzeigen lassen. (Kontextmenu: Properties...) Dies kann hilfreich sein, wenn man z.B. bei einem Programm nach Memory Leak sucht.

Sysinternals bietet neben dem Process Explorer weitere hilfreiche Tools (z.B. DebugView) an. Ein Blick auf den Download-Bereich ist nicht nur für Programmierer interessant.

Sysinternals ist inzwischen von Microsoft übernommen worden, die alte Seite wird inzwischen auf die entsprechende Microsoft Seite umgelenkt.

Total Commander

Total Commander (kommerziell)

Der einzig wahre Nachfolger des Norton Commanders. ;-)

Wenn man auf Dateiebene arbeitet muss man oft in 2 verschiedenen Verzeichnissen arbeiten. Z.B. wenn man Dateien von einem Verzeichnis in ein anderes kopiert.

Diese Arbeitsweite wird durch die 2 Fenster-Ansicht des Total Commanders optimal unterstützt.

TortoiseSVN

TortoiseSVN (Open Source)

Eine Quellcode-Verwaltung (Subversion) für das Kontextmenu im Windows Explorer.

Mit diesem Tool verwalte ich meinen privaten Sourcen und Texte. Auch die Texte dieser Web-Seite werden ebenfalls mittels TortoiseSVN in Subversion verwaltet.

Visual Studio Add-Ins

Seit der Version 2010 des Visual Studio ist es mit dem Extension Manager ganz einfach Add-Ins auszuwählen und zu installieren. (Menu: Tools / Extension Manager...)

Die Add-Ins werden meistens automatisch heruntergeladen und installiert.

Für Add-Ins, die auch in früheren Visual Studio-Version funktionieren, ist der Download-Link angegeben.

Die Tomate / Visual Assist

Whole Tomato Software, Inc. (kommerziell)

Die Tomate verbessert das Syntax Coloring, Navigation und die Suche nach Symbolen, etc.

Wenn man dieses Add-In für das Visual Studio .NET in der 30 Tage-Version ausprobiert, sollte man sich darüber im Klaren sein, dass man demnächst wieder ohne das Add-In arbeiten muss - hier hilft nur noch kaufen.

Achtung dieses Info ist natürlich sehr subjektiv. Aber ich kann es mir nicht vorstellen ohne dieses Add-In für das Visual Studio zu arbeiten.

Productivity Power Tools

Das Add-In erweitert das Visual Studio um: - bunte Tabreiter, - die es ermöglichen offene Dateien zu "pinnen" und sie so am Anfang der Dateiliste zu halten. - die mit der Farbe des Tabreiters signalisieren, zu welchem Projekt eine Datei gehört. - einen verbesserten Referenzen-Dialog. (Absolutes Killer-Feature für C# Programmierer. Der originale Dialog behindert aktiv das effektive Arbeiten!) - Solution Navigator. Integriert die Class View in den Solution Explorer. (Ist inzwischen in VS2012 integriert) - Presentation mode (PresentOn, PresentOff). Im "Quich Launch"-Fenster "PresentOn" eingeben und man hat eine Beamer geeignete Skalierung des Visual Studios.

Dieses Add-In ist ein Incubator für neue Visual Studio Features. Einige Features aus dem Add-In wurden bereits ein fester Bestandteil des Visual Studio 2012, dafür bekam das Add-In neu Features z.B. Quick Tasks und Color Printing.

PTVS Python Tools for Visual Studio

Python Tools for Visual Studio auf CodePlex

Das Add-In verwandelt das Visual Studio in eine Python Entwicklungsumgebung für CPython und IronPython.