mi sto avvicinando al mondo Yii leggendo quasi dappertutto che è un ambiente fantastico e aiuta notevolmente le fasi dello sviluppo di qualsiasi progetto.
Ora io ho la necessità di sviluppare un gestionale completo, cioè un CRM con fatturazione ecc…ecc…, insomma una marea di cose.
Anzichè fare tutto a mano con php+mysql ho deciso di provare ad appoggiarmi ad un framework. Ora chiedo è fattibile costruire un programma così complesso con yii? mi da la libertà necessaria di fare quello che voglio?
Il problema è questo: su internet dovunque io vada a vedere non esistono tutorial decenti, tutt’al più un tutorial per farsi un blog o poco più. Nessun esempio concreto e approfondito. Spesso negli articoli si tralasciano anche parecchie cose dandole per scontate con il risultato che non so neanche da dove cominciare.
Ma da dove hai comunciato? Io sto leggendo la guida di yii dal sito ufficiale e come suggeriva un utente tempo fa qui sul forum anche un’altra guida in italiano.
Hai fatto pratica con i tutorial di base per esempio creare un blog e poi li hai sviluppati ulteriormente?
E per il gestionale che stai facendo ora le parti in cui non puoi usare yii le fai in php puro e poi le integri all’interno? Quindi alla fine vale la pena oppure, come alcuni mi hanno confermato, alla fin fine meglio fare tutto a mano?
qui sul forum, si consiglia sempre più l’approccio graduale.
Chiaramente non conoscendo yii, non sai di cosa ti puoi avvalere durante lo sviluppo
e che tecniche ti conviene utilizzare per disegnare la tua applicazione al fine di lavorare
in maniera ottimale con yii.
Quindi il consiglio di farti il tuo blog o app di esempio, seguendo la guida, è sempre valido.
Senza contare che una volta presa dimestichezza col codice puoi guardarti un pò di codice
già scritto e ben strutturato:
Qui le informazioni generali: http://zurmo.org/about (oltre a yii utilizza redbean… io non c’ho avuto mai a che fare, ma mi son ripromesso di guardarmelo)
Come ambiente di programmazione cosa usi? Io mi trovo bene con netbeans, anche se rimpiango gli ambienti di sviluppo tradizionali (C++, delphi ecc…) che permettevano di fare debug ecc tutto in maniera molto più comoda
Provo a rispondere ad alcune tue domande Deviance.
Se puoi farlo con php, puoi farlo anche con Yii. Yii è scritto in php. Yii ed un qualsiasi framework, ti mettono nelle condizioni di scrivere meno codice e di facilitarti nello sviluppo di qualsiasi applicazione.
Quando usi un framework, devi imparare a seguire i suoi standard.
Ne verrai fuori semplicemente … programmando con Yii.
Vai da chi ti ha detto che ti conviene fare tutto a mano per fare una applicazione complessa come quella che descrivi e di loro di cambiare hobby.
Il consiglio che mi sento di darti, è quello di imparare a testare il codice.
anche io come sensorario ti posso dire che fare applicazioni/siti web grossi con Yii è veramente facile.
Io ero uno di quelli che faceva tutto a mano… ma da quando sono passato al framework ci metto la metà (a volte anche meno) del tempo per portare a termine tutto il lavoro!
E questa non è una cosa da poco!
La cosa che mi ha meravigliato di più è stata la parte di sicurezza web. Fenomenale!
Posso solo che consigliarti di usare Yii.
All’inizio sarà un pò difficile capire, se hai sempre fatto a mano, le regole del framework (questo vale per tutti i framework), ma una volta imparato andrai di una velocità assurda.
Il primo scoglio da superare è quello del "non ho tempo". In genere molti iniziano ad usare Yii ed alla prima difficoltà pensano ad una sola cosa: "non sto scrivendo codice, quindi sto perdendo tempo". La verità è che usare un framework (vale per Yii come per altri framework) rende lo sviluppo molto più veloce. Quindi ti invito a concentrarti su un concetto espresso da una frase di Abraham Lincoln: "Se avessi otto ore per tagliare un albero userei le prime sei per affilare la mia ascia."
In ogni caso ti sconsiglio di strutturare il database adesso. Tanto più l’applicazione è grossa, quanto più io cercherei di utilizzare delle metodologie agili. Pensi che utilizzerai un approccio TDD per realizzare questo progetto?