Auch wenn Clemens Antwort und Qrrbrbirlbels Antworten vorzuziehen ist, sei noch erwähnt, dass `\def` die von dir gewünschten Eigenschaften besitzt. Es erstellt entweder ein neues Makro oder überschreibt ein schon existierendes.
\def\name{Inhalt}
Erstellt also `\name` oder überschreibt ein schon existierendes. Warum es insofern gefährliche Auswirkungen haben kann, wenn etwas ohne wenn und aber überschrieben wird, zeigt dieses Beispiel:
\documentclass{scrartcl}
\def\insert{}% Kommentiere diesen Befehl aus, und die Fußnoten funktionieren wieder.
\begin{document}
Hallo\footnote{ Welt!}
\end{document}
Außerdem ist – wie @saputello in seinem Kommentar richtig bemerkte – die Definition von optionalen Argumenten mit `\def` recht umständlich.umständlich.
---
Ein anderer Befehl, der auch entweder einen neuen Befehl definiert oder einen bereits vorhandenen überschreibt wäre `\DeclareRobustCommand`. Von der Verwendung wäre er wie `\newcommand`, zusätzlich wären die Befehle robust (und er überschreibt schon existierende Befehle):
\DeclareRobustCommand\name{Inhalt}
erstellt also entweder \name oder überschreibt es ohne Warnung (Ich habe das Gefühl, ich wiederhole mich zuviel…).
Um das ganze kurz zu fassen: Verwende diese Befehle nur, wenn du sicher bist, dass du nichts wichtiges überschreibst!