Vous devez toujours essayer de comprendre le système de build que vous utilisez.
Cela ne signifie pas nécessairement que vous devez être en mesure de créer tous les fichiers de construction à la main. La partie importante est de comprendre ce que le système de construction fait pour votre projet et la capacité générale de compiler manuellement de petits projets (comme dans "taper des commandes sur un terminal").
J'ai juste tendance à penser que la création (simple) de Makefiles est l'étape la plus simple pour comprendre ce qui se passe, mais vous pourriez avoir d'autres moyens de comprendre comment construire des choses.
Pourquoi / quand apprendre les Makefiles
Si vous continuez à programmer pour Windows uniquement et ne vous attendez pas à ce que quelqu'un d'autre compile votre code, n'hésitez pas à compiler le code comme vous le souhaitez.
Si vous voulez programmer le compilateur agnostique (comme dans "laissez les autres décider quel compilateur ou IDE ils veulent utiliser"), alors vous devriez apprendre un autre système de construction que de laisser votre IDE "s'en occuper".
Si vous souhaitez programmer pour différentes plates-formes, vous devez certainement utiliser un système de construction répandu.
Cela ne signifie toujours pas que vous devez savoir en détail comment les Makefiles générés automatiquement. Il vous suffit de savoir comment fonctionnent les fichiers d'entrée pour le système de génération. Ceux-ci se trouvent parfois avoir une syntaxe similaire.
Personnellement, j'aime vraiment les Makefiles et je les utilise pour beaucoup de choses. Pas seulement la compilation de code. Je crée un Makefile pour chaque pdf plus grand que je crée (avec LaTeX) et pour chaque projet dont j'ai besoin pour automatiser quelques tâches (construction, empaquetage, téléchargement, mise à jour des dépendances à partir des référentiels sources, sauvegardes manuelles pull / push)
Cependant, je travaille beaucoup sur le terminal et je travaille avec Linux. Je n'utilise pas ce que vous appelleriez un IDE autre que vim (puissant éditeur de texte) et les outils de console. Cela pourrait être très différent pour vous.
Si vous vous êtes déjà plaint de devoir exécuter différentes commandes de ré-occurrence juste pour "mettre à jour" / package / upload / .. un "projet", alors apprendre à écrire des Makefiles pourrait vous être utile.
Si vous avez et utilisez des outils / GUI / IDE pour tout, alors vous pourriez ne rien tirer de cette connaissance.