Προγραμματισμός

Το τέλος της γραμμής για PHP στα Windows

Η PHP μπορεί να υπήρχε για λίγο, αλλά εξακολουθεί να είναι ένα σημαντικό εργαλείο ανάπτυξης Ιστού. Με βάση ένα δηλωτικό μοντέλο προγραμματισμού, η PHP επεκτείνει τη γνωστή σύνταξη HTML με πρόσθετες εντολές και λειτουργίες, προσθέτοντας in-line προγραμματισμό και επεκτάσεις στο περιεχόμενο του Ιστού σας. Αυτό το μοντέλο το έχει καταστήσει σημαντικό μέρος πολλών συστημάτων διαχείρισης περιεχομένου, παρέχοντας ένα πλαίσιο για τη διαχείριση περιεχομένου που παρέχεται από τη βάση δεδομένων και τη μορφοποίηση σελίδων χρησιμοποιώντας δυναμικά πρότυπα.

Το μέλλον της PHP στα Windows

Πολλά από αυτά τα CMS λειτουργούν μέσα σε εταιρικά τείχη προστασίας, φιλοξενώντας intranets και εργαλεία εσωτερικής συνεργασίας. Επομένως, δεν προκαλεί έκπληξη το γεγονός ότι οι επίσημες εκδόσεις PHP των Windows προέρχονται από τη Microsoft, ως ένα από τα πιο ανοιχτά έργα ανοιχτού κώδικα.

Όμως όλα τα καλά πράγματα τελειώνουν και η Microsoft ανακοίνωσε πρόσφατα ότι δεν θα παράγει μια επίσημη έκδοση PHP 8 για Windows. Μέχρι τώρα, παραδίδει εκδόσεις Windows ως δυαδικά αρχεία και πηγαίο κώδικα στο windows.php.net για IIS και άλλους διακομιστές Web των Windows. Ωστόσο, αυτό θα σταματήσει στο μέλλον, καθώς η ομάδα που παρέχει Windows PHP προχωρά σε άλλα έργα καθώς το PHP 7 περνά από τον κύκλο ζωής υποστήριξής του.

Τι προτείνει αυτή η αλλαγή πολιτικής για το μέλλον της PHP στα Windows; Και, το πιο σημαντικό, ποιες είναι οι εναλλακτικές λύσεις εάν θέλετε να εκμεταλλευτείτε την ευκαιρία να αλλάξετε τον τρόπο που εργάζεστε;

Ναι, υπάρχει μέλλον

Πρώτον και το πιο σημαντικό, το PHP για Windows δεν θα εξαφανιστεί. Είναι πολύ σαφές ότι υπάρχει κάτι παραπάνω από αρκετό για κάποιον να συνεχίσει να δημιουργεί και να διανέμει μια έκδοση των PHP των Windows πέρα ​​από την PHP 7. Η Microsoft δεν θα συνεισφέρει άμεσα πόρους και διακομιστές για τις εκδόσεις, αλλά περισσότερο από πιθανό, θα δωρίσει άδειες και διακομιστές σε το έργο PHP για να διασφαλιστεί ότι, τουλάχιστον, μια κατασκευή Windows θα βγει από την αυτοματοποιημένη διαδικασία PHP CI / CD (συνεχής ολοκλήρωση / συνεχής παράδοση).

Εναπόκειται στην ομάδα της PHP να αναπτύξει ένα σύνολο δεξιοτήτων των Windows για να διασφαλίσει ότι εκτελούνται οι σωστές δοκιμές και ότι ο κώδικας βελτιστοποιείται σωστά, διασφαλίζοντας ότι οι σωστές ρυθμίσεις κατασκευής χρησιμοποιούνται στο Visual Studio. Αν και αυτό δεν πρέπει να είναι πολύ δύσκολο, δεν είναι το ίδιο με το να έχουμε αφιερωμένους πόρους από μια από τις μεγαλύτερες εταιρείες λογισμικού στον κόσμο.

Εναλλακτικά, υπάρχουν και άλλες εκδόσεις PHP των Windows, που δημιουργήθηκαν από ένα συνδυασμό εταιρειών τρίτων με τα δικά τους εργαλεία PHP και από εθελοντές που δημιουργούν από τη βάση κώδικα ανοιχτού κώδικα. Εάν θέλετε υποστήριξη, τότε μάλλον θα πρέπει να επιλέξετε μια εμπορική έκδοση PHP, ενώ οι ανοιχτές κατασκευές είναι ιδανικές για τη δημιουργία ενός περιβάλλοντος ανάπτυξης PHP των Windows.

Χρήση WSL για ανάπτυξη PHP

Εάν αναζητάτε εναλλακτικές λύσεις, η πλατφόρμα εφαρμογών που φιλοξενείται από το cloud της Azure App Service της Microsoft υποστηρίζει την PHP, αν και εδώ εκτελείται σε Linux και όχι σε Windows. Εάν δημιουργείτε κώδικα για αυτό, είναι πιθανό να θέλετε μια έκδοση Linux PHP στο επίκεντρο της διαδικασίας ανάπτυξης, στοχεύοντάς την με τα εργαλεία απομακρυσμένου χώρου εργασίας στον κώδικα Visual Studio. Υπάρχουν πολλές διαφορετικές επεκτάσεις PHP για κώδικα, από την υποστήριξη IntelliSense έως εργαλεία εντοπισμού σφαλμάτων και μορφοποίησης κώδικα.

Η εγκατάσταση της PHP στο WSL (Υποσύστημα Windows για Linux) είναι αρκετά εύκολη, με όλες τις εξαρτήσεις που χρειάζεστε να εγκατασταθούν μέσω του επιλεγμένου διαχειριστή πακέτων. Η εγκατάσταση της PHP σε μια παρουσία του Ubuntu WSL θα εγκαταστήσει και θα διαμορφώσει τον διακομιστή Web Apache, ώστε να μπορείτε γρήγορα να μεταβείτε από τη σύνταξη και τη δοκιμή κώδικα στην εκτέλεση σε διακομιστή Web παραγωγής. Η εγκατάσταση διαρκεί μερικά λεπτά, με όλα έτοιμα να εκτελεστούν μέσα στο τερματικό των Windows και προσβάσιμα από το Visual Studio Code που εκτελείται εντός των Windows. Δεν έχει σημασία αν χρησιμοποιείτε WSL 1 ή WSL 2, έχετε την ίδια εμπειρία με οποιαδήποτε από τις δύο εκδόσεις.

Με μια παρουσία Linux PHP που εκτελείται στον υπολογιστή σας, μπορείτε πλέον να δημιουργήσετε μια εφαρμογή PHP και να τη δοκιμάσετε πριν την αναπτύξετε σε Azure App Services ή σε έναν φιλοξενούμενο διακομιστή Web. Εάν χρησιμοποιείτε το WSL 2, αυτό το νέο μοντέλο ανάπτυξης μπορεί να χρησιμοποιηθεί με τις τελευταίες εκδόσεις του Docker Containers, χρησιμοποιώντας τον υπολογιστή ανάπτυξης για να δημιουργήσετε κώδικα στο WSL και στη συνέχεια να το συσκευάσετε ως κοντέινερ για ευκολότερη ανάπτυξη σε διακομιστές, είτε στο δίκτυό σας, μια υπηρεσία φιλοξενίας ή το δημόσιο σύννεφο.

Η χρήση της PHP σε Linux μέσω WSL είναι πιθανότατα η λιγότερο ενοχλητική επιλογή για την ανάπτυξη της PHP στα Windows, αλλά μια εναλλακτική προσέγγιση μπορεί να είναι η εργασία με ένα πιο σύγχρονο μοντέλο ανάπτυξης Web. Έχετε πολλές επιλογές: είτε παραμείνετε στο οικοσύστημα της Microsoft χρησιμοποιώντας το ASP.NET ή μεταβείτε σε ένα μοντέλο πολλαπλών πλατφορμών που βασίζεται στη στατική ανάπτυξη ιστότοπων χρησιμοποιώντας προσεγγίσεις όπως το Jamstack.

Νέα μοντέλα ανάπτυξης: .NET Blazor και Azure Static Web Apps

Ένα πράγμα είναι ξεκάθαρο: το δηλωτικό μοντέλο ανάπτυξης εφαρμογών Ιστού που χρησιμοποιείται από την PHP δεν πάει μακριά. Ένα εύλογο επιχείρημα για το τέλος της επίσημης υποστήριξης της Microsoft για την PHP είναι ότι οι νεότερες τεχνολογίες της Microsoft μπορούν να σας δώσουν παρόμοιες επιλογές ανάπτυξης, ενώ χρησιμοποιούν λιγότερους πόρους και εξακολουθούν να λειτουργούν σε πλατφόρμα και με έναν χάρτη πορείας που υποστηρίζει νεότερες τεχνολογίες Web.

Το ASP.NET Core είναι ένα περιβάλλον πολλαπλών πλατφορμών που χρησιμοποιεί κώδικα .NET από την πλευρά του διακομιστή για την παράδοση στοιχείων HTML και JavaScript. Με βάση τον φορητό χρόνο εκτέλεσης .NET Core, η σύνταξη του ASP.NET Core προσφέρει τεχνικές δηλωτικού προγραμματισμού παρόμοιες με την PHP. Ωστόσο, η μεγάλη διαφορά έρχεται όταν τη χρησιμοποιείτε σε συνδυασμό με το μοντέλο προγραμματισμού Blazor από την πλευρά του διακομιστή.

Με έμφαση σε εφαρμογές μιας σελίδας στο Web, ο Blazor Server εκτελεί κώδικα ASP.NET στον διακομιστή Web σας, συγκεντρώνοντας περιεχόμενο σε προ-αποδοθέντα στοιχεία Web με σύνδεση Signal R μεταξύ περιεχομένου προγράμματος περιήγησης και υπηρεσιών back-end. Αυτή η προσέγγιση έχει το πλεονέκτημα ότι απαιτεί σχετικά μικρό εύρος ζώνης, εις βάρος κάποιου λανθάνοντος χρόνου με σύνδεση μετ 'επιστροφής μεταξύ διακομιστή και προγράμματος περιήγησης που απαιτείται για κάθε αλληλεπίδραση. Η προ-απόδοση περιεχομένου με αυτόν τον τρόπο μπορεί να βοηθήσει τους χρήστες να αισθανθούν ότι μια εφαρμογή είναι πιο ευαίσθητη, με τις αλληλεπιδράσεις να ανανεώνουν τα στοιχεία του περιβάλλοντος χρήστη.

Η πρόσφατη κυκλοφορία των Azure Static Web Apps στο πλαίσιο των Υπηρεσιών εφαρμογών Azure έφερε έναν νέο τρόπο δημιουργίας και χρήσης περιεχομένου Ιστού σε Azure και Windows. Δημιουργώντας ιστότοπους τοπικά χρησιμοποιώντας το Visual Studio Code και φιλοξενώντας περιεχόμενο στο GitHub, μια προσαρμοσμένη ενέργεια του GitHub αναπτύσσει ενημερωμένο περιεχόμενο στο Azure. Οι ιστότοποι δημιουργούνται χρησιμοποιώντας HTML, JavaScript από την πλευρά του πελάτη και συνδέσεις API σε βάσεις δεδομένων και άλλες υπηρεσίες.

Όπως το Blazor και το PHP, το Jamstack ακολουθεί μια προσέγγιση που βασίζεται σε πρότυπα για τη σχεδίαση ιστότοπου, αν και είναι λιγότερο κατάλληλο για παραδοσιακά CMSes και περισσότερο για περιεχόμενο που βασίζεται σε αρχεία που μπορεί να διανεμηθεί μέσω δικτύων παράδοσης περιεχομένου, χρησιμοποιώντας τα για να αποθηκεύσει το περιεχόμενο πιο κοντά στους χρήστες σας. Μπορείτε να δημιουργήσετε έναν ιστότοπο Azure Static Web Apps βάσει περιεχομένου χρησιμοποιώντας τεχνικές Jamstack, αλλά πρέπει να είστε προετοιμασμένοι για την αναδημιουργία ολόκληρου του ιστότοπου κάθε φορά που δημοσιεύετε οποιοδήποτε νέο περιεχόμενο.

Το τέλος της υποστήριξης της Microsoft για τη δική του κατασκευή PHP δεν είναι καταστροφή. Είναι ένα σημάδι ότι οι προτεραιότητες του Redmond έχουν αλλάξει. τεχνολογίες όπως το WSL και το Azure που φιλοξενούνται Linux προσφέρουν εναλλακτικές διαδρομές για τη δημιουργία και την εκτέλεση κώδικα PHP.

Είναι επίσης ένα σημάδι ότι άλλες, πιο σύγχρονες προσεγγίσεις για την ανάπτυξη εφαρμογών Ιστού ενδέχεται να ευθυγραμμιστούν στενότερα με την τρέχουσα διαδρομή που επικεντρώνεται στο cloud της Microsoft, με βάση το .NET και τις σύγχρονες τεχνικές ανάπτυξης εφαρμογών. Ό, τι κι αν αποφασίσετε να κάνετε, έχετε πολλές επιλογές.

$config[zx-auto] not found$config[zx-overlay] not found