Codeigniter & Yii2: Οι πρώτες εντυπώσεις – διαφορές.


Προς την αναζήτηση εργασίας για το Portfolio μου αναγκάστηκα να δοκιμάσω 2 frameworks: To CodeΙgniter και το Yii2. Και στα 2 δεν εντρύφησα σε τόσο βάθος έτσι ίσως να μην είναι και τόσο αντικειμενικά. Η χρησιμότητα του framework είναι όταν έχεις να κάνεις πολλά πράγματα σε λιγό χρόνο έτσι κάποια στανταράκια όπως σύνδεση στην βάση κλπ κλπ τα κάνει από μόνο του, συν ότι έχεις ένα «μπούσουλα» στο που είναι η λογική και στο που είναι η «φάτσα» της web εφαρμογής σου. Έτσι ο hipseras frontend developer που έχει την καλλιτεχνική φλέβα με το macbook και σε κριτικάρει με βλέμμα υπεροψίας τις επιλογές σου σε ταινίες, δεν θα ανακατεύεται με τον ιδρωμένο, που έχει να ξυριστεί από την Ιουρασική περίοδο και έχει για γυναίκα ένα dakimakura και κανένα θηλυκό δεν θέλει να τον πλησιάσει, backend developer. (Πλάκα κάνω αλλά you got the point!)

Και επειδή δεν θέλω να προλογίσω τόσο πολύ θα πάω κατ’ ευθίαν στο ψητό.

Υii2:

Το Yii2 framework είναι ένα framework υπό την BSD Licence από τoν Qiang Xue που το έφερε στον μάταιο κόσμο της πληροφορικής το 2008. Ένα πράγμα που λάτρεψα είναι ότι απλά παίζει προηγουμένως είχα δομικάσει το Laravel και δεν μπορούσα να τρέξω επιτυχώς ούτε 2-3 βασικά πράγματα. Αυτό το έβαλα διάβασα το manual και μπαμ έπαιζε.

Ακόμα μου άρεσε το εσνωματομένο Gii plugin που μου έκανε από μόνο του ΠΟΛΥ κώδικα που θα έγραφα με το χέρι, και ποιο συγκεκριμένα κώδικα που συμπεριλαμβάνουν ενέργειες που έχουν να κάνουν με προσθήκη, ανανέωση, αναζήτηση και διαγραφή δεδομένων από την βάση, έτσι μετά μπορώ να κάνω αλλαγές όσες θέλω χωρίς κόπο. Ιδιαίτερα χρήσιμο όταν έχεις αρκετούς πίνακες. Ακόμα μου αρέσει ο τρόπος που δένει τους συσχετισμούς των πινάκων πάνω στο μοντέλο απλά σαν instance variable του μοντέλου που αυτή με την σειρά της δείχνει ένα μοντέλο (που αντιπροσωπεύει έναν άλλο πίνακα) .

Ακόμα για το frontend εκεί η απόψεις διαφέρουν για όσους δεν το κατέχουν το σπορ είναι βολικό λόγο ότι έχει helpers που κάνουν την ζωή ποιο εύκολη με λίγη βασική html και το css που έρχεται μαζί με το framework κάνεις μια εφαρμογή που δεν θα να πάρει ο χρήστης τα μάτια του και να τα δώσει πίσω στον Θεό λόγο ότι απλά δεν βλέπεται η εφαρμογή σας. Για πίνακα και pagination έχει αρκετά εύχρηστο κώδικα και modules όπως και για κάποια πραγματάκια όπως capcha που δεν θέλουν configutation ιδιαίτερο. Πέρα από αυτό έχει ενσωματωμένο jquery και μηχανισμό που να βάζει αυτόματα ότι javascript script θες σε κάθε σελίδα απλά τα τοποθετείς σε ένα συγκεκριμένο αρχείο μέσα σε ένα πίνακα. Αλλά ίσως να το βρουν οι φανατικοί του frontend λίγο στιφνό και δύσκολο στο να παραμετροποιούν το css.

Τέλος ένα πράγμα έχω να πω. Αν θες ένα aplication τσακ μπαμ το Yii2 είναι η ιδανικότερη λύση.

Codeigniter:

Aυτό το framework είναι λιτό σε σχέση με το Yii2 και δίνει περιθώρια για πολλές customιες.  Για κάποιο λόγο μου δίνει την αίσθηση του μικρού. Πράγμα που μου άρεσε είναι ότι το index είναι στο root folder της εφαρμογής σου έτσι δεν θες .htaccess για να παίζεις χωρίς να χρειαστείς να πηγαίνεις σε subfolders για να βρεις το index.php (Αν και στο openshift δεν βρήκα ιδιαίτερο πρόβλημα), χωρίς να γνωρίζω αν ενδέχεται να είναι κενό ασφαλείας αυτό.

Μου αρέσει ο τρόπος που κάνει render τα views έχεις τεμαχισμένη την html σε header footer και content και για διαφορετική σελίδα θες διαφορετικό header απλά μπορείς να κάνεις render το διαφορετικό πράγμα που θές. Πέρα από αυτό άνετα κάνεις και views σε json και xml με το δικό σου template. Δεν έχει περιορισμούς στο πως θα κάνεις render διαφορετικά views. Ακόμη αγαπημένε hipstera frontend developer σου έχω καλά νέα στο html κάνεις ότι θες παίζεις άνετα μπάλα κάνεις ότι θες. Είναι αρκετά ευέλικτο στο frontend σε σχέση με το yii.

Αλλά από την άλλη δεν μου αρέσει ο τρόπος που βάζεις CAPTCHA είναι λίγο ποιο περίπλοκος σε σχέση με το yii. Λόγο ότι δεν παίζει και πολύ μπάλα το convention αλλά περισσότερο το configuration. Ειδικά στο ιδιαιτέρως καλογραμμένο manual προτείνει ότι χρειάζομαι και να κάνω ένα table για CAPTCHA. WTF?! Gimme a break.

Και εδώ είναι ανάγκη να αναφέρο το καλλογραμμένο manual ούτε βιβλία ούτε τίποτα άλλο το manual είναι 1000 φορές καλύτερο του Yii2, τα έχει ΟΛΑ, μα ΟΛΑ όμως. Συν ότι στον φάκελο user_guide το έχει ενσωματωμένο έτσι δεν θες να μπεις στον κόπο ούτε να το gooγλάρεις και έτσι στο τραίνο η εκεί που δεν πιάνει internet μπορείς να παίζεις μπάλα για να περνά η ώρα σου.

Με απλά λόγια είναι ένα small good framework.

 

Επίλογος:

Σας είπα την γνώμη μου και τι μου άρεσε από 2 framworks που είδα για τις επαγγελματικές μου ανάγκες. Σας δίνω και ένα δημοψήφισμα για ποιο από τα 2 σας αρέσει.

Advertisements

Σχολιάστε

Εισάγετε τα παρακάτω στοιχεία ή επιλέξτε ένα εικονίδιο για να συνδεθείτε:

Λογότυπο WordPress.com

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό WordPress.com. Αποσύνδεση / Αλλαγή )

Φωτογραφία Twitter

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Twitter. Αποσύνδεση / Αλλαγή )

Φωτογραφία Facebook

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Facebook. Αποσύνδεση / Αλλαγή )

Φωτογραφία Google+

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Google+. Αποσύνδεση / Αλλαγή )

Σύνδεση με %s