2012-12-05 13 views
7

Ho fatto molte ricerche su OO e MVC per PHP e ho quasi fatto la scelta di passare a CodeIgniter per un sito Web esistente su larga scala che gestisco. Ritengo che l'utilizzo di un ambiente OO + MVC abbia enormi vantaggi organizzativi e prestazionali e, auspicabilmente, una maggiore velocità di sviluppo rispetto alla struttura funzionale/procedurale esistente attualmente utilizzata dal sito.Come convertire gradualmente un sito in CodeIgniter?

Tuttavia, a causa delle dimensioni del sito, desidero trasferire gradualmente il codice alla struttura di CodeIgniter, con un periodo di transizione in cui parti del sito sono in CI e altre nel vecchio stile.

Ci sono suggerimenti sul modo migliore per farlo dal punto di vista della struttura del codice, riducendo al minimo la quantità di codice duplicato? Sono piuttosto nuovo anche per OO e sento che graduale è il modo migliore per farlo a causa della curva di apprendimento.

+2

È difficile dire da dove cominciare o quale dovrebbe essere l'avanzamento. Anche se è una buona domanda, è molto ampio rispondere a questa domanda ... Ad ogni modo, se dovessi svolgere un simile compito, ricomincerei da capo con la scrittura/scrittura di modelli, controller e viste che utilizzeranno i modelli, le forme fino a quando tutto funzionerà a Almeno entro frontend - su una macchina locale. Il prossimo passo sarà riscrivere la parte di backend se ce ne fossero. Dopo averlo fatto e lavorato lo avrei finalmente pubblicato. – shadyyx

+0

per davvero bisogno di maggiori dettagli - cosa fa il tuo sito? il database e la versione PHP rimarranno gli stessi? quali miglioramenti stai cercando? – cartalot

risposta

2

Si potrebbe installare CI in una cartella e reindirizzare (anche se .htaccess) soltanto le richieste che si desidera gestire con CI. Oltre a questo, tutto dovrebbe funzionare come al solito e non sarà necessario modificare gran parte delle funzionalità attuali. Più sezioni funzionano su CI, più regole di reindirizzamento avrai.

+0

Sono d'accordo con questo approccio. Se si procede con la riscrittura del sito da zero, sarà necessario sospendere i nuovi sviluppi fino al termine della riscrittura. Analizza l'app in termini di sezioni e guarda prima cosa puoi riscrivere/integrare. Non ho usato CI, ma immagino che non sia necessario utilizzare inizialmente il suo sistema di modelli - ottenere cose che funzionano in azioni e visualizzazioni, e poi passare ad un approccio basato sul modello una volta che è vivo e inserito. – halfer

+0

Mentre gli altri suggerimenti sono davvero buoni, penso che questo sia il migliore per un trasferimento graduale. Come ha menzionato @halfer, consente agli sviluppi di continuare durante il trasferimento del sito su cui è estremamente importante in questo caso. – David

2

Penso che sia necessario determinare le entità dipendenti nel database (modelli) e iniziare prima con esse come alcuni contatti, la registrazione degli utenti e così via.

Il modo più affidabile e sicuro, è necessario copiare il sito di lavoro corrente su una macchina locale e iniziare a farlo a poco a poco, fino a quando non lo si finisce, caricarlo sul server Web pubblico.

0

Vorrei solo scrivere l'intero sito (quasi) da zero, localmente, poi quando tutto funziona e testato caricarlo sul server.

Con "quasi" da zero intendo che potresti copiare parte dell'HTML in Visualizza file, e forse usare parte del PHP esistente per ricomporre parti del backend, ma penso che dovrai scrivere la maggior parte di dall'inizio Ho realizzato un web semi-large-scale in modo orientato agli oggetti usando il pattern MVC, e persino trasferirlo a CodeIgniter non sarebbe un compito banale, tanto meno un sito web scritto in modo completamente procedurale. Questa è la mia opinione.

Problemi correlati