PHP: γη χιλιάδων πλαισίων

Συγγραφέας: Louise Ward
Ημερομηνία Δημιουργίας: 6 Φεβρουάριος 2021
Ημερομηνία Ενημέρωσης: 18 Ενδέχεται 2024
Anonim
iOS App Development with Swift by Dan Armendariz
Βίντεο: iOS App Development with Swift by Dan Armendariz

Περιεχόμενο

Ρώτησέ με ποιο πλαίσιο να χρησιμοποιήσω και πιθανότατα θα έχω μια γκρινιάρης γριά γυναίκα και θα σου πω ότι όλα τα πλαίσια είναι τόσο άσχημα μεταξύ τους. Αυτό δεν σημαίνει ότι είναι όλα άσχημα, ακριβώς, αλλά στην PHP έχουμε έναν αφάνταστα μεγάλο αριθμό πλαισίων (συνήθως αναφέρεται ως N + 1, όπου N είναι ο αριθμός των προγραμματιστών PHP στον κόσμο), και όλοι πιθανώς έχουν νόημα στο άτομο που τους εφευρέθηκε.

Η επιλογή πλαισίων είναι πιθανώς καλύτερη από το να προσπαθείτε να χρησιμοποιήσετε μόνο ένα πλαίσιο, ανεξάρτητα από το τι ακριβώς προσπαθούσατε να δημιουργήσετε, επειδή είναι το «καλύτερο» (με οποιοδήποτε μέτρο «καλύτερο»). Αυτή η επιλογή προσφορών πλαισίου σημαίνει ότι μπορείτε να επιλέξετε κάτι που να ανταποκρίνεται στις ανάγκες του έργου και μπορεί ακόμη και να τεκμηριωθεί. Τα πλαίσια σε οποιαδήποτε πλατφόρμα είναι πραγματικά εκεί για να παρέχουν δομή, επαναχρησιμοποιήσιμες λειτουργικές μονάδες και βιβλιοθήκες και γενικά αποφεύγουν όλες τις βαρετές και επαναλαμβανόμενες εργασίες που σχετίζονται με την οικοδόμηση της ίδιας λειτουργικότητας ξανά και ξανά. Για παράδειγμα, κατά τη δημιουργία CMSes, κάτι πρέπει να επεξεργαστεί και να επικυρώσει τα πεδία φόρμας για μένα. αν αφεθεί στις δικές μου συσκευές, μπορεί να χάσω κάτι σημαντικό και μάλλον θα έκανα τα στοιχεία κάθε έργου που είναι διαφορετικός, παρά αυτά που είναι τα ίδια κάθε φορά!


Πλαίσια πλήρους στοίβας

Πλαίσια πλήρους στοίβας, όπως το Zend Framework, μπορεί να είναι ένα ωραίο μέρος για να ξεκινήσετε για έναν προγραμματιστή χωρίς πολλή εμπειρία αρχιτεκτονικής. Δίνει καλή δομή για να κρεμάσετε μια νέα εφαρμογή και υπάρχει ένα καλό «οικοσύστημα» γύρω από αυτό - πολλά βιβλία, σεμινάρια και κάποια λογική τεκμηρίωση. Εάν προσπαθείτε να δημιουργήσετε μια μεγάλη εφαρμογή η οποία θα διατηρηθεί από πολλούς ανθρώπους, τότε ένα δημοφιλές, ολοκληρωμένο πλαίσιο είναι πιθανό να είναι μια καλή επιλογή, καθώς θα υπαγορεύει αρκετή δομή και θα είναι πολύ γνωστό και κατανοητό.

Η ύπαρξη δομής που βοηθά στον διαχωρισμό είναι πάντα καλή. νωρίς στην καριέρα μου δούλεψα με μερικούς πολύ junior προγραμματιστές και προσπάθησαν να τους διδάξουν το μοτίβο MVC (Model View Controller), το οποίο ήταν σχετικά νέο τότε. Λάβαμε την απόφαση να χρησιμοποιήσουμε το Smarty στο επίπεδο προβολής. εν μέρει, έτσι ώστε οι σχεδιαστές να μπορούν να δουλεύουν με τα πρότυπα πιο εύκολα, και εν μέρει, έτσι ώστε όταν κάποιος ήρθε στο γραφείο μου και είπε "πώς μπορώ να κάνω το X με το Smarty;" Θα μπορούσα να πω "μην κάνετε X στην προβολή!" (εννέα φορές στα 10, αυτή ήταν η απάντηση). Η ύπαρξη πλαισίων μάς βοηθά να βρούμε τον ίδιο διαχωρισμό σε άλλα μέρη της εφαρμογής μας. Πολλοί από αυτούς υποστηρίζουν την ενσωμάτωση σε ένα επίπεδο templating όπως το Smarty ή το νέο μου αγαπημένο, Twig, ώστε να μπορείτε να πάρετε αυτά τα εργαλεία μαζί σας, όποιο πλαίσιο και αν επιλέξετε.


Μειώστε το φορτίο

Υπάρχουν πολλά ελαφρύτερα πλαίσια από το Zend Framework, για παράδειγμα δουλεύω με το CodeIgniter αρκετά. Είναι τόσο ολοκληρωμένο και ανθεκτικό όσο το Zend Framework; Όχι, δεν είναι. Ωστόσο, ως βοηθητικό πλαίσιο για την ταχεία δημιουργία μιας εφαρμογής, είναι χρήσιμο. Σε γενικές γραμμές, τα πλαίσια με λιγότερη «βοηθητική» λειτουργικότητα είναι πιο εύκολο να βρείτε το δρόμο σας καθώς είναι πολύ πιο προφανές πώς τα κομμάτια συνδυάζονται. Σε ένα άγνωστο πλαίσιο (για μένα, αυτά είναι σχεδόν τα πάντα), είναι τα αυτοματοποιημένα κομμάτια που δυσκολεύουν την εργασία και τον εντοπισμό σφαλμάτων.

Αυτό το αίσθημα «χαμένου σε ένα νέο πλαίσιο» είναι αναπόφευκτο και εντελώς απογοητευτικό. ακόμη και ένας έμπειρος προγραμματιστής αισθάνεται σαν αρχάριος όταν δεν ξέρει πώς λειτουργεί κάτι. Εάν είστε πραγματικά άτυχοι, θα έχετε επιλέξει ένα πλαίσιο του οποίου το κανάλι IRC θα σας πει ότι είστε επίσης ηλίθιος! Είναι αυτή η πολύ αρνητική αρχική εμπειρία που θέτει πολλούς ανθρώπους εκτός από τη χρήση ενός νέου πλαισίου ή την υιοθέτηση ενός στην αρχή, και πολύ λίγα πλαίσια κάνουν καλή δουλειά βοηθώντας τους νέους χρήστες σε αυτό το αρχικό εμπόδιο.


Στην PHP έχουμε επίσης ορισμένα πλαίσια που δεν είναι πραγματικά πλαίσια με τον τρόπο που συνήθως χρησιμοποιώ τη λέξη. Έχουμε μερικά υπέροχα πλαίσια συστατικών. συλλογές βιβλιοθηκών που έχουν σχεδιαστεί για χρήση κατά βούληση και για να παίζουν όμορφα μαζί, όπως Zeta Components (προηγουμένως eZ Components) και Symfony Components (έχετε δει τον ιστότοπό τους; Κερδίζουν το βραβείο για το καλύτερο έργο τέχνης!). Το καλύτερο και πιο βυθισμένο από αυτά είναι, φυσικά, οι προσφορές PEAR και PECL της PHP - κάπως ξεχνάμε σε αυτόν τον γενναίο νέο κόσμο των πλαισίων.

Μικροπλαίσια

Τα μικροπλαίσια είναι μια αναδυόμενη τάση στην PHP. Αυτές είναι εξαιρετικά ελαφριές προσφορές που σας βοηθούν να κολλήσετε τα πράγματα πιο γρήγορα μαζί. Ένα καλό παράδειγμα είναι το Slim, το οποίο είναι πολύ γρήγορο και απλό στη χρήση και κατανοεί τις έννοιες RESTful. Βασίζεται στην ιδέα των «διαδρομών», που είναι μοτίβα διευθύνσεων URL. Καταγράφετε μια διαδρομή και δίνετε μια επιστροφή κλήσης που θα πρέπει να επικαλεσθεί όταν ζητηθεί αυτή η διεύθυνση URL.

Οι περισσότεροι προγραμματιστές PHP υιοθετούν ένα πλαίσιο και παραμένουν σε αυτό, ή μπορεί να χρησιμοποιούν ένα στη δουλειά και ένα άλλο για τα χόμπι τους ή τα έργα ανοιχτού κώδικα. Υπάρχει μικρή συναίνεση σχετικά με το "καλύτερο" πλαίσιο για χρήση, ώστε όλοι να κολλάνε μόνο σε όσα γνωρίζουν και το αποτέλεσμα είναι παράλληλη ανάπτυξη τεράστιων αριθμών πλαισίων! Μου αρέσει να έχω μια επιλογή για να διαλέξω, αλλά ανέφερα ότι όλα είναι εξίσου κακά το ένα με το άλλο;

Εάν γνωρίζετε το Zend Framework, τότε καταλήγετε να περιγράφετε τον εαυτό σας ως προγραμματιστή Zend Framework. δεν θα νιώθετε άνετα να γράψετε σε άλλο πλαίσιο μέχρι να έχετε την ευκαιρία να το χειριστείτε και μάλλον δεν θυμάστε πολλές από τις πρώτες λειτουργίες PHP για πράγματα αν δεν τα χρησιμοποιείτε συχνά. Αυτή η ιδέα ότι έχουμε γίνει προγραμματιστές ειδικά για το πλαίσιο, δουλεύοντας μόνο σε επίπεδα αφαίρεσης, είναι λίγο περίεργη για την PHP. Σε τελική ανάλυση, αυτή είναι η γλώσσα "για την επίλυση του προβλήματος στο Διαδίκτυο". Είναι γραμμένο σε C και είναι μια γρήγορη, ελαφριά γλώσσα από μόνη της ... αρκεί να μην περιμένετε να εκτελεστεί μια μεγάλη διαδικασία bootstrap! Από αυτό το πλαίσιο προέκυψε το Μανιφέστο MicroPHP, γραμμένο από έναν άνθρωπο που ονομάζουμε Funkatron (αν και το όνομά του είναι πραγματικά Ed Finkler). Είναι μια σειρά δηλώσεων που λένε ότι είναι εντάξει η κατασκευή ενός αριθμού διαλειτουργικών μικρών ενοτήτων, ότι το μεγαλύτερο δεν είναι καλύτερο και ότι στην πραγματικότητα, η ζωή είναι πολύ σύντομη για την Java - ακόμα κι αν είναι γραμμένη σε PHP.

Διαβάστε Σήμερα
Η κατασκευή της Monument Valley
Περαιτέρω

Η κατασκευή της Monument Valley

Το Monument Valley δημιουργήθηκε από μια ομάδα στο u twogame , με επικεφαλής τον Ken Wong. Εμπνευσμένο από την τέχνη του MC E cher, ιαπωνικές εκτυπώσεις και μινιμαλιστική σχεδίαση 3D, κάθε επίπεδο στο...
10 λαχταριστές γραμματοσειρές μενού εστιατορίου
Περαιτέρω

10 λαχταριστές γραμματοσειρές μενού εστιατορίου

Είτε σχεδιάζετε για ένα εστιατόριο υψηλού επιπέδου είτε για ένα φτηνό και χαρούμενο κοινό φαστ φουντ, το μενού είναι ένα κρίσιμο μέρος του παζλ. Και αυτό πρέπει να λειτουργεί με δύο τρόπους - πρέπει ν...
Επωνυμία Harvard University Press
Περαιτέρω

Επωνυμία Harvard University Press

Το Harvard Univer ity Pre γιορτάζει την εκατονταετή χρονιά με επανασχεδιασμό ταυτότητας. Ενώ το πρωτότυπο, διακριτικό σχήμα ασπίδας έχει κλασική κομψότητα, θεωρήθηκε πολύ περίπλοκο για να λειτουργεί α...