Editor/IDE OS übergreifend Pi freundlich?

  • Mahlzeit,


    ich ziehe dieses Thema mal aus einem anderen raus, da ich das Thema sehr interessant finde.

    Und zwar geht es um Editoren zum programmieren.

    Ich selber bin ja noch sehr frisch dabei und arbeite derzeit mit IDLE da es im Buch, welches ich gerade nutze empfohlen wird.


    Mir stellt sich die Frage, gibt es einen guten Editor den man sowohl auf dem Pi-, Linux und Windowssystemen nutzen kann?


    Welches sind eure/ist euer lieblings Editor und warum?

    Was stört euch an Editor XY?


    Würde mich freuen wenn hier ein paar Empfehlungen herraus kommen würden und diese ggf sachlich beurteilt werden.

    Gruß Mario

  • Hallo MarioBe,


    ich nutze für Programm-Entwicklungen meistens die IDE Geany (für fast alle Programmiersprachen, in denen ich programmiere), seltener TextAdept (dito). Geany läuft unter Linux, Windows, Mac, ... TextAdept traue ich auch Multiplattformfähigkeit zu.


    Wenn ich in FreePascal programmiere, dann nutze ich die IDE Lazarus, die für mich zum Besten zählt, was es für umsonst gibt. Läuft auch unter Linux, Window, Mac, ....


    Dann betreue ich noch zwei alte Entwicklungen in Delphi. In diesem Fall nutze ich die Delphi-IDE (Windows).


    Beste Grüße


    Andreas

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    • Icon-Tutorials (IDE: Geany) - GPIO-Library - µController-Programmierung in Icon! - ser. Devices - kein Support per PM / Konversation

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

    Edited once, last by Andreas ().

  • Ich nutze primär Geany und Atom. Atom gibt es übrigens jetzt aktuell auch für ARM/Raspi. Allerdings habe ich noch keine Ahnung wie die Performance ist.

    "Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect." Linus Torvalds, 28.9.2003

    >>> raspiBackup: Sichere Deine Raspberry regelmäßig im laufenden Betrieb <<<

  • Servus,

    alles Hardcore: vi bzw. (g)vim und am liebsten Makefiles ... ;)


    (g)vi(m) find ich super, weil

    - er gleich regex mitbringt

    - macros beherrscht

    - auch als stream-Editor zu verwenden ist

    - (fast) alles per 2-Tasten-Kürzel erreichbar ist

    - auf praktisch jedem Unix/Linux System vorhanden ist

    - überaus resourcensparsam ist


    cu,

    -ds-

  • danke schon mal für eure Antworten.

    dreamshader von vim habe ich mal was gelesen, da ging es um Cream. Hab dann aber gesehen, dass der scheinbar schon länger nicht mehr gepflegt wird und bei Version 0.irgendwas steht.


    Werde mir die Empfehlungen mal anschauen.

  • Hallo,


    Geany finde ich auch eine ganze gute aus Editor und IDE.

    Atom steht auf meiner "mal ausprobieren" Liste.


    Auf dem Raspi nutze ich für schnelle Edits nano - größere Programme schreibe ich wenn auf dem PC.


    Gruß, noisefloor

  • Der gravierendste Nachteil der bisher genannten Editoren ist, dass sie kein Debugging unterstützen (oder sollte ich da etwas übersehen haben?)


    Also das "Step by Step" durch den Code mit Anzeige der aktuellen Parameter- und Variablenbelegung (!)

    (Hat bei Multithreading-Programmen natürlich seine schnell erreichten Grenzen, die meisten von euch werden jedoch Multithreading niemals verwenden...).


    Ich habe mich nun ja als PyCharm - Enthusiast geouted (will aber nicht missionieren (!)):


    PyCharm kann dieses Step by Step Debugging:

    Gerade für Programmiereinsteiger ist das eine faszinierende Möglichkeit zu sehen, was da wirklich bei der Abarbeitung ihres Codes abläuft.

    Dem Fortgeschrittenen dient es dem Finden von so manch verborgenem Fehler...


    Ich verwende ebenfalls Geany, nano und vi(m) : Alles für seinen speziellen Zweck, z.B. beim bash-Scripting oder dem Editieren von Konfigfiles.

    Für wirkliches Coding von z.B. Java oder Python sind diese Werkzeuge aber einfach zu langsam und zu unflexibel.


    Beispiel Refactoring:

    Klar kann man das (auch) mit den oben genannten Editoren machen (Über "Suchen & Ersetzen", ggf. dann noch per RegEx).

    Aber wenn man sicher gehen will, dann lässt man das nicht automatisch machen, sondern steppt manuell durch jeden "Finde"-Punkt und bestätigt das Ersetzen oder eben nicht (weil es da in einer anderen Klasse ggf. den gleichen Variablennamen gibt).


    Das dauert... und ist Fehleranfällig...


    PyCharm hat ein "Verständnis" des Codes und ändert bei Refactoring nur genau die Stellen, welche eben relevant sind.

    Auch in importieren Modulen, falls es da relevant ist.

    Automatisch...

    Auf Knopfdruck...

    In Bruchteilen von Sekunden...


    Allein diese IDE-Funktion ist den Umstieg wert.

  • Programm-Entwicklungen meistens die IDE Geany

    jau am PI unter C mag ich die

    Arduino am PI und PC mit der Version 1.8.2/3

    am PC für AVR Atmel A-Studio 4.18

    am PC für win lcc-win32

    lasst die PIs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr

  • Hi Mario Be ,

    noch was: zum Thema IDE ...

    Ich hatte da mehrere mal ausprobiert und würde wohl, wenn ich denn eine verwenden würde/müsste, entweder Geany oder Code::Blocks nehmen.

    Geany, finde ich, ist auch für Anfänger/Einsteiger überschaubar. Von Monster-IDEs, die alles können halte ich nichts, weil es für mich keinen SInn macht, wenn das EInarbeiten in die IDE aufwändiger ist, als die Programmiersprache zu lernen.

    Code::Blocks finde ich ganz nett, weil da auch gleich ein Design-Tool für Oberflächen integriert ist (wxSmith). Ist halt ein wenig umfangreicher als Geany, läuft aber erstaunlicherweise relativ gut auf einem Pi der ersten Generation. Lokal arbeiten würde ich trotzdem nicht mit Code::Blocks, aber mit X-Forwarding auf einen Ubuntu-Laptop ist das trotzdem einigermassen flüssig gewesen.

    Das bezieht sich allerdings alles auf meinen Bastel-Pi ( Single Core der ersten Generation ) ...

    Wie schnell die IDEs auf einem aktuellen Modell sind, habe ich noch nicht ausprobiert.


    Generell würde ich sagen: eine IDE auswählen hängt stark davon ab, was Du damit dann entwickeln willst.


    Ach ... und Emacs als Editor fällt mir noch ein. Den habe ich zwar nie probiert, aber viele meiner damaligen Kollegen im Unix-Umfeld haben drauf geschworen ...


    cu,

    -ds-

  • Hallo MarioBe,


    dreamshader : von einem langsamen Laufzeitverhalten von Geany auf einem Raspberry Pi habe ich nicht bemerkt. Das läuft alles flüssig und die Anwendungen starten auch sofort


    Mit Emacs habe ich früher auf einem Amiga2000 programmiert (bevor ich eine eigene IDE programmiert hatte). Das Teil ist eh zeitlos.


    Beste Grüße


    Andreas

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    • Icon-Tutorials (IDE: Geany) - GPIO-Library - µController-Programmierung in Icon! - ser. Devices - kein Support per PM / Konversation

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

  • Hi,

    dreamshader: von einem langsamen Laufzeitverhalten von Geany auf einem Raspberry Pi habe ich nicht bemerkt. Das läuft alles flüssig und die Anwendungen starten auch sofort

    oops ... das ist ein Mist-Verständnis ...

    Code::Blocks war da gemeint. Zudem bezog ich das auf den Pi der ersten Generation ...

    Ich werd's mal umformulieren ...


    ciao,

    -ds-

  • Für große Sachen in Python: PyCharm

    Für kleine Sachen in Python: VS Code

    Webentwicklung: Visual Studio bzw. privat VS Code.

    Im Terminal immer nano.

    Java bzw Android Entwicklung: Android Studio, basier auf Intellij.

    C,Bash und was sonst noch so anfällt: nano oder VS Code.

    Ich bin nach langer Zeit von Atom zu VS Code gewechselt und bereue es kein bisschen. Mit VS Code kam ich super schnell zurecht und es fühlt sich flüssiger an, der Gesamteindruck ist einfach besser.

    Bei der Webentwicklung hab ich auch schon vieles durch, Aptana, Brackets uvm.

    Da ich aber VS Code als meinen Wald und Wieseneditor eh immer offen habe, und HTML, CSS/Sass/Less, JS (auch es6), PHP und mehr gut OOTB unterstützt wird und es viele sehr hilfreiche Plugins gibt, bin ich nun dabei geblieben.


    Mit Electron hat VS Code den selben Unterbau wie Atom, ist aber wie gesagt schon nicht ganz identisch und sehr zu empfehlen. Das ihh ist ja Microsoft Argument zählt hier nicht, weil 100% Open Source. Genau wie Atom von GitHub.

  • Mahlzeit zusammen,


    ich hatte mir gestern noch ein paar Sachen im Web zu den einzelnen IDEs die hier so genannt werden angeschaut.

    Und ich muss gestehen, für einen Anfänger wie mich, der sich erstmal auf den Code konzentrieren will, schaut so manch ein Screenshot einschüchternd aus.
    Ich würde da schon fast dreamshader zustimmen, dass einige von denen wohl wirklich einiges an Einarbeitung braucht.

    Ohne Frage werden dass gute Werkzeuge sein für Programmierer die programmieren können, aber ich befürchte, dass es mich zum Teil erstmal überfordern wird.
    Ich hab mir jetzt ne Liste der hier Empfohlenen erstellt. Werde aber wohl weiter, oder zumindest das solange ich das erste Buch durcharbeite, bei IDLE bleiben.
    Ich habe ja bisher keinerlei Erfahrung mit solchen Programmen. Und was bringen mir tolle Funktionen, PlugIns und Module, wenn ich keinen Plan habe, wofür diese wirklich sind... ich glaube, ich hab noch verdammt viel zu lernen neben der Programmiersprache selber.

    Bisher habe ich unter Windows mit Notepad++ mal Configfiles von Spielen oder Spielservern bearbeitet, und unter Lubuntu mit Leafpad ein paar HTML Seiten plus CSS Datein erstellt.


    Ich muss zugeben, dass ich mit der Sache der IDEs wohl voreilig war, aber ggf bringen die Infos hier ja auch anderen was, die damit schon mehr anfangen können.
    IDLE ist die erste IDE die ich jetzt kennen gelernt habe, und das ist bisher für mich etwas mehr als ein besserer Editor (auch wenn ich mich dran gewöhnen muss, dass z.B. die Zeilenzahl nicht vor der Zeile sondern unten links im Fenster angezeigt wird).


    Also, installieren werde ich wohl mal ein oder zwei, aber wohl wie angesprochen erstmal für das Buch bei IDLE bleiben und mir IDEs nach und nach Anschauen.


    Wie gesagt, nochmals vielen Dank euch allen!

    Gruß Mario

  • Nimm dir einfach Notepad++ und erfreu dich an der Schlichtheit. Bei Bedarf kann Notepad++ auch vieles, zum einfachen programmieren reicht es aber allemal.


    Lass dich von den ganzen Kommentaren hier nicht beirren, du musst nicht von 0 auf 100 mit professionellem Werkzeug anfangen, du musst auch nicht für irgend ein Projekt auf dem Pi als vollblütiger Programmierer durchstarten.

    Natürlich gibt es Grundsätzliches wie Sorgfalt usw woran man sich lieber von Anfang an halten und gewöhnen sollte, aber alles darüber hinaus ist übertrieben und überfordert die meisten Anfänger.

    Will hier aber auch nicht schon wieder eine Grundsatzdiskussion los treten, die letzten 5 haben absolut gereicht!




    PS: Notepad++ erkennt die Syntax anhand der Dateiendung. Öffnest du eine *.py wirds Python, öffnest du *.cpp ists C++ usw..

  • leider gibt es Notepad++ nicht für Linux.

    Ich habe zwar in dem PC noch eine Platte mit Win10, aber die wird nur zum zocken genutzt.

    Arbeiten tu ich in der Regel am Laptop mit Lubuntu. Auch am PC nutze ich Lubuntu wenn ich nicht gerade was spiele.

  • Nimm dir einfach Notepad++ und erfreu dich an der Schlichtheit.

    Den gibt es aber nur auf Windows ;(. Aber anyhow - IDEs koennen sehr kompliziert sein da sie auch viel koennen. Deshalb fange einfach mit IDLE an. Spaeter wirst Du feststellen, dass irgendwas fehlt und Dich nach Besseren IDEs umsehen. Alternativen wurde ja genuegend genannt.

    "Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect." Linus Torvalds, 28.9.2003

    >>> raspiBackup: Sichere Deine Raspberry regelmäßig im laufenden Betrieb <<<