IDE oder nur Code-Editor?

Programmiersprachen, APIs, Bibliotheken, Open Source Engines, Debugging, Quellcode Fehler und alles was mit praktischer Programmierung zu tun hat.
Antworten
Benutzeravatar
starcow
Establishment
Beiträge: 560
Registriert: 23.04.2003, 17:42
Echter Name: Mischa Schaub
Kontaktdaten:

IDE oder nur Code-Editor?

Beitrag von starcow »

Abend Zusammen (-:

Ich stosse immer wieder auf Youtube-Videos, in denen abgeraten wird, mittels IDE zu programmieren. Man lerne dabei zuwenig und mache sich von aufgeblähter Software (VS) abhängig. Meistens wird dabei auch nicht an Kritik gegenüber Visual Studio gespart.
Einige schwören anscheinend auf VIM als Editor und Compiling "von Hand".
Ich habe mich gefragt, ob es sich für mich lohnen könnte, das auch mal zu versuchen. Gerade weil ich von den ganzen Compilierungs-Vorgängen wenig bis keine Ahnung habe. Ich meine, bis jetzt drücke ich in Visual Studio einfach "F5". Aber vielleicht wäre es mal an der Zeit, genauer zu verstehen, welche Schritte da ausgeführt werden, indem man das ganze mal selbständig probiert.
Oder führt das einfach zu unnötigen Schmerzen? :-)

Auf welche Lösung setzt ihr denn? Und was haltet ihr von dieser Kritik?

Gruss, starcow
Freelancer 3D- und 2D-Grafik
mischaschaub.com
Benutzeravatar
xq
Establishment
Beiträge: 1589
Registriert: 07.10.2012, 14:56
Alter Benutzername: MasterQ32
Echter Name: Felix Queißner
Wohnort: Stuttgart & Region
Kontaktdaten:

Re: IDE oder nur Code-Editor?

Beitrag von xq »

Und was haltet ihr von dieser Kritik?
Berechtigt. Ich hab auf Arbeit nur Krieg gegen IDEs (C++Builder, VisualStudio, Eclipse) und würde mich freuen, diese zu großen Teilen loszuwerden und die einzelnen Werkzeuge als eigenständige Tools zu haben (UI-Designer zum Beispiel)
Auf welche Lösung setzt ihr denn?
Ich persönliche benutze Visual Studio Code mit einer kleinen Sammlung Extensions (35 Stück 🙈) + Terminal + GNU/Linux (also: GNU make, git, die passenden Toolchains). Keine größeren Tools dabei
Oder führt das einfach zu unnötigen Schmerzen? :-)
Ich bin ohne IDE sehr viel glücklicher, da ich zu sehr großen Teilen verstehe, wie aus meinem Code eine Exe wird. Die IDE "macht halt". Ich baue *bewusst* eine Datei und verstehe den Prozess, kann ihn dementsprechend auch debuggen.
War mal MasterQ32, findet den Namen aber mittlerweile ziemlich albern…

Programmiert viel in ⚡️Zig⚡️ und nervt Leute damit.
NytroX
Establishment
Beiträge: 387
Registriert: 03.10.2003, 12:47

Re: IDE oder nur Code-Editor?

Beitrag von NytroX »

Genau was xq sagt.
Benutze auch VSCode und bin einigermaßen zufrieden damit.
Man muss halt die ganze Spyware abschalten - aber das gilt auch für VisualStudio nicht-Code.
Btw. "Visual Studio Code" - dümmste Namensgebung ever; man findet nix mehr in den Suchmaschinen.

Aber ich verstehe bis heute nicht wozu ich SQL Extensions, einen IIS-Server und einen MSSQL brauche, nur weil ich eine IDE haben möchte.
Und der Installationsprozess ist auch extrem kacke.
VSCode kann es auch ohne den ganzen Quatsch, einfach unzippen und benutzen.
Nur die Language-Server sind je nach Sprache teilweise noch eher unausgereift, aber so Klassiker wie C++, Typescript/JS usw. gehen sehr gut.
Aber z.B. D ist quasi unbenutzbar, daher programmiere ich aktuell halt einfach in der Sprache nicht mehr.
Benutzeravatar
Schrompf
Moderator
Beiträge: 5045
Registriert: 25.02.2009, 23:44
Benutzertext: Lernt nur selten dazu
Echter Name: Thomas
Wohnort: Dresden
Kontaktdaten:

Re: IDE oder nur Code-Editor?

Beitrag von Schrompf »

Ich bin mit IDE sehr viel glücklicher und würde behaupten, die Leute machen da Strohmänner auf, weil sie bestimmte Eigenschaften bestimmter Software nicht mögen. Den Build-Prozess zu lernen bleibt Dir trotzdem nicht erspart, aber ich behaupte, so ein CMake-Gewitter lehrt Dich exakt genauso viel wie ein VisualStudio-Projekt.

Ich benutze privat Visual Studio - editieren geht schon, Debugger ist uneinholbar - und auf Arbeit CLion - echt geiles Stück Software größtenteils.
Früher mal Dreamworlds. Früher mal Open Asset Import Library. Heutzutage nur noch so rumwursteln.
Benutzeravatar
Chromanoid
Moderator
Beiträge: 4273
Registriert: 16.10.2002, 19:39
Echter Name: Christian Kulenkampff
Wohnort: Lüneburg

Re: IDE oder nur Code-Editor?

Beitrag von Chromanoid »

Alles immer von Hand machen ist Quatsch. Das macht man eh nie. Die Leute, die das "von Hand" machen, machen sich eigene Automatismen. Viel Lernen außer Schmerzen und warum man eine IDE will lernt man IMO auch nicht. Das kann man auch bei notwendigen Fehleranalysen lernen. VS Code würde ich mit Language Server schon als IDE bezeichnen (wenn man sich die Nutzungsweise anschaut, um die es hier ja geht). Wenn ich eine typisierte Sprache nutze, will ich doch auch davon profitieren. Einfach mal ne Methode umbenennen usw. ohne selbst rumzukrebsen.

Viele IDEs kommen sich ein bisschen mit den Build-Tools ins Gehege. Die meisten IDEs fahren da ein duales System (Kompilierung usw. einmal durch die IDE und dann noch mal mit dem Build-Tool der Wahl), das sorgt manchmal für Schmerzen. Da ist NetBeans meiner Erfahrung (zumindest für Java) nach tatsächlich mit das beste, was ich gesehen habe (obwohl ich NetBeans nicht mehr nutze). VS Code und die "leichtgewichtigen ich bin gar keine IDE IDEs", die auf LSP setzen, sind da sicher ähnlich.

@NytroX: Wenn Dich da Telemetrie usw. stört, warum nutzt Du nicht https://theia-ide.org/ ? Edit: mmh ich hab das bisher immer nur über gitpod.io benutzt. Scheint etwas nervig zu sein, an Binaries für den Desktop zu kommen :/
nullptr
Beiträge: 10
Registriert: 04.11.2020, 21:02

Re: IDE oder nur Code-Editor?

Beitrag von nullptr »

Sehr C/C++ zentrisch:
Zum Verständnis sollte man schon mal ein makefile geschrieben haben. Oder auch ein Shell Skript. Hauptsache Compiler & Linker wurden direkt aufgerufen. Einen GDB in der commandline gesehen zu haben ist sicher auch gut. Zum produktiven Arbeiten bin ich aber ganz bei IDEs.

Mir ist vorallem eine gute Debugger & Profiler Integration wichtig. Das kann z.B. ein Visual Studio echt gut. Call Stack, Memory View, Thread View, CPU Sampling wunderbar. Die Buildumgebung finde ich wird für größere Projekte, vorallem mit Abhängigkeiten, aber echt mühsam.
Da finde ich CMake dann ganz praktisch...wobei ich das eigentlich, wie viele andere auch, als Gewschür empfinde. C++ macht es den Tools aber auch nicht unbedingt einfach. Code Completion und Symbol Suche sind ein weiterer wichtiger Punkt, mehr in professionellen als privaten Projekten allerdings.

Version Control hab ich immer getrennt. Die Visual Studio Integration für z.B. git hat mir nie gefallen, bzw war mir zu halbgar.
Mit VS Code + GDB Plugin + CMake hab ich auch schon viel hinbekommen. Das war aber ausschließlich cross-compilen & debuggen für Linux.
Tiles

Re: IDE oder nur Code-Editor?

Beitrag von Tiles »

Tja, das sieht mir nach dem Willst du Programmieren oder Entwicklen Dilemma aus. Der Programmierer in mir will alles verstehen. Der Entwickler in mir sucht sich die einfachste und schnellste Methode aus um zum Ziel zu kommen. Und das ist heutzutage eben eine IDE. Wichtig ist dass es funktioniert. Zu verstehen wieso ist eher ein Luxusproblem. Bei mir gewinnt leider fast immer der Entwickler in mir ^^
Matthias Gubisch
Establishment
Beiträge: 488
Registriert: 01.03.2009, 19:09

Re: IDE oder nur Code-Editor?

Beitrag von Matthias Gubisch »

Dinge zu verstehen und auch mal selber gemacht zu haben ist sicher nie verkehrt.
Gerade in groesseren Projekten an denen ich nicht alleine arbeite moechte ich aber die Vorteile einer IDE nicht missen.

Debugger Integration (gerade in VisualStudio top), Symbolsuche, Jump to Definition, automatisches umbenenen, das alles sind Features die einen dem Arbeitsalltag vor allem in nicht selbstgeschriebenen Code enorm erleichtern.
Bevor man den Kopf schüttelt, sollte man sich vergewissern einen zu haben
Alexander Kornrumpf
Moderator
Beiträge: 2138
Registriert: 25.02.2009, 13:37

Re: IDE oder nur Code-Editor?

Beitrag von Alexander Kornrumpf »

starcow hat geschrieben: 15.02.2021, 20:59 Ich stosse immer wieder auf Youtube-Videos, in denen abgeraten wird, mittels IDE zu programmieren.
xq hat geschrieben: 15.02.2021, 21:50
Auf welche Lösung setzt ihr denn?
Ich persönliche benutze Visual Studio Code mit einer kleinen Sammlung Extensions (35 Stück 🙈) + Terminal + GNU/Linux (also: GNU make, git, die passenden Toolchains). Keine größeren Tools dabei.
Ich muss ein bisschen schmunzeln. In meiner Jugend wäre es bei der Eingangsfrage implizit um IDE vs. vim gegangen und VSCode, wenn es das schon gegeben hätte, wäre im IDE-Lager gewesen.

Visual Studio hat halt das Problem, dass es beim besten Willen nicht an jeder Stelle verbergen kann, dass C++ nicht dafür gemacht ist mit einer IDE benutzt zu werden. IntelliJ z. B. ist ein sehr mächtiges Teil, das ich nicht würde missen wollen, wenn ich Java benutze.
NytroX
Establishment
Beiträge: 387
Registriert: 03.10.2003, 12:47

Re: IDE oder nur Code-Editor?

Beitrag von NytroX »

@Chromaniod: VSCodium ist wie Theia, nur mehr "fertig" und mit Binaries :-)
Das Problem mit diesen Dingern ist, dass man die Microsoft-Extensions nur mit den offiziellen VSCode binaries nutzen darf. Besonders die Debugger.
Daher ist für mich auch .NET Core nicht open source, es hat keinen offenen Debugger - d.h. mit Theia oder VSCodium darf man den nicht nutzen und muss ausweichen (es gibt z.B: einen Debugger von Samsung für C#).

Den gleichen Marketplace für die Extensions darf man auch nicht nutzen. Und dann darf man beten, dass dein LanguageServer Hersteller auch auf open-vsx.org das Package hochläd - Microsoft macht das natürlich nicht, also hat man mit C++ oder C# keine Chance mehr ordentlich zu entwickeln ohne VSCode oder das volle VS.

=> siehe https://github.com/VSCodium/vscodium/bl ... arketplace

Die Extensions von Microsoft sind halt einfach oft die besten Extensions.
Java ist mit VSCode auch kacke, die RedHat Extension is fürn Ar***.

Deno/Typescript und Go sind aber sehr gut, da kommen 99% der "echten" IDEs nicht annähernd ran.
C++ mit Microsoft Extension ist auch top, fast gleich wie in Visual Studio, nur ohne Bullsh*t-Installation.

@Matthias Gubisch: VSCode kann das auch alles, wenn man die entsprechende Extension hat ;-P

Aber ich denke ehrlich gesagt, dass VSCode eigentlich auch eine IDE ist. Nur sind die Teile halt Plugin-basiert; so wie bei der "Netbeans-Platform" etc auch.
Das ist alles nur dummgelaber von wegen "Editor ist keine IDE" - die Tools sind alle mit IDE im Hinterkopf entwickelt worden - eine CodeLens und einen LSP-Client macht man nicht "versehentlich" in einen "Editor".
Vim ist da vielleicht die einzige Ausnahme.
Benutzeravatar
Jonathan
Establishment
Beiträge: 2545
Registriert: 04.08.2004, 20:06
Kontaktdaten:

Re: IDE oder nur Code-Editor?

Beitrag von Jonathan »

starcow hat geschrieben: 15.02.2021, 20:59 Ich stosse immer wieder auf Youtube-Videos, in denen abgeraten wird, mittels IDE zu programmieren. Man lerne dabei zuwenig und mache sich von aufgeblähter Software (VS) abhängig. Meistens wird dabei auch nicht an Kritik gegenüber Visual Studio gespart.
Einige schwören anscheinend auf VIM als Editor und Compiling "von Hand".
Ich habe mich gefragt, ob es sich für mich lohnen könnte, das auch mal zu versuchen. Gerade weil ich von den ganzen Compilierungs-Vorgängen wenig bis keine Ahnung habe. Ich meine, bis jetzt drücke ich in Visual Studio einfach "F5". Aber vielleicht wäre es mal an der Zeit, genauer zu verstehen, welche Schritte da ausgeführt werden, indem man das ganze mal selbständig probiert.
Oder führt das einfach zu unnötigen Schmerzen? :-)

Auf welche Lösung setzt ihr denn? Und was haltet ihr von dieser Kritik?

Gruss, starcow
Also zunächst einmal halte ich hab absolut nichts von Video-Programmiertutorials: Das Video hat gegenüber einem Fließtext genau 0 Vorteile (ist ja eh alles textbasiert), ist aber im Gegensatz schlechter viel nerviger zu benutzen. Aber das muss jeder selbst wissen.

Zur Kritik: Man kann ganz gewiss an VS Dinge sehr nervig finden. Aber sich zu beschweren, dass es einem Arbeit abnimmt, halte ich für absurd. Das man nichts lernt, wenn man Parameter vorgeschlagen bekommt, oder Fehler unterkringelt werden geht doch komplett am Kern dessen vorbei, das ein Programmierer leisten sollte: Softwarearchitekturen entwickeln und nicht APIs auswendig lernen. Und das man nicht weiß, wie man den Compiler bedient halte ich auch eher für einen Vorteil. Solange man in der Lage ist, Linkerfehler und ähnliches zu beheben, weiß man doch im Grunde genug. Für mich ist mit der wichtigste Nachteil, und der Grund weshalb C++ quasi unrettbar kaputt ist, dass das Compilieren an sich so kacke ist. Und wenn ein Stück Software da etwas Komplexität vor mir versteckt und es trotzdem funktioniert, ist das doch nur gut.

Klar, dann kann es passieren, dass man vielleicht irgendwann mal auf einer anderen Plattform entwickeln muss und dann manche Details nicht kennt. Schmälert quasi deinen Marktwert. Andererseits sind Makefiles für einen Programmierer jetzt auch kein Hexenwerk, das ist dann halt Fleißarbeit, die zu verstehen. Und solange es keinen guten Grund dagegen gibt, würde ich mir das für den Moment aufsparen, an dem man es wirklich braucht. Weil ich noch nie jemanden getroffen habe, der makefiles schreiben so richtig geil findet und das lieber macht, als tatsächlich zu programmieren...

Zusammengefasst: Als Programmierer leidet man schon genug, da sollte man sich das Leben so einfach wie möglich machen. Menschen die sich als Puristen bezeichnen aber weniger Effizient arbeiten, weil sie sich weigern, vernünftige Tools zu benutzen, erlangen damit bei mir keinen Respekt.
Lieber dumm fragen, als dumm bleiben!
https://jonathank.de/games/
Benutzeravatar
dot
Establishment
Beiträge: 1745
Registriert: 06.03.2004, 18:10
Echter Name: Michael Kenzel
Kontaktdaten:

Re: IDE oder nur Code-Editor?

Beitrag von dot »

starcow hat geschrieben: 15.02.2021, 20:59 Ich stosse immer wieder auf Youtube-Videos, in denen abgeraten wird, mittels IDE zu programmieren. Man lerne dabei zuwenig und mache sich von aufgeblähter Software (VS) abhängig.
IMHO ist das nicht nur völliger Bullshit sondern auch noch gefährlich. Was anderes hätte ich von Videotutorials aber auch nicht erwartet. Ich seh das ähnlich wie Jonathan, YouTube ist imo nicht der Ort um Programmieren zu lernen. Am besten ein gutes Buch oder zwei.

Meiner Erfahrung nach ist genau das Gegenteil der Fall: mittels IDE programmieren lernen ist definitiv die zu bevorzugende Variante. Ja, es ist durchaus wichtig, als fortgeschrittener C++ Programmierer ein solides Verständnis des Buildprozesses zu haben. Das lernt man aber unvermeidbar so oder so mit der Zeit. Am Anfang geht es erstmal darum, Programmieren zu lernen und sich mit der Sprache anzufreunden. Das letzte was einem da Hilft ist, wenn man die erste Woche mal damit verbringt, eine Toolchain aufzusetzen, die nächste Woche damit, den Editor zu konfigurieren, die Woche drauf damit, erstmal alles über Compiler, Linker und Makefiles zu lernen und die nächsten drei Jahre damit, keinen Debugger zu verwenden weil das ja viel zu kompliziert wäre. Wenn ich nur daran denke, mit wie vielen Masterstudenten ich schon zu tun hatte, die zwar wunderbar g++ auf der Commandline aufrufen können dann aber selbst mit simpelsten Bugs völlig überfordert sind…

Gerade am Anfang ist die Superkraft die ein Debugger einem verleiht, nämlich seinem Code beliebig in Zeitlupe dabei zuzusehen, wie er macht was auch immer er macht, einfach nur völlig unbezahlbar. Für das Verständnis bringt das ca. unendlich viel mehr als zu wissen, mit welchem Flag man einem bestimmten Compiler sagt wie das Outputfile heißen soll. Ich sag immer: 80% von allem was ich übers Programmieren weiß hab ich von einem Debugger gelernt. Visual Studio gibt dir nicht nur einen der besten Debugger überhaupt out-of-the-box und ready-to-go, es ist in VS effektiv sogar mehr Aufwand, den Debugger nicht zu verwenden als es ist, ihn zu verwenden. Frag dich einfach mal, worum es wirklich geht. Ja, wie in jedem Handwerk, ein guter Programmierer kennt seine Werkzeuge. Aber das kommt mit der Praxis sowieso. Beim Programmieren geht es zuerst immer noch ums Programmieren und nicht darum, aus welchem Holz der Hammer genau gemacht ist…wichtig ist vor allem, dass er gut in der Hand liegt und nicht ständig auseinanderfällt…ein guter Tischler weiß alles über seinen Hammer. Aber es ist noch niemand ein guter Tischler geworden, indem er alles über Hämmer gelernt hat…
Matthias Gubisch
Establishment
Beiträge: 488
Registriert: 01.03.2009, 19:09

Re: IDE oder nur Code-Editor?

Beitrag von Matthias Gubisch »

NytroX hat geschrieben: 17.02.2021, 23:49 @Matthias Gubisch: VSCode kann das auch alles, wenn man die entsprechende Extension hat ;-P
Das ist mir schon klar, aber wenn ich meinen CodeEditor mittels Plugins zu einer quasi IDE aufblase kann man sich halt auch die Diskussion sparen.
Im Ergebnis ist es vermutlich egal ob ich eine fertige IDE nehmen oder sie mir selber zusammenstelle, ausser das das 2 vielleicht mehr Pflegeaufwand braucht, dafuer ist man etwas flexibler in der Werkzeugwahl...

Zu lernzwecken oder wenn man der BulidSystem Mensch im Team sein will kann man das schon alles auf der Commandozeile machen, ist manchmal auch praktisch wenn man mal kurz was kleine testen will. Produktiv arbeiten in groessenen Projekten moechte ich ohne IDE Features aber nicht muessen.
Bevor man den Kopf schüttelt, sollte man sich vergewissern einen zu haben
Benutzeravatar
Jonathan
Establishment
Beiträge: 2545
Registriert: 04.08.2004, 20:06
Kontaktdaten:

Re: IDE oder nur Code-Editor?

Beitrag von Jonathan »

Vielleicht noch als Einschränkung: Man sollte natürlich schon verstehen, was der Code bedeutet. Eclipse hat (oder hatte früher?) zum Beispiel die Angewohnheit, alle möglichen Quick-Fixes anzubieten, ob die nun sinnvoll sind, oder nicht. Und so hat in der Uni in einer Projektgruppe mal ein Kollege die Variable, die speichert welche Spielfigur gerade auf einem Feld-Objekt steht, als static deklariert, was natürlich dazu führte, dass die Figur danach auf allen Feldern gleichzeitig war. Einen Quickfix zu benutzen, nur damit der Fehler verschwindet kann schon eine ziemlich schlechte Idee sein.

Andererseits dürften sowas wohl fast immer ziemlich 'dumme' Bugs sein, die wohl jeder von uns unabhängig von jeglicher IDE, am Anfang mal verbrochen hat. Mit ein klein wenig mehr Erfahrung fällt man auf sowas dann auch nicht mehr rein.
Lieber dumm fragen, als dumm bleiben!
https://jonathank.de/games/
Benutzeravatar
starcow
Establishment
Beiträge: 560
Registriert: 23.04.2003, 17:42
Echter Name: Mischa Schaub
Kontaktdaten:

Re: IDE oder nur Code-Editor?

Beitrag von starcow »

Schrompf hat geschrieben: 15.02.2021, 22:43 Ich benutze privat Visual Studio - editieren geht schon, Debugger ist uneinholbar - und auf Arbeit CLion - echt geiles Stück Software größtenteils.
Interessant. Wo siehst du denn die Vor- und Nachteile von CLion gegenüber VS?

Jonathan hat geschrieben: 18.02.2021, 00:34 Also zunächst einmal halte ich hab absolut nichts von Video-Programmiertutorials: Das Video hat gegenüber einem Fließtext genau 0 Vorteile (ist ja eh alles textbasiert), ist aber im Gegensatz schlechter viel nerviger zu benutzen. Aber das muss jeder selbst wissen.
dot hat geschrieben: 18.02.2021, 03:40 IMHO ist das nicht nur völliger Bullshit sondern auch noch gefährlich. Was anderes hätte ich von Videotutorials aber auch nicht erwartet. Ich seh das ähnlich wie Jonathan, YouTube ist imo nicht der Ort um Programmieren zu lernen. Am besten ein gutes Buch oder zwei.
Die Meinung, dass ein gutes Buch nicht einfach durch (gute) Youtube-Videos ersetzbar ist, teile ich auch.
Nur galube ich, dass das Video-Format trotzdem einen enormen Mehrwert bieten kann. Gerade wenn es darum geht, Konzepte und Ideen zu vermitteln, sind (animierte) Visualisierung - wenn sie denn gut gemacht sind - goldwert. Der Code selbst ist ja immer nur ein Aspekt. Z.B. muss ich ja, um mit einem Zeiger programmieren zu können, erstmal die Idee und das Konzept dahinter verstanden haben. Oder die Idee eines Komplexen Algorithmus, wie z.B. GJK - ehe ich diesen impelemtieren kann.
Wenn sich dazu also jemand die Mühe macht, dies anschaulich per Video zu erklären und dies auch durch konkreten Code ergänzt, finde ich das schon sehr wertvoll.

Hier ein Auszug an Youtube-Kanälen, die ich ausgezeichnet finde. Jeder auf seine Art. "The Cherno" hat z.B. eine sehr umfangreiche C++ Serie, von der ich schon oft profitieren konnte. Sie ersetzt aber trotzdem nicht ein gutes Buch - was ich glaube, aber auch nie seine Absicht war.


The Cherno
https://www.youtube.com/channel/UCQ-W1K ... hL6S4twUNw

javidx9 - OneLoneCoder
https://www.youtube.com/channel/UC-yuWV ... ieEligKBkA
https://community.onelonecoder.com/

Bisqwit
https://www.youtube.com/channel/UCKTehw ... 2wo0RKwrcg

Weitz / Hamburg (Dr. Prof. Edmund Weitz)
https://www.youtube.com/channel/UCjTfCh ... Zq0x12Q6xA
https://www.springer.com/de/book/9783658215644

Gruss starcow
Freelancer 3D- und 2D-Grafik
mischaschaub.com
Antworten