Jump to content

Search the Community

Showing results for tags 'template metoda pattern'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Informatii generale
    • Anunturi importante
    • Bine ai venit
    • Proiecte RST
  • Sectiunea tehnica
    • Exploituri
    • Challenges (CTF)
    • Bug Bounty
    • Programare
    • Securitate web
    • Reverse engineering & exploit development
    • Mobile security
    • Sisteme de operare si discutii hardware
    • Electronica
    • Wireless Pentesting
    • Black SEO & monetizare
  • Tutoriale
    • Tutoriale in romana
    • Tutoriale in engleza
    • Tutoriale video
  • Programe
    • Programe hacking
    • Programe securitate
    • Programe utile
    • Free stuff
  • Discutii generale
    • RST Market
    • Off-topic
    • Discutii incepatori
    • Stiri securitate
    • Linkuri
    • Cosul de gunoi
  • Club Test's Topics
  • Clubul saraciei absolute's Topics
  • Chernobyl Hackers's Topics
  • Programming & Fun's Jokes / Funny pictures (programming related!)
  • Programming & Fun's Programming
  • Programming & Fun's Programming challenges
  • Bani pă net's Topics
  • Cumparaturi online's Topics
  • Web Development's Forum
  • 3D Print's Topics

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Website URL


Yahoo


Jabber


Skype


Location


Interests


Occupation


Interests


Biography


Location

Found 1 result

  1. Template metoda pattern ( sablon ) in PHP Un template metoda pattern ( sablon ) este un model de proiectare (Behavioral Design Pattern) , difuzat in Object Oriented Programming , care ne lasa sa stabilim structura unui algoritm de clasa , inteles ca si procedura pentru solutionarea problemelor recurente , facand ca , clasele secundare ( derivate sau subclase ) sa poate efectua arbitrar partiale implementari si personalizari pentru redefinire anumitor comportamente , totul fara a necesita rescrierea codului sursa . Fnctionarea " Template methon Pattern In cazul specific al limbajului PHP , va fii in internul Template methon Pattern o clasa abstacta , adica o clasa svilupata partial in care metodele pot fii implementate prin clasele secundare , carora li se vor asocia definirea metodei prin care a fost corelat un algoritm , si metodele implicate de algoritm in sine . In programarea care se refera la biecte , frecvent trebuie sa gestionam diverse sub-clase care provin dintr-o clasa principala , o conditie , o fectiune in sine nu este negativa, dar poate sa ridice inconvenientul de a fii nevoie sa punem in aplicare structuri asemanatoare . O posibila solutie a aceste probleme este , de a redefinii sursa facand in asa fel ca orice suprapunere sa fie mutate din multitdinea de clase secundare , in singura clasa ( superclass ) . Cel mai bine este sa vedem o simpla tehnica de sesizare , daca credeti de exemplu ca trebuie sa gestionati o aplicatie mai complexa , care cuprinde mai multe parti inter-conectate intre ele , dar care trebuiesc sa pevada modificari care nu implica intreaga structura , o modalitate de intervent ar fii aceea sa va asigurati ca sub-casele pot actiona pe parti din algoritm dintr-o clasa abstracta . " Template Methon Pattern " ne perimite acest lucru , adica descrierea structurii de baza a unui algoritm intr-o operatie lasand clasele secunde libere sa urmeze eventualele implementari . Operatiuni primitive : Concepute pentru a redefinii clasele derivate . Hookc : Metode optionale redefinibile sau eredetabile in forma originala . Metode care nu pot fii inlocuite / modificate deoarece apartin superclasei . Un simplu exemlpu de utilizare este acela care prevede creearea unei AbstractClass care contine metoda template asociata algoritmului pentru definirea continutului structural dintr-un fisier . Definita abstractului si implementarea in Sub-Clase Un exemplu practic de utilizare al " Template Method Pattern " , sa presupunem o aplicatie in care superclasa , numita " TemplateBase , are integrata metoda : (ViewFullMessage()) , care invoca metodele : extractObject() si extractText() . <?php // definitia superclasei ca si subclasa abstract class TemplateBase { // metooda si structurarea algortmului de clasa public final function vewfullMessage($message) { $bozza_Object = $message->extractObject(); $bozza_text = $message->extractText(); $object_final = $this->correctObject($bozza_Object); $testo_definitivo = $this->correctText($bozza_text); if (NULL == $text_final) { $message_displayed = $object_final; } else { $message_dysplayed = $object_final." .:::. ".$text_final; } return $message_dysplayed; } // functie pentru overriding abstract function correctObject($bozza_object); // hook function correctText($bozza_text) { return NULL; } } /* ereditare subclase*/ // first ConcreteClass class TemplateConTesto extends TemplateBase { function correctObject($bozza_object) { return str_replace(" ","---",$bozza_object); } function correctText($bozza_text) { return str_replace(" ","---",$bozza_text); } } // a doua ConcreteClass class TemplateJustObject extends TemplateBase { function CorrectObject($bozza_object) { return str_replace(" ","~",$bozza_object); } } class MessageFull { private $bozza_text; private $bozza_object; function __construct($bozza_object_for_write, $bozza_text_for_write) { $this->object = $bozza_text_for_write; $this->text = $bozza_object_for_write; } function extractText() {return $this->object;} function extractObject() {return $this->text;} function extractTextAndObect() { return $this->extractObject() . " .:::. " . $this->extractText(); } } write_message("Exemplu practic de utilizare a Template Method Pattern."); $message_complete = new MessageComplete("hello rst.com","Hello from R0cc0."); $template_with_testo = new TemplateConTesto(); $template_just_object = new TemplateJustObject(); write_message("Firs execution: show message and object:"); write_message($template_with_text->viewfullMessage($message_complete)); write_message("a doua executie : show just object:"); write_messageo($template_just_object->viewfullMessage($message_complete)); write_message("Finished execution."); function write_message($output) { echo $output."<br/>\r\n"; } ?> Executia sursei ar trebuii sa genereze un output de genul : Exemplu practic de utilizare a Template Method Pattern. First execution : Show message and object: Hello---rst.com .:::. Hello---from---R0cc0 . Second execution : show just object: Hello~rst.com Finished execution Reasumand tot, in aplicatie vine introdusa o metoda template, care nu va face altceva decat sa defineasca structura algoritmului , pentru care a fost creata superclasa . Scuzati greselile gramaticale .
×
×
  • Create New...