Çalıştığım bir API için hata yöneticisi oluşturuyorum. Buradaki fikir, farklı çağrılardaki aynı hatanın aynı şekilde ele alınmasını (örn. Talepte eksik olan değer) sağlayarak, API'den döndürülebilen tek bir hata kodları deposu sağlamasıdır. Ancak bu hata kodları sınıfı bir bağımlılık yerde bir hata ayarlamak istediğiniz oluştururBağımlılık yaratmadan sihir numaralarından kaçınmak
$this->_errorManager->setError(ErrorCodes::REQUIRED_FIELD);
:
Benim ilk yaklaşım çizgisinde oldu.
$this->_errorManager->setError(100);
Ama şimdi hiçbir şey ifade benim kodunun ortasında oturan bir numarası var:
alternatiftir.
Orada bir 'enum' kullanmak isteyeceğiniz diğer durumlar olacak ve ben sıkıca çift sınıfları kaldıran bir çözüm düşünemiyorum bu özel sorunun çözüm düşünmek çıkarabilirler.
Bunu yapmak veya büyü numaralarını kaldırmak için yapabileceğim farklı bir yaklaşımın daha iyi bir yolu var mı? Ya da sadece dava bazında bir davayı kabul etmek ve düşünmek zorunda olduğum sıkı bir bağlantı mıdır?
Bu "bağlantı" adını vermem, çünkü "ErrorCodes" herhangi bir * davranışı yoktur *. Bu iyi bir uygulama ve kesinlikle terimin olumsuz çağrışımlarını hak etmiyor. Bunu, "birbirine bağlı iki mantıksal varlık" yerine "iki fiziksel sınıf olarak uygulanan bir mantıksal varlık" olarak düşünmek isteyebilirsiniz. – Jon