Daha iyi performans ve daha iyi yapı

4 Cevap php

Daha iyi performans:

list($result1,$result2,$result3,$result4)=get_all_result();

Toplam sql sorgu sayısı az olan ve yeniden zor better.But performansı biraz.

Daha iyi bir yapı:

$result1=module1_get_result();
$result2=module2_get_result();
$result3=module3_get_result();
$result4=module4_get_result();

Daha sorguları gerekir, bu yüzden yapısı daha net worse.But performans biraz.

Hangi perfer musun?

4 Cevap

Duruma göre değişir.

Uygulamanın kritik yollar için, okumak ve sürdürmek zor olabilir yüksek performanslı kod yazmak zorunda kalabilirsiniz, ama gerçek bir sorun tespit edildiğinde optimizasyonlar iyi yapılır. Geri kalanı için ben genelde yüksek performansı üzerinde idame tercih ederim.

Peki, performans ne kadar önemli?

O tarihten sonra artan yeniden / Düzeltilebilirlik göre değer mi?

Kod PHP kodu gibi görünüyor bu yana, ben o PHP varsayıyoruz.

Eğer dizi, performansı hem okunabilir kullanırsanız daha iyi olur.

$results = get_all_result();
//the above should return an array, so you can access
//$results['result1'], $results['result2'], $results['result3'], $results['result4']

Daha az çağrı performans için daha iyidir. Daha iyi okunabilmesi için dizi veya nesne sonucu depolamak.

Ayrıca, erken optimizasyon kötülüktür. Kodunu oluşturmak gerektiğini yaratma yaptıklarınızdan sadece yaklaşık% 10 olduğu için, sıçramalı. Kod yaşam döngüsünün% 90 hata düzeltme, değiştirme özelliği, ya Bakımı kod da daha az hata var olacak yeni bir özellik, vb eklemek, onu korumak için bunu yazılı bir şekilde yana, hata olacaktır kolay benekli için.

get_all_result() sayısal indisli bir dizi (1, 2, 3, ...) neden döndürür:

extract(get_all_result(), EXTR_PREFIX_ALL, 'result');

extract() bu için mükemmel bir aday gibi görünüyor.