Sadece karşılaştım bu eski soruya küresel durumu hakkında çok kötü olduğunu ve üst olarak kabul cevabı başka bir yerde başka bir kod gelip değiştirebilir olabileceğinden, küresel değişkenler ile çalışır herhangi bir kod güvenemeyeceğinizi iddia soran onun değer ve ardından verilerinizin farklı olması nedeniyle kodunuzun davranışının ne olacağını bilmiyorsunuz! Ancak buna baktığımda, yardım edemem ama bunun gerçekten zayıf bir açıklama olduğunu düşünüyorum, çünkü bunun bir veritabanında depolanan verilerle çalışmaktan ne farkı var?
Programınız bir veritabanındaki verilerle çalışırken, sisteminizdeki diğer kodların onu değiştirip değiştirmemesi veya tamamen farklı bir programın değişmesi durumunda bile, bu konuda umursamıyorsunuz. Verinin ne olduğu umrunda değil; bütün mesele bu. Önemli olan kodunuzun karşılaştığı verilerle doğru bir şekilde ilgilenmesidir. (Belli ki burada önbelleğe almanın sık sık dikenli meselesine bakıyorum, ama şu an için bunu görmezden gelelim.)
Ancak, üzerinde çalıştığınız veriler, bir veritabanı (veya kullanıcı girişi veya bir ağ soketi veya bir dosya, vb.) Gibi kodunuz üzerinde kontrol sahibi olmayan bir harici kaynaktan geliyorsa ve yanlış bir şey olmazsa Bununla birlikte, kodunuzun içindeki küresel veriler nasıldır - hangi programınızın üzerinde daha fazla kontrol sahibi olduğu - bir şekilde hiç kimsenin problem olarak görmediği tamamen normal şeylerden çok daha az kötü olduğu zaman bir şekilde kötü bir şey?