Sie sollten immer versuchen, das von Ihnen verwendete Build-System zu verstehen.
Das bedeutet nicht unbedingt, dass Sie in der Lage sein müssen, alle Build-Dateien von Hand zu erstellen. Der wichtige Teil besteht darin, zu verstehen, was das Build-System für Ihr Projekt tut, und die allgemeine Fähigkeit, kleine Projekte manuell zu kompilieren (wie unter "Befehle auf einem Terminal eingeben").
Ich neige dazu zu denken, dass das Erstellen von (einfachen) Makefiles der einfachste Schritt ist, um zu verstehen, was vor sich geht, aber Sie haben möglicherweise andere Mittel, um zu verstehen, wie man Dinge erstellt.
Warum / wann Makefiles lernen?
Wenn Sie weiterhin nur für Windows programmieren und nicht erwarten, dass andere Ihren Code kompilieren, können Sie den Code nach Ihren Wünschen kompilieren.
Wenn Sie den Compiler agnostisch programmieren möchten (wie in "Lassen Sie andere entscheiden, welchen Compiler oder welche IDE sie verwenden möchten"), sollten Sie ein anderes Build-System erlernen, als nur Ihre IDE "damit umgehen zu lassen".
Wenn Sie für verschiedene Plattformen programmieren möchten, müssen Sie auf jeden Fall ein weit verbreitetes Build-System verwenden.
Das bedeutet immer noch nicht, dass Sie wissen müssen, wie die automatisch generierten Makefiles im Detail funktionieren. Sie müssen nur wissen, wie die Eingabedateien für das Buildsystem funktionieren. Diese haben manchmal eine ähnliche Syntax.
Ich persönlich mag Makefiles sehr und benutze sie für viele Dinge. Nicht nur Code kompilieren. Ich erstelle ein Makefile für jedes größere PDF, das ich erstelle (mit LaTeX), und für jedes Projekt, in dem ich einige Aufgaben automatisieren muss (Erstellen, Packen, Hochladen, Aktualisieren von Abhängigkeiten aus Quell-Repositorys, manuelle Backups ziehen / verschieben).
Ich arbeite jedoch viel am Terminal und arbeite mit Linux. Ich verwende keine andere IDE als vim (leistungsstarker Texteditor) und Konsolentools. Dies könnte für Sie sehr unterschiedlich sein.
Wenn Sie sich jemals darüber beschwert haben, verschiedene wiederkehrende Befehle ausführen zu müssen, nur um / package / upload / .. ein "Projekt" zu "aktualisieren", könnte es hilfreich für Sie sein, zu lernen, wie man Makefiles schreibt.
Wenn Sie Tools / GUIs / IDEs für alles haben und verwenden, können Sie dieses Wissen möglicherweise nicht nutzen.