es valido cualquiera de los argumentos
lo que menciona Avlin es la realida... es cuestion de hacer bien las cosas... punto
no es requerido ni necesario realizar argumentos para que alguien entienda el codigo, ya que si eres un programador(a), entenderas inmediatamente lo que la funcion pretende o intenta realizar
lo que mencionas Zettsu
sobre los comentarios dentro del codigo, si bien ayuda para cuestion educativas o de instruccion ok

, pero para la creacion de codigo, esto incrementa las lineas de codigo, y logicamente mas tiempo de procesamiento... por que debe emitir esas lineas
algo mas sencillo de realizar es simplemente poner una acotacion a un archivo exclusivo de ayuda textual para futuros cambios etc...
cualquiera de los puntos, es valido; solo es cuestion de donde usarlo