Diğerlerinin söylediği gibi, bu hala saf bir işlevdir.
Bununla birlikte, tasarım sorunları hakkında konuşalım. Değeri yalnızca bir kez koyarak DRY kodunu saklamak için bir şeyler yapmaya çalışabilirsiniz. Buna ek olarak, benim de düşünülmesi gereken, uygun olan bağlantı seviyesidir.
Bir işlevi kullanmak, uygulamayı değiştirmek için daha fazla esneklik sağlar; başka bir deyişle, işlev yaklaşımı, genel bir değişkenden daha gevşek bağlantı sunar.
Soru, kişinin buna ihtiyacı olup olmadığıdır.
Tüketiciler ve sağlayıcı aynı modüldeyse ve sağlayıcı modüle özel ise, sağlayıcının özel bir değişkenten bir değişkene yükseltilmesi gerektiğinden, bu gevşek bağlantı düzeyinin gerekli olduğunu iddia etmek zordur. özel yöntem, modül içinde basit bir yeniden düzenleme tüketiciye aynı anda uygulanabilir. Gerçekten ihtiyaç duymadan önce bir yöntem / işlev kullanmak YAGNI altına girebilir.
Tüketici (ler) ve sağlayıcı farklı modüllerde olsa bile, modüller birlikte sürümlendirilmişse (örneğin, tüketici ve sağlayıcı modüllerinin aynı dosyada olması için bir küçültücü kullanırsınız), YAGNI da uygulanabilir.
Öte yandan, örneğin, üretici, tüketiciden ayrı olarak sürümlendirilmiş bir kütüphane ya da API paketinde ya da modülündeyse, işlevi kullanmak uygun olabilir. Bu durumda API'nın uzun ömürlülüğüne ve OCP gibi ilkelere bakmalıyız.
(Başka bir notta, kodunuz önemli boyutlardaysa, modüllerin global değişkenler ve işlevler yerine alanlar ve yöntemler ile kullanılmasını teşvik ederim.)