- Καλύτερο performance
- Νέες πρακτικές σε επίπεδο κώδικα
- Υποστήριξη από την ομάδα της PHP
Καλύτερο performance
Η PHP7 βασίστηκε στο phpNG, ένα παρακλάδι της PHP το οποίο αναπτύχθηκε αρχικά με στόχο τη μειωμένη κατανάλωση μνήμης και το αυξημένο performance των εφαρμογών που θα το αξιοποιούσαν. Το αποτέλεσμα; Καλύτερη απόδοση σε σχέση με την PHP 5.6 σε ποσοστό 20% – 110% σε εφαρμογές όπως το WordPress και το SugarCRM. Οι μετρήσεις ήταν τόσο καλές, που το phpNG αποτέλεσε τελικά τη βάση για την PHP7.
Η βέλτιστη χρήση της μνήμης, είναι αυτή που βοηθάει στο να εξασφαλιστεί καλύτερο performance, ενώ παράλληλα ένας server με τους ίδιους πόρους, μπορεί πλέον να ανταπεξέλθει σε μεγαλύτερα μεγέθη κίνησης δεδομένων. Αυτό σε συνδυασμό με sites και εφαρμογές που εφαρμόζουν με τη σειρά τους βελτιστοποιημένες πρακτικές σε επίπεδο κώδικα, μπορούν να εξασφαλίσουν περισσότερα requests και μεγαλύτερες ταχύτητες σε ποσοστό έως και 100% για τους επισκέπτες τους.
Στα συγκριτικά tests φαίνεται να κερδίζει στα σημεία: στην πλατφόρμα του Drupal ηPHP7 προσφέρει μεγαλύτερο performance από την HHVM ενώ στις νεότερες εκδόσεις του WordPress (από την 4.1.1 και μετά) η PHP7 μπορεί να εκτελέσει σχεδόν το διπλάσιο αριθμό requests.
Παρακάτω μπορείς να δεις τα ανάλογα στοιχεία από την Performance Team του Zend, για το Drupal και το WordPress.
Νέες πρακτικές σε επίπεδο κώδικα
Πέρα από την αυξημένη απόδοση, η PHP7 φέρνει και νέες πρακτικές για τους ίδιους τους προγραμματιστές, μερικές από τις οποίες μπορείς να δεις στη συνέχεια:
- Καλύτερη διαχείριση των errors
Μέσα από τη νέα έκδοση της PHP, διευκολύνεται η διαχείριση των errors. Στις εκδόσεις της PHP5, συναντούσαμε έναν κλασικό μηχανισμό μέσω του οποίου αναφέρονταν τα errors. Στην PHP7, όμως, η διαδικασία αναγνώρισης και διαχείρισης απλοποιείται, αφού πλέον ο χρήστης μπορεί να αντικαταστήσει ένα error με ένα exception. - Εισαγωγή του νέου Spaceship Operator
Μια νέα λειτουργία που συναντάμε στην PHP7 είναι αυτή της συνδυαστικής σύγκρισης, μέσω του Spaceship Operator, που συμβολίζεται ως ⇔. Με τον συγκεκριμένο τελεστή εξοικονομείται χρόνος και γραμμές κώδικα που θα χρειάζονταν για να γίνουν οι συγκρίσεις με τους παραδοσιακότερους τρόπους του μικρότερου από (<), ίσου (=) και μεγαλύτερου από (>). - Εισαγωγή των Return Types
Πρόκειται για ένα χαρακτηριστικό που συναντούσαμε ήδη σε άλλες γλώσσες προγραμματισμού και πλέον υποστηρίζεται και στην PHP7. Μέσω του Return Types, οι προγραμματιστές έχουν πλέον τη δυνατότητα να ορίζουν εκ των προτέρων τον τύπο της μεταβλητής που πρέπει να επιστρέφεται από κάποια συνάρτηση. Το συγκεκριμένο feature καθιστά τον κώδικα πολύ πιο ευανάγνωστο, ενώ μπορεί να βοηθήσει πολύ στη διαδικασία του debugging ή σε περίπτωση που ένας προγραμματιστής θέλει να επεξεργαστεί έναν κώδικα που έχει γραφτεί από κάποιον άλλο. - Υποστήριξη από την ομάδα της PHP
Τέλος, ένα πλεονέκτημα της PHP7 είναι ότι υποστηρίζεται από το άμεσο support της ομάδας της PHP.net. Οι developers της PHP εξακολουθούν να υποστηρίζουν κάθε έκδοση για περίπου 3 χρόνια από την διάθεσή της στο κοινό. Αυτό σημαίνει ότι όλα τα bugs και τα κενά ασφαλείας που εντοπίζονται, επιδιορθώνονται άμεσα, ώστε να αποφεύγονται προβλήματα στους χρήστες.
Συμβατότητα PHP7
Όπως συμβαίνει σε όλες τις περιπτώσεις νέων προϊόντων, είναι πιθανό να προκύψουν ζητήματα συμβατότητας με την PHP7, γι’ αυτό θα χρειαστεί να κάνεις μερικές δοκιμές αν αποφασίσεις να την επιλέξεις για το site σου.
Ήδη όλες οι δημοφιλείς CMS πλατφόρμες (WordPress, Drupal, Joomla!, Magento κ.λπ.) έχουν διαθέσει νέα updates τα οποία είναι συμβατα με την PHP7, οπότε αν έχεις εγκαταστήσει τις τελευταίες εκδόσεις στο site σου, το πιθανότερο είναι ότι δεν θα αντιμετωπίσεις κάποιο πρόβλημα.
Τα σημεία στα οποία θα χρειαστεί να πραγματοποιήσεις συγκεκριμένους ελέγχους, είναι τα plugins και τα themes του site σου. Οι ομάδες που αναπτύσσουν τις συγκεκριμένες εφαρμογές, ειναι συνήθως πολύ μικρότερες σε μέγεθος και είναι πιθανό να καθυστερήσουν να διαθέσουν νεότερες εκδόσεις που θα είναι συμβατές με την PHP7.