SORU
17 Kasım 2008, PAZARTESİ


Neden 5'in fonksiyon prototipleri kötü Perl?

question başka bir üye "prototip kullanmak için değil. tavsiye ederim iddia Kendi kullanır, ama bu bir çoğu için kesinlikle değil."

Herkes bu gerçek (veya başka) sebebini anlatabilir mi? Ben hemen hemen her zaman benim Perl fonksiyonları prototipleri kaynağı, ve daha önce hiç kimsenin aklına başka birşey kullanma konusunda kötü olduğunu gördüm.

CEVAP
17 Kasım 2008, PAZARTESİ


Prototipler kötü eğer doğru kullanılmaz. Zorluk Perl bu prototip insanlar genellikle onları beklediği şekilde çalışmıyor. Bu, doğru sayıda ve bağımsız tür oldukları. dil prototip işlev çağrıları doğru olup olmadığını kontrol etmek için bir mekanizma sağlamak için beklemek eğilimindedir diğer programlama geçmişi olan kişiler: Perl bu prototipler bu görev için uygun değildir.yanlış kullanımo kadar da kötü değil. Perl bu prototip tekil ve çok farklı bir amacı var:

Prototip-dahili fonksiyonları gibi davranan işlevleri tanımlamak için izin verir.

  • Parantezler isteğe bağlıdır.
  • Bağlam bağımsız bir insandır.

Örneğin, bu gibi bir işlevi tanımlayabilirsiniz:

sub mypush(\@@) { ... }

ve o kadar çağrı

mypush @array, 1, 2, 3;

bağımsız değişken listesi parenthesize veya dizi için bir referans almak \ yazmaya gerek kalmadan.

Özetle, prototip kendi sözdizimsel şekeri yapalım. Örneğin Geyik çerçevesini daha tipik OO bir sözdizimi taklit etmek için kullanır.

Bu çok kullanışlı ama prototip çok sınırlı

  • Derleme-zaman görünür olmalı.
  • Yan yol olabilir.
  • Bağımsız bağlam yayma beklenmeyen davranışlara neden olabilir.
  • Zor fonksiyonlar başka bir şey kullanarak arama yapabilirsiniz kesinlikle formu reçete.

Tüm kanlı detayları için perlsub Prototypes bkz.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • NCIX Tech Tips

    NCIX Tech Ti

    2 Ocak 2007
  • thegeniuses.tv

    thegeniuses.

    11 Aralık 2006
  • whatever

    whatever

    30 EYLÜL 2005