Von Euch geschätzte Merkmale in Entwicklungsumgebungen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
BlackJack

@fermion: Zum letzten Punkt: IDE ist das Stichwort und das Problem. Man bräuchte dann für alles eine IDE. Simple Textkonsolen müssten irgendwie erkennen das man da jetzt gerade ein Stück Python eintippen will, und nicht Shell-Syntax, Perl, Ruby, oder sonstwas und das entsprechend formatieren. Das stelle ich mir in der Tat schwierig bis unmöglich vor.

Ich vermute mal wenn es so einen Präprozessor gibt für eine Sprache die so strikt ist, dann werden pragmatische Programmierer ganz einfach die Präprozessor + Compiler/Interpreter-Kombination zum Ausführen benutzen um die strikten Vorgaben zu umgehen. Für zwischengeschaltete Präprozessoren/Compiler um Sprachen anzupassen oder aufzuwerten gibt es ja Beispiele wie CoffeeScript für JavaScript oder Less und Sass für CSS.
fermion
User
Beiträge: 20
Registriert: Sonntag 9. März 2014, 16:54

Mittlerweile habe ich mich zu IDEs belesen.

Es scheint genau 2 IDEs an der Spitzenposition zu geben, darin sind sich die meisten Rezensenten einig:

PyCharm
Wing IDE

PyCharm beherrscht Reformatierung. Wing IDE nicht.

Das Debugging soll in Wing IDE erheblich besser sein.

PyCharm ist ausschließlich mit englischsprachigem Interface zu haben.
Für Wing IDE ist eine deutsche Lokalisierung verfügbar.
Python 3.3.4 | Windows 7 (64bit)
BlackJack

@fermion: Ich hätte ja Eclipse mit PyDev erwartet.

Und einen klassischen Debugger habe ich für Python bisher nur 2-3 mal gebraucht und das auch jeweils in Code der nicht „pythonisch” war, sondern so ein typisches 5+ Indexvariablen in drei verschachtelten Schleifen-Zeug, was man traditionell von den klassischen imperativen Sprachen kennt.

Alles andere liess sich immer einfach mit strategisch platzierten Logging oder ``print``-Ausgaben erschlagen. Wenn man tatsächlich Schrittweise durch ein Funktion gehen muss, ist die Funktion in Python in der Regel zu lang oder zu kompliziert.

Praktisch ist noch bei Webanwendungen wenn man bei einem Traceback die „Leiche” noch live untersuchen kann, aber das ist dann ja schon kein klassicher Debugger mehr und da hat eine IDE nichts mit zu tun.
fermion
User
Beiträge: 20
Registriert: Sonntag 9. März 2014, 16:54

Danke für Deine Bewertung der Bedeutung von Hilfsmitteln zum Debuggen.
Ich kann dazu naturgemäß noch nichts Eigenes zu beitragen.

Eclipse mit PyDev kam in diversen Rezensionen vor, wurde aber durch die Bank schlechter bewertet als PyCharm.
Beispiel:
http://www.jason-parks.com/artoftech/?p=658
Python 3.3.4 | Windows 7 (64bit)
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Du kannst ja alle alternativen mal ausprobieren und dir selbst ein Bild machen. Ich habe in inzwischen knapp 11 Jahren Python-Programmierung erst SciTE verwendet und nun seit langer Zeit schon Vim. Beide bieten keine großartige Autovervollständigung an, aber das finde ich auch nicht so nützlich. Ich experimentiere eh recht viel in der REPL und daher ist das was am Schluss in der Datei landet ja eh nur noch Fleißarbeit.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
fermion
User
Beiträge: 20
Registriert: Sonntag 9. März 2014, 16:54

Spannend wäre eine wissenschaftliche Studie zum Einfluss einer IDE auf Stil und Qualität des Codes.

Dazu müssten berufliche Programmierer dafür bezahlt werden für einen hinreichend langen Zeitraum das jeweils andere Werkzeug zu verwenden.
Die VIM-Liebhaber eine IDE und die IDE-Liebhaber VIM :)

Aber vielleicht gibt es auch noch viel bessere Settings?
Python 3.3.4 | Windows 7 (64bit)
BlackJack

@fermion: Ich denke ein grosses Problem dabei dürfte die Individualität der Versuchskaninchen sein. Ich stehe zum Beispiel persönlich mit Vim auf dem Kriegsfuss, was aber grundsätzlich nichts über den Editor und dessen Qualtät aussagt. Man müsste also schon sehr viele Programmierer dazu bringen umzusteigen und sicher oft erst einmal Produktivitätseinbussen in Kauf zu nehmen die durch die Reibungsverluste bei so einer Umstellung entstehen werden.

Und dann ist die Frage was denn die Einflussfaktoren sind bei denen sich eine IDE von einem guten Editor unterscheiden. Java möchte ich zum Beispiel nicht im Texteditor schreiben, da mag ich eine IDE die mir viel Boilerplate abnimmt. Bei Python gibt es vieles von dem Boilerplate nicht. Mein Editor kann zwar auch Quelltextschnippsel mit Platzhaltern einfügen, aber die Syntax ist so schlank das mir das kaum einen Vorteil bringt.

Statische Quelltextanalyse (soweit möglich) habe ich auch im Editor integriert und Autoformatierung könnte ich mir auch als Plugin nachinstallieren wenn ich das haben wollte.
Antworten