Implementazione di un modulo per il pagamento elettronico in Magento
Struttura generale del modulo PosteGateway
Un modulo è un insieme di file (classi PHP, file XML, classi CSS ecc.) che concorrono alla realizzazione di una medesima funzionalità. In Magento ogni azione, sia nel front-end che nel back-end, è gestita da un modulo. Quest.ultimo può essere visto come un contenitore di uno o più dei seguenti elementi: block, helper, model, controller, template, file di configurazione e file per l.interfacciamento con il database; a questi si aggiunge un file XML per la dichiarazione del modulo, necessario alla sua attivazione.
La cartella in cui vengono inseriti tutti i moduli è la cartella app, che contiene le tre sottocartelle code, design ed etc.
Tutto il codice sorgente, ad eccezione dei template e del file di dichiarazione del modulo, deve essere inserito nella cartella code. Questa cartella contiene a sua volta tre sottocartelle, che rappresentano i code pool di Magento: local, community e core. I moduli nativi di Magento sono in quest.ultima cartella, mentre local è dedicata ai moduli sviluppati in locale e community a quelli installati mediante il MagentoConnect Manager (cfr. paragrafo 2.4). Nella creazione di un modulo in locale si deve inserire il codice sorgente in app/code/local/
La cartella design è invece riservata alla gestione dei template di Magento; al suo interno troviamo le cartelle adminhtml e frontend, rispettivamente dedicate a contenere i file che definiscono l.aspetto grafico del back-end e del front-end.
Da ultimo, la cartella etc contiene i file di dichiarazione dei moduli, senza i quali il modulo non può essere correttamente processato dal sistema.
Nella cartella app/code/local/Tcpsistemi/Postegateway è possibile notare la presenza di 7 cartelle, contenenti altrettanti elementi costitutivi del modulo.
I Block rappresentano uno strato software fra lo schema di template e i dati contenuti nel Model. Consistono in un.insieme di classi, ognuna relativa ad un differente file di template, che mettono a disposizione un set di metodi, richiamabili nel corrispondente template mediante la variabile $this, che consentono l.invocazione dei metodi del Model. Tutti i Block estendono dalla
classe Mage_Core_Block_Template, che è a sua volta una specializzazione della classe Mage_Core_Block_Abstract. Si noti la convenzione sui nomi delle classi adottata da Magento: essi rispecchiano il percorso del file che contiene la classe, a partire dal nome del
I controllers sono appunto le classi che implementano il livello Controller dell'applicazione, in linea con il pattern MVC adottato da Magento. Essi gestiscono la logica dell.applicazione, coordinando le interazioni fra Model e Block. In questa cartella sono inoltre contenute le Application Programming Interface (API) con cui interfacciarsi con il gateway di pagamento IGFS, in quanto, in Magento, per poter essere incluse correttamente (e quindi istanziate) da una classe devono essere presenti nella stessa cartella. Le classi del Controller estendono da Mage_Core_Controller_Front_Action, a sua volta estensione di Mage_Core_Controller_Varien_Action, che è una copia della classe di Zend Framework Zend_Controller_Action.
La configurazione delle Entity presenti nel database è invece demandata alle classi presenti in Entity/Setup.
Tali classi estendono da Mage_Eav_Model_Entity_Setup, che offre dei metodi predefiniti per l.interfacciamento con il database EAV.
La cartella etc contiene i file di configurazione del back-end del modulo. Tali file sono in formato XML e consentono, mediante appositi tag, di definire le caratteristiche generali del modulo e di strutturarne i menù di configurazione nel pannello di amministrazione.
La cartella Helper contiene le helper class, ovvero delle classi che forniscono dei metodi di utilità generale, che si ha la necessità di richiamare da più classi esterne. Gli Helper del modulo estendono da Mage_Core_Helper_Abstract, che offre dei metodi predefiniti, come ad esempio il metodo "__()" (doppio underscore), che provvede alla traduzione dei testi, e "htmlEscape()", che realizza la funzione PHP htmlspecialchars.
La cartella Model contiene le classi che realizzano il livello Model del pattern MVC, predisponendo i metodi necessari all.interfacciamento con il database EAV. Per facilitare la gestione dei dati, Magento implementa il sistema Object Relational Mapping (ORM), che elimina al programmatore la necessità di accedere al database mediante query in SQL, attraverso l'utilizzo dei "magic methods" __call del PHP. In tal modo, dopo aver acceduto ad un.Entity, è possibile estrarre i valori dei suoi attributi (ad es., Colore) mediante opportuni getter e setter (ad es., setColore() ).
L'ultima cartella, sql, contiene un file per il setup delle tabelle del database, che viene eseguito solo in fase d'installazione del modulo.
La creazione delle cartelle appena viste, organizzate secondo la rigida struttura modulare di Magento, è il primo passo nello sviluppo del modulo; tali cartelle andranno poi a contenere i file che implementano le funzionalità descritte nei successivi paragrafi. Per semplificare la programmazione di diversi elementi, permettendo un più agevole sviluppo di nuovi moduli, si segnala da subito la presenza in Magento di un ampio set di metodi statici predefiniti, invocabili mediante la sintassi Mage::
Questo brano è tratto dalla tesi:
Implementazione di un modulo per il pagamento elettronico in Magento
CONSULTA INTEGRALMENTE QUESTA TESI
La consultazione è esclusivamente in formato digitale .PDF
Acquista
Informazioni tesi
Autore: | Alex Mircoli |
Tipo: | Laurea I ciclo (triennale) |
Anno: | 2011-12 |
Università: | Università Politecnica delle Marche |
Facoltà: | Ingegneria |
Corso: | Ingegneria dell'informazione |
Relatore: | Alessandro Cucchiarelli |
Lingua: | Italiano |
Num. pagine: | 92 |
FAQ
Come consultare una tesi
Il pagamento può essere effettuato tramite carta di credito/carta prepagata, PayPal, bonifico bancario.
Confermato il pagamento si potrà consultare i file esclusivamente in formato .PDF accedendo alla propria Home Personale. Si potrà quindi procedere a salvare o stampare il file.
Maggiori informazioni
Perché consultare una tesi?
- perché affronta un singolo argomento in modo sintetico e specifico come altri testi non fanno;
- perché è un lavoro originale che si basa su una ricerca bibliografica accurata;
- perché, a differenza di altri materiali che puoi reperire online, una tesi di laurea è stata verificata da un docente universitario e dalla commissione in sede d'esame. La nostra redazione inoltre controlla prima della pubblicazione la completezza dei materiali e, dal 2009, anche l'originalità della tesi attraverso il software antiplagio Compilatio.net.
Clausole di consultazione
- L'utilizzo della consultazione integrale della tesi da parte dell'Utente che ne acquista il diritto è da considerarsi esclusivamente privato.
- Nel caso in cui l’utente che consulta la tesi volesse citarne alcune parti, dovrà inserire correttamente la fonte, come si cita un qualsiasi altro testo di riferimento bibliografico.
- L'Utente è l'unico ed esclusivo responsabile del materiale di cui acquista il diritto alla consultazione. Si impegna a non divulgare a mezzo stampa, editoria in genere, televisione, radio, Internet e/o qualsiasi altro mezzo divulgativo esistente o che venisse inventato, il contenuto della tesi che consulta o stralci della medesima. Verrà perseguito legalmente nel caso di riproduzione totale e/o parziale su qualsiasi mezzo e/o su qualsiasi supporto, nel caso di divulgazione nonché nel caso di ricavo economico derivante dallo sfruttamento del diritto acquisito.
Vuoi tradurre questa tesi?
Per raggiungerlo, è fondamentale superare la barriera rappresentata dalla lingua. Ecco perché cerchiamo persone disponibili ad effettuare la traduzione delle tesi pubblicate nel nostro sito.
Per tradurre questa tesi clicca qui »
Scopri come funziona »
DUBBI? Contattaci
Contatta la redazione a
[email protected]
Parole chiave
Tesi correlate
Non hai trovato quello che cercavi?
Abbiamo più di 45.000 Tesi di Laurea: cerca nel nostro database
Oppure consulta la sezione dedicata ad appunti universitari selezionati e pubblicati dalla nostra redazione
Ottimizza la tua ricerca:
- individua con precisione le parole chiave specifiche della tua ricerca
- elimina i termini non significativi (aggettivi, articoli, avverbi...)
- se non hai risultati amplia la ricerca con termini via via più generici (ad esempio da "anziano oncologico" a "paziente oncologico")
- utilizza la ricerca avanzata
- utilizza gli operatori booleani (and, or, "")
Idee per la tesi?
Scopri le migliori tesi scelte da noi sugli argomenti recenti
Come si scrive una tesi di laurea?
A quale cattedra chiedere la tesi? Quale sarà il docente più disponibile? Quale l'argomento più interessante per me? ...e quale quello più interessante per il mondo del lavoro?
Scarica gratuitamente la nostra guida "Come si scrive una tesi di laurea" e iscriviti alla newsletter per ricevere consigli e materiale utile.
La tesi l'ho già scritta,
ora cosa ne faccio?
La tua tesi ti ha aiutato ad ottenere quel sudato titolo di studio, ma può darti molto di più: ti differenzia dai tuoi colleghi universitari, mostra i tuoi interessi ed è un lavoro di ricerca unico, che può essere utile anche ad altri.
Il nostro consiglio è di non sprecare tutto questo lavoro:
È ora di pubblicare la tesi