Poof.

Estensione perl che fornisce una digitazione più forte, l'incapsulamento e l'ereditarietà
Scarica ora

Poof. Classifica e riepilogo

Annuncio pubblicitario

  • Rating:
  • Licenza:
  • Perl Artistic License
  • Prezzo:
  • FREE
  • Nome editore:
  • Benny Millares
  • Sito web dell'editore:
  • http://search.cpan.org/~bmillares/

Poof. Tag


Poof. Descrizione

Estensione perl che fornisce una digitazione più forte, l'incapsulamento e l'ereditarietà POOF è un modulo Perl che tenta di dare perl un quadro di attuazione OO più formale. Fornire una distinzione tra proprietà e metodi di classe con tre livelli di accesso (pubblico, protetto e privato). Limita inoltre il metodo che ha il principio delle classi per bambini a tali proprietà o metodi contrassegnati come "virtuali", nel qual caso una classe figlio può ignorare il metodo ma solo dal proprio contesto. Per quanto riguarda il genitore, il metodo o la proprietà sovrascritta si comportano ancora nel modo previsto dalla sua prospettiva. Attuare l'esempio sopra: qualsiasi figlio di myclass può sovrascrivere il metodo "OpinionAboutperl6" come è contrassegnato "Virtual": # in Bambino sotto OpinionAboutPerl6: Metodo pubblico {My ($BJ) = @_; ritorno "Dudio, è totalmente tubolare !!"; } Tuttavia, se il metodo pubblico "Realpublicopinionaboutperl6" è chiamato quindi a sua volta chiamare il metodo "Ophabeabuuperl6" come è stato definito in myclass, perché dalla prospettiva dei genitori il metodo non è mai cambiato. Credo che questo sia un comportamento cruciale e va d'accordo con il modo in cui i principi OO sono stati implementati in altre lingue popolari come Java, C # e C ++. PACCHETTO SINOSSI MYCLASS; usa la base QW (POOF); # Proprietà della classe Sotto Nome: Property Public {{'Type' => 'String', 'Default' => '', 'regex' => qr / ^ {0,128} $ /,} {0,128} $ /,}} Sub Età: Property Public { {'Tipo' => 'intero', 'Default' => 0, 'min' => 0, 'max' => 120,}} Sub MariltalStatus: Property Private {{'Type' => 'String', ' default '=>' single ',' regex '=> qr / ^ (? single | sposato) $ /' IFILTER '=> SUB {MY $ VAL = SHIFT; restituire LC $ Val; }}} Sub Spouse: Property Private {{'Type' "=> 'String', 'Default' => 'single', 'regex' => qr / ^ {0,64} $ /, 'IFILTER' => sub {my $ val = shift; restituire LC $ Val; }}} Sub }} # Metodi di classe Sub MarItalStatus: Metodo pubblico {My ($ OBJ, $ Richiedente) = @_; se ($ richiedente EQ 'NefArious Looking Stranger') {return 'non della tua azienda'; } else {return $ obj -> {'Maritalstatus'}}} sub getmarried: Method Public {My ($ OBJ, $ New_Spouse) = @_; $ obj -> {'coniuge'} = $ New_spouse; se ($ obj-> perri) {i miei $ errori = $ obj-> pgetors; Se (esiste $ ERRORS -> {"PIUSE"}) {Die "problemi, il marrige è off !! $ errori -> {'coniuge'} " Non vedo l'ora. È quasi qui :) ";} sub realpublicopinionaboutperl6: Metodo pubblico {My ($BJ) = @_; return $ obj-> OpinionAboutPerl6;} Requisiti: · Perl.


Poof. Software correlato

Dna.

Dencodes Il tuo programma Perl in una sequenza di acido nucleico ...

163

Scarica

Tiro

Pacchetti di traina off CPAN e fai le cose con loro ...

133

Scarica