Ne zaman PHP İstisnalar kullanmak için iyidir?

3 Cevap php

Ben tüm durumları ve hataları işlemek için try / catch kullanarak büyük uygulamalar geliştirmek oldum; Ancak, ben anlamaya çalışıyorum: Ne zaman bir try / catch deyimini kullanmak doğru mu?

Try / fiksatörleri iyi bir uygulama / kural var mı?

Şu anda benim PHP Framework için bir SEO kütüphane inşa ediyorum ve "küçük" bir fonksiyonu var ve kendime sordum "Ben gerçekten bu küçük fonksiyonu try / catch kullanmalı mıyım?"

Birisi bu konuda bana rehberlik Eğer ben gerçekten müteşekkir olacaktır.

3 Cevap

Küçük işlev içinde hiçbir şey bir özel durum için yeteneği varsa, gerçekten bir try / catch bloğu sararak bir nokta yoktur. Gerçekten küçük bir fonksiyon ise, belki de bir try / catch (diğer koduna ek olarak) küçük işlevi çağıran kod bloğunu işlemek için iyi olurdu. Gerçekten belirli bir sorunun ne olduğunu / bu oldu söyleme try / yakalar düzeyi çok yüksek olan kodunuzu perdelenmesini bitirmek değil ilgilenmesini istiyorum.

Deneyin / Yakala ya kendi hata işleme fonksiyonu olduğunda çok yararlıdır (ki gerekir), ya da hatalarını bastırmak istediğinizde. Sen kullanarak başvurmak asla PHP'nin yerleşik @ hata bastırıcı, yani try / yakalar kullanarak hata işlevini kullanarak hata kaydetmek ve yararlı bir şekilde onları bastırmak yardımcı olabilir.

Ben şahsen bunları kullanmak o zaman. Eğer çerçeve kalanında bunları kullanarak yapıyorsanız, ben (bir özel hata işleme işlevini kullanarak konum, özellikle eğer - ki gerçekten app süreklilik ve tutarlılık ile yardımcı olacak) tutarlılık için kullanmaya devam ediyorum.

Eğer kodlama standardı bu tür kullanarak eğer bunu kullanıyor. Istisnalar ve dönüş kodları ikisini de kullanarak (her bir fonksiyon için hataları nasıl hatırlamaya çalışırken) bir kıvrık karmaşa ve yavaş gelişme dönüşebilir. Belki küçücük fonksiyonlarında bir try / catch bloğu gerek yok - ama senaryo hakkını yapısı ise, sadece küçük fonksiyonlardan istisnalar atmak ve daha büyük kontrol işlevleri bir try bloğunda onları çağıran olabilir.

Ancak, sadece özel durumlar kullanarak kolayca de bir kıvrık karmaşa dönüşebilir okudum. Sizin komut en verimli şekilde kullanmak oldukça mantıklı tutarlı olmalıdır.