[Yii2] Prime impressioni

ciao a tutti, se vi state domandando com’è Yii2, volevo raccontarvi le mie impressioni a 48 ore di studio. Da un punto di vista dell’ultimo degli ultimi degli esperti, ma proprio per questo magari lo trovate interessante.

  • I REQUISITI

Yii2 supporta da PHP 5.4 in poi, per cui la mia “pigrizia” nel rimandare l’upgrade del mio php mi ha subito “costretto” a fare questo passo. Io utilizzo Windows7-Php-Apache. Ho scaricato la 5.4.33 VC9, fatto una copia del mio vecchio PHP e messa brutalmente lì la nuova versione. Poi ho fatto una di quelle cose “o la va o la spacca” ed ho copiato il file ini della 5.3 nella 5.4 e…stranamente…ha funzionato alla prima botta! Ho dovuto solo aggiornare qualche dll dentro ext.

  • IL COMPOSER

Questo tale, a me sconosciuto è lo strumento principale con cui si scarica lo stesso Yii2 e le varie estensioni. Questo perchè sopra a tutto c’è github (ho dovuto anche crearmi l’account gratuito) che utilizza questo canale di distribuzione. Forse x gli sviluppatori Linux si integra molto bene, ma sotto Windows ho dovuto sbricchettarci non poco. Come si dice…o così o pomì!

  • BASIC o ADVANCED

eh bel dilemma. Orgogliosamente direi Advanced, ma essendo in fase di studio ho preferito Basic. La differenza è nella struttura della App. Nella Advanced sono sempre divisi il lato front-end, dal lato back-end. Consigliata per applicazioni più complicate e per lavori di gruppo sulla stessa app. Ad ogni modo questa netta distinzione ve la ritroverete sempre costantemente, anche nella guida di Yii2, così come nelle estensioni, spesso spiegheranno come fare una cosa nella Basic e come farla nella Advanced

  • HELLO WORLD

Un po’ per culo, un po’ per magia ecco comparire la mia prima App in Yii2. La prima differenza che noto è che la index.php principale non è nella root dell’applicazione ma dentro una nuova cartella chiamata web. Si puo’ modificare htaccess per impostare questa cartella come root, ma poi mi sputtanava tutte le altre app fatte con Yii1 che cmq nel frattempo ancora coesistono nel mio ambiente di sviluppo.

Noto con piacere una barra nel bottom della pagina che è lo Yii-Debugger che presumo sarà un comodo alleato per il futuro.

  • PRIME DIFFERENZE A CALDO

Avendo scelto il tema Basic, si presenta come la struttura Yii1 ma si notano subito alcune cartelle nuove:

  • Vendor: dove troveremo oltre che l’app di Yii2, tutte le estensioni di terzi che installeremo

  • Web: contiene tutti i file visibili dal web, quindi mi sembra aumenti non di poco la sicurezza

  • il config.php è stato "smembrato" estraendo db.php dove settiamo i parametri del db che poi viene incluso cmq dentro il config.php. Quindi è solo un ordinata logica. Di fatto cambia poco

  • NAMESPACE

è ovviamente la più grande differenza che a occhio colpisce quando andiamo a vedere il codice. E forse è quello che mi ha fatto accantonare l’ipotesi di fare l’upgrade da yii1 a yii2, troppo sbattimento a riscrivere in ogni script i namespace corretti. Ma io avevo una app appena iniziata x cui, faccio prima a riscriverla.

-COMPOSER.JSON

composer, ancora composer…tutto gira col composer. In pratica se ho capito bene in questo file ci sono le istruzioni che composer legge quando facciamo l’update del sistema.

La cosa che ancora non ho capito è questa:

  • Se ho 4 estensioni e voglio installare la 5, lanciando il composer update, me le ripassa tutte quante ed obiettivamente è lento. Circa 3 minuti di lavorazione dalla dubbia riuscita. Ho visto che si puo’ lanciare direttamente solo il singolo download, ma sono ancora poco pratico.

  • CONCLUSIONI

Concludo perchè vi avrò annoiato a morte forse, ad ogni modo ho scoperto con piacere che tutti i vari widget di bootstrap sono compresi dentro Yii2, quindi è già una buona base di partenza. Altre osservazioni più complicate le lascio ai più esperti.

Spero che a qualcuno possa essere servito questo post. A me sicuramente x ripassare e fare mente locale su quanto studiato in questi 2 giorni.

saluti

interessante post, io usavo yii2 in fase beta, ottimo elenco. grazie