2010-12-02 5 views
0

Entschuldigung wenn dies irgendwo anders auf Stackoverflow besprochen wurde (ich konnte es nicht finden), oder wenn es keine "Programmier" Frage ist (eher wie eine Diskussion).Um IDE zu verwenden oder nicht, während Sie eine neue Sprache und ein neues Framework lernen

Ist es gut, die Verwendung einer IDE (Flash Builder, Visual Studio ...) zu vermeiden, während Sie zuerst ein neues Framework oder eine neue Sprache lernen?

Kann man nicht mehr lernen, wenn man einen einfachen Texteditor verwendet, um die manuelle Befehlszeilenkompilierung zu codieren und zu verwenden? Ich finde, dass IDEs zwar die Produktivität steigern, indem sie auf Bugs, Codevervollständigung und automatisches Scaffolding hinweisen, aber auch viele "blutige" Details verbergen, die für das Verständnis des Frameworks wichtig sind. Zum Beispiel ist .NET ein sehr großes Framework, und durch die Verwendung von VS werden die meisten Konfigurationsdetails automatisch von Projektassistenten verarbeitet. Einige häufig verwendete Bibliotheken werden automatisch referenziert und Konfigurationen werden eingerichtet. Während dies für einen erfahrenen Entwickler sinnvoll wäre, der versucht, seine/ihre Zeit zu verkürzen, würde ein Anfänger die Komplexität nicht verstehen und verstehen. Es ist auch interessant zu sehen, dass fast alle Anfänger-Bücher für große Frameworks eine IDE-zentrierte Pädagogik verwenden und die Befehlszeilenoptionen für fortgeschrittene Bücher weglassen.

Was sind Ihre Gedanken?

Antwort

2

Ich stimme überhaupt nicht mit allem überein, was die Leute bisher gesagt haben.

Etwas auf eine oberflächliche Art zu lernen ist tot einfach mit einer guten Idee. Etwas zu lernen, ohne etwas zu brauchen, dauert bei einer Idee viel länger.

Das Problem ist, dass Sie die Dinge erinnern, nicht so gut, wenn Sie eine Liste überfliegen und es herausgreifen, wie wenn man es tatsächlich jagen. Der Akt des Findens einer Antwort kann auch andere Aspekte eines Frameworks offenlegen, auf die Sie sonst nicht gestoßen wären. Schließlich, wenn Sie tatsächlich nach Problemen suchen oder nach Code lesen, um zu verstehen, wie etwas funktioniert, werden Sie ein viel tieferes Verständnis davon bekommen und dann an der Oberfläche herumstochern, bis es funktioniert.

Wenn Sie Mathematik im Gymnasium lernen, Sie sind eine Reihe von Problemen mit einem Bleistift und Papier geben. Der Rechner kommt später, weil das Erlernen der Grundlagen mit einem Rechner neben dir viel schwieriger ist als ohne einen. Später, wenn Sie die Grundlagen vollständig verstanden haben, können Sie einen Rechner verwenden, um die Grundlagen zu automatisieren. Es ist der gleiche Deal mit Code.

<rant> Schließlich sind Leute, die noch nie etwas anderes als eine IDE professionell benutzt haben, völlig unqualifiziert, um diese Frage zu beantworten. Wenn ich du wäre, würde ich die Frage bearbeiten und nur nach Antworten von Leuten fragen, die mit eclipse/intellij/vs/etc genauso gut umgehen wie mit vim/emacs. Es ist wirklich beschissen, aber die meisten Leute an solchen Orten haben nie etwas anderes als eine riesige IDE benutzt, aber die 10 Minuten, die sie mit einem Redakteur verbracht haben, geben ihnen genug Hintergrundwissen, um Meinungen zu solchen Dingen zu machen. In bestimmten Fällen (vor allem, wenn die Person, die das teure Werkzeug herstellt, dieselbe Person ist, die die Plattform herstellt), ist es extrem schwierig, sogar ohne eine IDE zu arbeiten, weil niemand es tut. Wenn es nur einen dummen Aufwand braucht, um ohne Werkzeug loszulegen, dann gehen Sie zum Werkzeug. Ich würde das als suboptimale Bedingungen betrachten, um wirklich etwas zu lernen.

+1

Wissen Sie, wie man den Compiler mit den richtigen Optionen ausführt, wirklich "die Grundlagen"? Wenn wir über das Verwenden von Drag-and-Drop-Bausteinen zum Schreiben eines Programms anstelle von Code-Hacking sprechen würden, würde ich Ihnen zustimmen, aber zu wissen, welche Toolchain zum Erstellen und Ausführen Ihres Codes verwendet wird, hat eigentlich nichts damit zu tun. –

+0

@anon: IMO 'gcc -o app app.c' ist nicht furchtbar beschwerlich, und' make' ist noch weniger so. Wie ich schon sagte, die Leute mit den unbrauchbaren Toolchains scheinen diejenigen zu sein, die mit dem Verkauf von Werkzeugen viel Geld verdienen. Wenn eine Plattform eine wirklich schlechte Geschichte mit nicht integrierten Tools hat, würde ich zustimmen, dass die IDE die bessere Wahl ist. Aber nicht weil es das Lernen leichter macht, sondern eher durch einen Mangel an Plattform. –

+0

IDE ist sicherlich der beste Weg. Strg + Linksklick, um zur Quelle zu springen, Flash Builder ASDoc bei Hover, Navigator und Paketansicht, Outline/Designmodus, um die Syntax und das Layout von mxml zu verstehen .... usw. Schmerz in den Arsch für einen Anfänger, um dieses Zeug herauszufinden ohne die IDE (und um es zu bauen und auszuführen). Wie viele potenzielle Entwickler hat die Flex-Community aufgrund von mxmlc.exe-Fehlern verloren? – Ryan

2

Wenn es darum geht, eine neue Sprache oder einen neuen Rahmen zu lernen, ist es gut, direkt in die wichtigen/"fleischigen" Teile springen zu können, wobei jedes technische Detail noch vollständig geklärt werden muss.

Sie können zu Ihrer eigenen Zeit, bis dahin, in der Lage sein, tatsächlich die Bibliothek zu verwenden und zu verstehen, das große Bild ist viel wichtiger als die Befehlszeilenschalter csc zu wissen.

+0

+1 IDEs sind großartig, wenn Sie eine Sprache lernen; Sie können alle Dokumente jederzeit griffbereit haben, automatisch vervollständigen usw. Es kann später eine PITA sein, aber anfangs ist es großartig. –

0

Eine IDE kann eine große Hilfe sein, um Sie durch die rauen Stellen zu bringen und eine Menge Frust zu beseitigen. Sie werden auf diese Weise zuerst schneller lernen.

Nachdem Sie sich mit der Sprache und dem Framework vertraut gemacht haben, können Sie immer Commando ausführen und in einem einfachen Texteditor codieren, wenn Sie das Bareback-Erlebnis möchten.

0

Es ist wichtig, direkt in den Coding-Aspekt einzutauchen und ein Gefühl für die Sprache zu bekommen, anstatt herauszufinden, was die IDE abstrahiert. Der beste Weg, eine Sprache zu lernen, besteht darin, klein anzufangen, den Code auszuführen, Feedback zu erhalten und von dort aus nach oben zu arbeiten.

0

Ich würde das Gegenteil sagen. Ich kann die Menge, die ich über C# und .NET durch Untersuchung Intellisense gelernt habe, nicht untertreiben.

Verwandte Themen