Это зависит, например, от того, что вы можете иметь фабрику, которая будет производить только определенное количество объектов, и в этом случае будет ассоциированное состояние. По большей части фабричные методы могут быть статическими, если они не полагаются на какие-либо нестатические переменные (такие как нестатические глобальные переменные и тому подобное) для их создания. Он также имеет тенденцию дифференцировать разные фабрики для разных частей приложения, поэтому в зависимости от того, есть ли состояние на вашей фабрике или нет, вы можете использовать то, с чем не связано, что все фабричные методы должны быть статичными, проверьте, к какой ситуации относится ты и пиши соответственно.
Еще одним соображением является ключевое слово static, оно приводит к тому, что любое статическое создается в памяти только один раз, но недостатком является то, что оно всегда находится в памяти процесса (что увеличивает размер рабочего набора). Это может быть тем, что вам не нужно, поскольку ваша фабрика может иметь очень высокую локальность в определенных областях, и в противном случае она просто использовала бы память где-то в другом месте, но обычно это проблема оптимизации, которую следует рассматривать, только если проблема памяти давление в вашем приложении возникает.