Nächster Schritt der Programmierung [geschlossen]

Ich hoffe, dies ist der richtige Abschnitt von Stackexchange, um zu fragen.

Ich habe nicht allzu lange codiert, ich bin so weit gekommen wie Iteratoren/Container/Vorlagen/Sortierung/Listen. Ich vermute, es sind grundlegende Sachen. Ich habe mich gefragt, was mein nächster Schritt sein sollte? Ich hatte ein paar Dinge, die ich tun wollte, obwohl sie zeitaufwändig sind, also würde ich hier lieber fragen, was für einen Anfänger vorteilhafter ist:

1) Schreiben eines einfachen Spiels wie „Break the Bricks“, um zu lernen, wie man Events/Audio/GUI/etc.

2) Studieren eines C++-Github-Projekts

3) Ein ganzes C++-Buch durchlesen und zufälligen Code mit Schnipseln schreiben, die erklären, was jeder tut (zum Auswendiglernen/für die Zukunft haben)

4) Nehmen Sie an kostenlosen Online-Kursen teil und erledigen Sie die Online-Aufgaben (allerdings ohne zu wissen, ob ich richtig codiert habe)

Ich stecke fest, weil das Schreiben kleiner Programme mir nicht dabei hilft, neue Dinge zu lernen, ich verwende einfach die Dinge, die ich bereits weiß, um ein einfaches Programm zu schreiben. Außerdem bin ich mir nicht sicher, welche kleinen Projekte ich machen soll, ich hätte lieber ein langes

Es gibt viele Posts, die sagen, "einfach weiter programmieren", aber die gleichen Konzepte zu verwenden, ohne etwas Neues zu lernen, scheint mir nicht so nützlich zu sein, wie etwas völlig Neues zu lernen (abgesehen davon, vielleicht an effizienteren Code zu denken).

Nun, was ist die Beziehung von Software rec. in der frage?? Ich melde mich nur, wenn ich keinen Grund habe. Versuchen Sie, bei Stack Overflow nachzufragen
Es gibt meiner Meinung nach keine SE-Site, auf der diese Frage begrüßt würde. Definitiv nicht auf SO; Ähnliche Fragen werden von Programmierern täglich heruntergestimmt, zurückgehalten, gelöscht; Es ist nicht wirklich ein Kandidat für einen Arbeitsplatz ( vielleicht Comp-Sci?). Es ist jedoch eine Frage, die regelmäßig auf all diesen Websites gestellt wird. Ich habe nicht erwartet, dass es hier 5 Minuten dauert, aber ich habe mein Bestes getan, um zu helfen Viel Glück, Joe

Antworten (2)

Wenn Sie gut in C++ sein wollen, müssen Sie #3 durchlaufen - Sie müssen mit den anderen Konzepten vertraut sein, die Sie noch nicht kennen. Ich würde nicht sagen memorize, sondern eher verstehen/sich damit vertraut machen/wissen, dass es da draußen so etwas gibt, auf das Sie zurückkommen und sich eingehend damit befassen können, wenn/wenn Sie es wirklich brauchen. Ohne zu wissen, dass ein Konzept existiert, kann man nicht danach suchen.

Wenn Sie nicht gut darin sein wollen - was bringt es, es zu lernen? Finden Sie eine andere Sprache und werden Sie darin gut - aber Sie müssen das Äquivalent von Nr. 3 für diese Sprache durchgehen.

Und ja – Code, Code, Code – aber nicht immer und immer wieder die gleichen Konzepte verwenden – fordern Sie sich heraus, neue auszuprobieren (was Sie aus Punkt 3 erfahren). Wenn Sie das Gefühl haben, dass die Snippets zu einfach/langweilig sind, versuchen Sie, Lösungen für andere Probleme zu finden und zu codieren, die Sie don't knowvon Anfang an angehen können, und zwingen Sie sich so zum Nachdenken/Untersuchen/Studieren/usw. – durchsuchen Sie einfach die Software RecommendationsFragen und Antworten, die Sie finden werden viele Ideen zur Selbstaufgabe :) Oder gehen Sie zu #1.

Das Studium des Codes anderer Leute (Nr. 2) oder verwandte Fragen und Antworten ( z. B. zu C++Stack Overflow ) sind großartige Möglichkeiten, um Programmiertricks/-strategien/-stile zu lernen und Ihre Programmierkenntnisse zu verbessern. Damit kann man auch aktiv an der Korrektur/Verbesserung/Optimierung des eigenen Codes arbeiten. Dies ist eine Weiterbildung, die jederzeit durchgeführt werden kann.

Ich bin kein großer Fan von Nr. 4 für das Erlernen der ersten Programmiersprache, hauptsächlich weil sich die meisten, die ich gesehen habe, auf Besonderheiten konzentriert haben, nicht auf die grundlegenden Programmierkonzepte, die meiner Meinung nach unabhängig von der Sprache wesentlich sind. Hängt von jeder Person ab, YMMV. Sobald Sie eine Sprache gut beherrschen und eine andere lernen möchten, können sie ein großartiges Lernwerkzeug sein. Sie eignen sich auch gut für schnelle Referenzen und erfrischende Konzepte, die Sie seit einiger Zeit nicht mehr verwendet haben.

Ich möchte zu dem obigen hinzufügen, den Unterschied zwischen schnellem, hochoptimiertem Code und ausreichend schnellem, klar wartbarem Code zu lernen. Sie können auch online nach einem Open-Source-Projekt suchen, das Sie interessiert und das nach zusätzlichen Betreuern sucht.
Ich habe Sie für eine gute Antwort positiv bewertet, obwohl ich persönlich auch Nr. 4 mag – ich empfehle sowohl codecademy.com als auch coursera.org
@Mawg: Ich habe die Antwort bearbeitet, sie kam ziemlich falsch heraus, in der Tat, danke, dass du sie herausgefordert hast :)
Danke für die Antworten, ich kann immer noch nicht upvoten. Viele Leute raten jedoch davon ab, nur ein Buch/Buchübungen zu verwenden, sondern lieber ein Projekt zu machen und die Konzepte, die Sie lernen, darauf anzuwenden. Wie wäre es, #1 + #3 gleichzeitig zu kombinieren? Obwohl ich dann 2 Bücher verfolgen müsste
Wie @Mawg sagte, Nr. 1 kann eine ziemliche Herausforderung sein, es kann viel Arbeit erfordern, bis Sie die Ergebnisse genießen. Aber wenn/wenn es dir gelingt, hast du einiges an Erfahrung gesammelt (und die Zufriedenheit wird so viel größer sein!). Probieren Sie es aus, wenn Sie möchten, Sie können den Kurs jederzeit korrigieren, wenn es überwältigend wird.
Vergessen Sie nicht - es gibt einen himmelweiten Unterschied zwischen Programmierung und Softwareentwicklung. Lernen Sie also beim Erlernen der Sprache auch sprachunabhängige Fähigkeiten wie Design, Unit-Tests und Debugging. Sie könnten sogar Ihr eigenes Versionskontrollsystem und sogar einen Bugtracker haben, wenn Sie möchten. Das ist eine Menge auf Ihrem Teller, aber es ist am besten, von Anfang an bewährte Verfahren zu erlernen.

Meine Stimme ist für 3, 4, 1, 2. Das scheint mir am sinnvollsten zu sein. Selbst nach Jahrzehnten professioneller Entwicklung bin ich mir des Wertes von Nr. 2 nicht allzu sicher (außerdem kämpft eines der kleinen Ärgernisse des Lebens damit, den Code eines anderen zu verstehen).

  1. Ein ganzes C++-Buch durchlesen

Fangen Sie an, die Sprache zu lernen (und machen Sie die Programmierübungen im Buch).

  1. Nehmen Sie an kostenlosen Online-Kursen teil und erledigen Sie die Online-Aufgaben (allerdings ohne zu wissen, ob ich richtig codiert habe).

"ohne zu wissen, ob ich richtig codiert habe"? Die Aufgaben werden benotet. Außerdem werden oder sollten Sie lernen, zu testen. Das wird Ihnen sagen, ob der Code richtig codiert ist, was er soll?

  1. Schreiben eines einfachen Spiels wie "Break the Bricks", um zu lernen, wie man Events/Audio/GUI/etc schreibt.

Ich denke, Sie werden feststellen, dass dies viel weniger einfach ist, als Sie denken ,-) Aber ja, fangen Sie an zu programmieren. Codiere früh, codiere oft.

  1. Studieren eines C++-Github-Projekts

Woher wissen Sie, dass es sich um guten Code handelt? Außerdem ist es schwierig, den Code anderer Leute zu verstehen (ein paar Monate später sogar Ihren eigenen).

Da Sie das Programmieren eines Rollenspiels erwähnt haben, möchten Sie vielleicht auf https://gamedev.stackexchange.com/ lauern.

und auch anzuschauen