Если у вас есть один исходный файл, нет особых оснований отдавать предпочтение одному над другим.
В более крупных проектах вы будете связывать объектные файлы со многими единицами перевода, а затем возникает необходимость отделитьЭтапы компиляции и компоновки (так что многие файлы могут быть скомпилированы одновременно, и многие из них вообще не должны компилироваться, если они обновлены).
Make имеет адекватные встроенные правила для поддержки обоих стилей сборки.