Warum ist Visual Studio bei Programmierern so beliebt?
-
hustbaer schrieb:
Warum VS? schrieb:
ipsec schrieb:
Es ist nun mal eine sehr gute IDE.
Vom Bedienkonzept mag es auch bessere geben, herausragend ist aber der Debugger. Ich behaupte, für C++ ist der VS-Debugger der beste überhaupt.Was macht den VS Debugger zum besten Debugger überhaupt?
Für VMware gibt es in Kombination mit Eclipse nun z.B. die Möglichkeit alle Befehle rückwärts zu gehen und dabei die Daten auch rückwärts richtig wiederherzustellen.Öh.
Das geht mit VMware + VS genauso.Vielleicht meinte er "ohne VMware". Zumindest kann der GDB mittlerweile "Reverse Debugging" ohne externe Hilfe.
-
this->that schrieb:
knivil ist entweder prinzipiell gerne dagegen oder halt der (bereits vorhergesehene
) Linux Fanboy .. gegen alles von MS ...
Ich kritisiere das sing sang, yadda yadda VS ist toll. Reines Schubladendenken! Linux, vim emacs, Eclipse KDevelop habe ich ich nicht erwaehnt. Deswegen muss wohl Ersteres zutreffen: ich bin prinzipiell gegen alles.
knivil und Bashar koennen ja gerne weiterhin KDevelop oder Eclipse
Ach das ist doch nur ein Aufhaenger um ueber Eclipse herzuziehen.
Dann hau doch mal rein, anstatt immer nur heiße Luft zu produzieren.
Das wird schwierig ohne direkte Vergleiche. Softwareentwickling bedeutet fuer mich: Code schreiben, lesen, editieren. Der Editor steht also im Vordergrund. Dort ist VS nicht herausragend.
-
knivil schrieb:
Das wird schwierig ohne direkte Vergleiche. Softwareentwickling bedeutet fuer mich: Code schreiben, lesen, editieren. Der Editor steht also im Vordergrund. Dort ist VS nicht herausragend.
So mal im direkten Vergleich: Ich kann mit VS Code schreiben, lesen, editieren und sogar abändern.
Wenn Du doch soviele Argumente gegen VS hast, wieso benötigtst Du dann einen direkten Vergleich?
Ich frage mich sowieso, wieso ständig nur Mist geschrieben wird, wenn man nichts zu sagen hat. Text ohne Inhalt braucht keiner, also kann man auch getrost die Seite, bzw. den Tab schließen.
-
Wenn man Software für Microsoft-Produkte schreibt (z.B. .NET Framework/ASP.NET, Windows OS), dann gibt es gar keinen Zweifel, dass VS das beste Gesamtpaket zur Entwicklung bietet
Ich kann komfortabel coden, der Debugger ist top, die Anbindung an den Team Foundation Server funktioniert reibungslos, diverse Designer erleichtern einem die Arbeit (ich denke da auch an ORM und nicht nur an GUIs) und schlussendlich ist auch der Compiler gut. Was im C++ Modus etwas besser sein könnte, ist das IntelliSense (wobei es sich schon erheblich verbessert hat) und die Möglichkeiten zum Refactoring. Beides kann man aber jetzt schon mit VAX erreichen. Im C#-Modus entfallen diese beiden Kritikpunkte sowieso. Dort ist VS sowieso konkurrenzlos. Im Endeffekt stellt sich die Frage also nur für C(++)-Entwicklung.
gastantwort schrieb:
Falls du eine sinnvolle Antwort für mich hast und mir die geheimen Shortcuts des Editors zeigen kannst immer her damit, schließlich will ich auch zügig damit arbeiten können.
Was für Sachen sollen denn die Shortcuts können? Irgendwas bestimmtes im Kopf?
-
~~terra schrieb:
So mal im direkten Vergleich: Ich kann mit VS Code schreiben, lesen, editieren und sogar abändern.
Das bezweifelt wohl niemand. Es geht aber um die beste IDE.
Wenn Du doch soviele Argumente gegen VS hast, wieso benötigtst Du dann einen direkten Vergleich?
Das sind keine Argumente gegen VS, sondern nur in Bezug auf die beste IDE.
Ich frage mich sowieso, wieso ständig nur Mist geschrieben wird, wenn man nichts zu sagen hat. Text ohne Inhalt braucht keiner, also kann man auch getrost die Seite, bzw. den Tab schließen.
dito
-
knivil schrieb:
this->that schrieb:
knivil ist entweder prinzipiell gerne dagegen oder halt der (bereits vorhergesehene
) Linux Fanboy .. gegen alles von MS ...
Ich kritisiere das sing sang, yadda yadda VS ist toll. Reines Schubladendenken! Linux, vim emacs, Eclipse KDevelop habe ich ich nicht erwaehnt.
Du raffst nicht, dass es eben nur deshalb so viele Lobeshymnen gibt, weil VS einfach gut IST.
Ausserdem ging es hier um IDEs als gesamtes, und nicht nur die Texteditorfaehigkeiten. Was nuetzt mir der weltbeste Texteditor, wenn ich nicht Debuggen kann, keinen Formsdesigner habe, keine Projektverwaltung, usw.
@GPC: Das Intellisense in VS2010 wurde deutlich ueberarbeitet. Alleine das Intellisense beim Inkludieren von Headern isn Traum. Ausserdem hatte ich noch keinen Fall, bei dem es versagt hat. Selbst abgefuckte Konstrukte konnte er bei mir immer richtig aufloesen.
VS is einfach das beste Gesamtpaket (IDE eben). Jeder, der es mal laenger benutzt hat (und vor allem "Alternativen" wie KDevelop oder Eclipse) wird zustimmen muessen.
-
this->that schrieb:
@GPC: Das Intellisense in VS2010 wurde deutlich ueberarbeitet. Alleine das Intellisense beim Inkludieren von Headern isn Traum. Ausserdem hatte ich noch keinen Fall, bei dem es versagt hat. Selbst abgefuckte Konstrukte konnte er bei mir immer richtig aufloesen.
Ich schreibe nur hin und wieder was in C++, dabei hat das IntelliSense auch noch nie versagt. Da waren aber auch nur normal schwierige Sachen dabei. Ich hab nur gehört, dass es bei den überkomplexen Boost-Sachen schon mal in die Knie geht.
-
this->that schrieb:
@GPC: Das Intellisense in VS2010 wurde deutlich ueberarbeitet. Alleine das Intellisense beim Inkludieren von Headern isn Traum.
Das könnte Eclipse CDT und Netbeans C++ vor VS2010, sogar QtCreator kann das heute. *gg*
-
knivil schrieb:
...
Wie wäre es wenn du mal konkret wirst, was im VS schlechter ist, als in einer anderen IDE (Nein, ich behaupte nicht das VS perfekt ist, aber für mich ist er bislang die beste IDE für meine Aufgabe).
-
Vertikales editieren von Text kann ich in VS nicht, Visual Block Mode in Vim. Ich benutze es haeufig.
wenn ich nicht Debuggen kann, keinen Formsdesigner, keine Projektverwaltung, usw
Tja, mancher ist ohne das in seiner IDE recht aufgeschmissen.
-
knivil schrieb:
Vertikales editieren von Text kann ich in VS nicht, Visual Block Mode in Vim. Ich benutze es haeufig.
Klar kann VS das. Mit Alt und dann selektieren.
-
Und ohne Maus?
-
knivil schrieb:
Und ohne Maus?
Keine Ahnung. Mit welcher IDE geht das denn?
-
GPC schrieb:
Irgendwas bestimmtes im Kopf?
Hier mal ein paar Kleinigkeiten die mich jedesmal aufregen im VS Editor (C++):
- Keine "Zeile duplizieren" Funktion
- Keine Syntaxvervollständigung (z.B. schließende Klammern setzen, Semikolon einfügen, geschweifte Klammern einfügen, etc.)
- Defekte "Zeile unter/über dieser Zeile einfügen und Cursor dorthin setzen", Beispiel, da schwer zu beschreiben (| = Cursor):if(x == 123|) { // Cursor z.B. hinter 123 oder irgendwo im if statement. }
Drücke Enter: Cursor steht am Anfang der Zeile, nicht eingerückt.
- Null Fehlerberichtigung oder Refactoring im Editor (z.B. automatisch den richtigen header includen, oder eine neue Methode oder Variable anlegen, wenn ich versuche eine Methode aufzurufen/Variable zu benutzen die es noch nicht gibt.
- uvm...this->that schrieb:
Alleine das Intellisense beim Inkludieren von Headern isn Traum.
Häh? Meinst du die Dateinamenvervollständigung? Du scheinst ja sehr leicht zu begeistern zu sein. Evtl. könnte dir ein Blick über den Tellerrand nicht schaden was bei anderen IDEs (auch nicht nur C/++/# IDEs) Standard ist.
-
gastantwort schrieb:
- Keine "Zeile duplizieren" Funktion
Wenn du nichts selektiert hast und Ctrl+C drückst, wird die gesamte Zeile in die Zwischenablage kopiert (bzw. eigentlich als neuer Eintrag angehängt).. mit Strg+V kannst du sie wieder einfügen. Shift+Strg+V läuft übrigens den Zwischenablage-Ringpuffer durch
- Keine Syntaxvervollständigung (z.B. schließende Klammern setzen, Semikolon einfügen, geschweifte Klammern einfügen, etc.)
Okay, stört mich weniger. Aber kann man auch teilweise über Code-Snippets angehen, so wie ich dich verstehe.
- Defekte "Zeile unter/über dieser Zeile einfügen und Cursor dorthin setzen", Beispiel, da schwer zu beschreiben (| = Cursor):
if(x == 123|) { // Cursor z.B. hinter 123 oder irgendwo im if statement. }
Drücke Enter: Cursor steht am Anfang der Zeile, nicht eingerückt.
Stimmt, wäre sicher eine gute Sache. Kann man aber auch selbst implementieren. VS ist ja ohne großen Aufwand mit Kommandos/Makros erweiterbar.
- Null Fehlerberichtigung oder Refactoring im Editor (z.B. automatisch den richtigen header includen, oder eine neue Methode oder Variable anlegen, wenn ich versuche eine Methode aufzurufen/Variable zu benutzen die es noch nicht gibt.
Das sind Dinge, die man mit VAX abdecken kann. Schade dass es nicht standardmäßig im C++ Mode drin ist, sondern über ein Plugin gelöst wird.
Für C# gibt es das aber alles
-
GPC schrieb:
- Keine Syntaxvervollständigung (z.B. schließende Klammern setzen, Semikolon einfügen, geschweifte Klammern einfügen, etc.)
Okay, stört mich weniger. Aber kann man auch teilweise über Code-Snippets angehen, so wie ich dich verstehe.
Glaube ich nicht dass man das manuell erweitern kann. Wenn dich das nicht stört kann das nur bedeuten, dass du es noch nie besser gesehen hast
Wenn man einmal daran gewöhnt ist, dann ...
Beispiele:methode(
Warum wird schließende Klammer nicht automatisch hinzugefügt?
Beispiel 2:methode(2 * f(x, y| )
Cursor hinter y => shift+enter (oder ähnliche kombination)
=> Klammer von f wird geschlossen, semikolon hinter das letzte ), cursor ans ende der Zeile (oder nächste Zeile)Was mir eben auch noch aufgestoßen ist:
In der Mitte von langer Codezeile Enter drücken um die Zeile zu teilen => Will das rückgängig machen => Strg+Z => anstatt dass der Zeilenumbruch rückgängig gemacht wird, wird die 2. Zeile "ausgerückt" (an den Anfang der Zeile). Ich muss nochmal Strg+Z drücken um den Zeilenumbruch zu löschenIst echt traurig dass der Hauptbestandteil einer IDE, der Editor, wo quasi meine ganze Arbeit stattfindet, so stiefmütterlich behandelt wird.
Danke für die restlichen Infos.
-
Du hast recht. Es ist echt traurig, das die Menschen von MS sich hauptsächlich nur um den Compiler kümmern und versuchen diesen immer zu verbessern
[/IRONIE]
-
gastantwort schrieb:
GPC schrieb:
- Keine Syntaxvervollständigung (z.B. schließende Klammern setzen, Semikolon einfügen, geschweifte Klammern einfügen, etc.)
Okay, stört mich weniger. Aber kann man auch teilweise über Code-Snippets angehen, so wie ich dich verstehe.
Glaube ich nicht dass man das manuell erweitern kann.
Zumindest bei Statements wie for, if, while etc kann man's per Code-Snippets machen. Für alles weitere müsste man wohl ein Makro schreiben. Vielleicht hab ich morgen 'nen guten Tag und schau mal was da geht
Wenn dich das nicht stört kann das nur bedeuten, dass du es noch nie besser gesehen hast
Wenn man einmal daran gewöhnt ist, dann ...
Beispiele:methode(
Warum wird schließende Klammer nicht automatisch hinzugefügt?
Beispiel 2:methode(2 * f(x, y| )
Cursor hinter y => shift+enter (oder ähnliche kombination)
=> Klammer von f wird geschlossen, semikolon hinter das letzte ), cursor ans ende der Zeile (oder nächste Zeile)Ist jetzt nichts wonach ich mich wirklich sehnen würde, aber ich verstehe, dass es (optional) sinnvoll wäre
Was mir eben auch noch aufgestoßen ist:
In der Mitte von langer Codezeile Enter drücken um die Zeile zu teilen => Will das rückgängig machen => Strg+Z => anstatt dass der Zeilenumbruch rückgängig gemacht wird, wird die 2. Zeile "ausgerückt" (an den Anfang der Zeile). Ich muss nochmal Strg+Z drücken um den Zeilenumbruch zu löschenDas Verhalten ist zwar etwas unschön, aber stringent, weil beim Enter-Drücken auch zwei einzelne Aktionen durchgeführt wurden, wenn auch eine (einrückung) implizit. Könnte aber besser gemacht werden.
Das sind jetzt konkrete Punkte, an denen man VS wirklich verbessern kann. Dennoch würde ich nicht so weit gehen und sagen dass der Editor an sich schlecht ist. Man kann viel damit machen, ihn selbstständig erweitern und es verbessert sich auch von Version zu Version was dran. Klar ist, man ist noch nicht an einem Punkt, an dem man sagen könnte: "Alles weitere wäre Verschlimmbesserung"
Fairerweise muss man aber auch sagen, dass einer nicht unerheblichen Anzahl an Menschen viele Funktionalitäten/Shortcuts gar nicht bekannt sind, so wie die vertikale Textauswahl mit gedrückter Alt-Taste. VS kann z.B. ein paar Dinge, die nicht jedem geläufig sind:- Per Strg+I inkrementell suchen
- Strg+W wählt das Wort aus, über dem sich der Cursor grad befindet
- Alt + Pfeiltasten links recht springt zum nächsten/letzten Wortanfang
- Strg+L löscht die aktuelle Zeile und fügt Sie in den Zwischenablageringpuffer ein
- Shift+F12 um herauszufinden, wer die Variable/Funktion unter dem Cursor alles aufruft
- Strg+K Strg+C kommentiert eine oder mehrere Zeilen aus.. Strg+K Strg+U unkommentiert wiederum
- Shift+Alt+Enter setzt VS in den Fullscreen modus
Wer noch mehr Shortcuts entdecken will: http://www.microsoft.com/downloads/en/details.aspx?FamilyID=92CED922-D505-457A-8C9C-84036160639F&displaylang=en
-
knivil schrieb:
Und ohne Maus?
Shift+Alt+Pfeiltasten
-
ipsec schrieb:
Pfeiltasten
Pfeiltasten sind eh das hinterletzte, was es gibt. Ob ich meine Hand zur Maus bewege oder zu den Pfeiltasten macht qualitativ keinen Unterschied. Beidesmal habe ich verloren.
VS scheint noch oft auf diese exotischen Tasten zu setzen (FXX-Tasten, Delete, etc.) und damit die Produktivität zu hemmen.
GPC schrieb:
VS kann z.B. ein paar Dinge, die nicht jedem geläufig sind:
- Per Strg+I inkrementell suchen
- Strg+W wählt das Wort aus, über dem sich der Cursor grad befindet
- Alt + Pfeiltasten links recht springt zum nächsten/letzten Wortanfang
- Strg+L löscht die aktuelle Zeile und fügt Sie in den Zwischenablageringpuffer ein
- Shift+F12 um herauszufinden, wer die Variable/Funktion unter dem Cursor alles aufruft
- Strg+K Strg+C kommentiert eine oder mehrere Zeilen aus.. Strg+K Strg+U unkommentiert wiederum
- Shift+Alt+Enter setzt VS in den Fullscreen modus
Nichts von alledem ist auf irgend eine Weise herausragend. Alle mittelmässigen Editoren beherrschen das. Da musst du schon echte Killer-Features bringen.