window.pipedriveLeadboosterConfig = { base: 'leadbooster-chat.pipedrive.com', companyId: 11580370, playbookUuid: '22236db1-6d50-40c4-b48f-8b11262155be', version: 2, } ;(function () { var w = window if (w.LeadBooster) { console.warn('LeadBooster υπάρχει ήδη') } else { w.LeadBooster = { q: [], on: function (n, h) { this.q.push({ t: 'o', n: n, h: h }) }, trigger: function (n) { this.q.push({ t: 't', n: n }) }, } } })() Δύο λόγοι για τους οποίους δεν πρέπει να χρησιμοποιήσετε το PHP - The Codest
The Codest
  • Σχετικά με εμάς
  • Υπηρεσίες
    • Ανάπτυξη λογισμικού
      • Ανάπτυξη Frontend
      • Backend Ανάπτυξη
    • Staff Augmentation
      • Frontend Developers
      • Backend Developers
      • Μηχανικοί δεδομένων
      • Μηχανικοί cloud
      • Μηχανικοί QA
      • Άλλα
    • Συμβουλευτική
      • Έλεγχος & Συμβουλευτική
  • Βιομηχανίες
    • Fintech & Τραπεζική
    • E-commerce
    • Adtech
    • Healthtech
    • Κατασκευή
    • Εφοδιαστική
    • Αυτοκίνητο
    • IOT
  • Αξία για
    • CEO
    • CTO
    • Διευθυντής παράδοσης
  • Η ομάδα μας
  • Case Studies
  • Μάθετε πώς
    • Blog
    • Συναντήσεις
    • Διαδικτυακά σεμινάρια
    • Πόροι
Καριέρα Ελάτε σε επαφή
  • Σχετικά με εμάς
  • Υπηρεσίες
    • Ανάπτυξη λογισμικού
      • Ανάπτυξη Frontend
      • Backend Ανάπτυξη
    • Staff Augmentation
      • Frontend Developers
      • Backend Developers
      • Μηχανικοί δεδομένων
      • Μηχανικοί cloud
      • Μηχανικοί QA
      • Άλλα
    • Συμβουλευτική
      • Έλεγχος & Συμβουλευτική
  • Αξία για
    • CEO
    • CTO
    • Διευθυντής παράδοσης
  • Η ομάδα μας
  • Case Studies
  • Μάθετε πώς
    • Blog
    • Συναντήσεις
    • Διαδικτυακά σεμινάρια
    • Πόροι
Καριέρα Ελάτε σε επαφή
Πίσω βέλος GO BACK
2022-06-28
Ανάπτυξη λογισμικού

Δύο λόγοι για τους οποίους δεν πρέπει να χρησιμοποιήσετε το PHP

The Codest

Sebastian Luczak

PHP Αρχηγός μονάδας

Ως προγραμματιστής του PHP θυμάμαι ακόμα τις μέρες του PHP4, την πρώτη (προαιρετική!) υλοποίηση GC στο PHP5, και έζησα την _υπερβολή_ της έλευσης του PHP7 και τις προεκτάσεις της.

Όλα αυτά τα χρόνια πολλοί άνθρωποι με έχουν ρωτήσει γιατί ασχολούμαι προγραμματισμός σε PHP, και εδώ και πολλά χρόνια ακούω σαν μάντρα δύο επαναλαμβανόμενα επιχειρήματα γιατί πρέπει να σταματήσω και να αρχίσω να γράφω εμπορικό λογισμικό σε γλώσσες όπως Java ή C#.
​
Σήμερα θα παραθέσω αυτά τα επιχειρήματα και θα προσπαθήσω να αλλάξω τη στάση σας απέναντι στην PHP τουλάχιστον λίγο. Ναι, ο τίτλος αυτού του άρθρου είναι ένα παράλογο clickbait.

​
εικόνα
​

#1 PHP πεθαίνει

​
PHP πεθαίνει χρόνο με το χρόνο. Η κάποτε πιο δημοφιλής γλώσσα του διαδικτύου χάνει τώρα τη δημοτικότητά της μήνα με το μήνα, κυρίως λόγω JavaScript.

​
Όταν εξετάζετε τους αριθμούς, η αλήθεια είναι απογοητευτική! Κατά τη διάρκεια του περασμένου έτους, PHP έχασε το 1,6% του μεριδίου της ως η backend γλώσσα του Web.

​
Εάν PHP συνεχίζει αυτή την πτωτική τάση, σε 18 χρόνια PHP θα πέσει κάτω από το 50% της backend Web τεχνολογίας!

​
Ιστορικές τάσεις στις στατιστικές χρήσης των γλωσσών προγραμματισμού από την πλευρά του διακομιστή για ιστοσελίδες

​
Αλλά εντάξει, πέρα από τα αστεία - αν και οι αριθμοί είναι πραγματικοί όπως αναφέρεται από το W3CTechs.

Η πρώτη αναφορά που PHP πεθαίνει μπορεί να βρεθεί στο διαδίκτυο από το 2013. Τότε το λογισμικό Gunslinger δημοσίευσε ένα άρθρο (το οποίο παρεμπιπτόντως συνιστώ ανεπιφύλακτα!) λέγοντας ότι το PHP θα πεθάνει επειδή δεν υποστηρίζει μακροχρόνιες διεργασίες και επειδή του λείπει η ασύγχρονη λειτουργία.

​
Και αυτό είναι γεγονός, PHP δεν ήταν φτιαγμένη γι' αυτό!

​

αν το μόνο που έχεις είναι ένα σφυρί, όλα μοιάζουν με καρφί

​
Αλλά πίσω στους αριθμούς - ας ρίξουμε μια ματιά στα περσινά στοιχεία για PHP εκδόσεις που χρησιμοποιούνται στα πακέτα Packagist. Τα πιο πρόσφατα δεδομένα είναι διαθέσιμα στον ιστότοπο της πηγής packagist.org

Εγκαταστάσεις πακέτων από το γράφημα δευτερεύουσας έκδοσης PHP

​
Αυτή είναι η καμπύλη υιοθέτησης νέων εκδόσεων μιας γλώσσας προγραμματισμού που πεθαίνει;

​
Αν αυτό δεν είναι αρκετό, ας ελέγξουμε το "ποσοστό θανάτου PHP" σε σύγκριση με άλλες γλώσσες.
​

Τα δεδομένα για την ανάλυση προέρχονται απόGitHut 2.0, το οποίο δημιουργεί ένα διάγραμμα του αριθμού των git push ανά γλώσσα στο Github από το 2012, σύμφωνα με το σύστημα - "Η ποσοστιαία κατανομή των γλωσσών στο γραμμικό διάγραμμα δείχνει τις 10 κορυφαίες (ή χειροκίνητα επιλεγμένες) γλώσσες από το 2012/Q2".

γράφημα ποσοστιαίας κατανομής γλωσσών προγραμματισμού

​
Όπως μπορείτε να δείτε PHP καθώς και άλλες δημοφιλείς γλώσσες όπως Ruby, C/C++, Python έχουν σημειώσει σημαντική πτώση της δημοτικότητάς τους στο Github τα τελευταία χρόνια, ωστόσο υπάρχει μια ανοδική τάση και αναμένουμε να επιστρέψουν σε υψηλές θέσεις μετά από μια μεγαλύτερη περίοδο πλαγιοκαθοδικής κίνησης. (αυτό δεν αποτελεί επενδυτική συμβουλή)

​
Η αρχική hype για τη γλώσσα Javascript φαίνεται στο ίδιο διάγραμμα. Θα αφήσω ήδη τα συμπεράσματα και την ανάλυσή τους σε εσάς, αγαπητέ αναγνώστη.

​
εικόνα

​
Αλλά και πάλι - μια γλώσσα που πεθαίνει δεν θα έπρεπε να τείνει να αυξάνει τον αριθμό των προσφορών εργασίας για προγραμματιστές, σωστά;
​

εικόνα

​
Τη στιγμή που γράφω αυτό το άρθρο, μπορώ να επιλέξω ανάμεσα σε 171 προσφορές εργασίας σε μία από τις κορυφαίες πύλες εργασίας στην Πολωνία, εκ των οποίων οι 50 είναι για νέους. PHP πεθαίνει, σωστά;
​

PHP meme - η php πεθαίνει

Και μιλώντας για χρήματα... γνωρίζατε ότι PHP και την πηγή του κωδικός διατηρείται από τον Νοέμβριο του 2021 από το ανεξάρτητος Ανοικτός Κώδικας κοινότηταΤο Ίδρυμα PHP το οποίο πληρώνει σημαντικά χρήματα σε προγραμματιστές ανοικτού κώδικα για συνεισφορές στο php-src?

Σε αντίθεση με άλλες γλώσσες και πλαίσια, τα οποία συχνά ανήκουν σε μεγάλες εταιρείες, ο πυρήνας ανάπτυξης ομάδα καταβάλλεται απευθείας από το λογαριασμό του ιδρύματος, ο οποίος λειτουργεί με συνεισφορές ιδιωτικών εταιρειών όπως η JetBrains και η Symfony Corp, αλλά και απόμικρές συνεισφορές από μεμονωμένους προγραμματιστές.

Ο Ανοιχτός Κώδικας σε όλο του το μεγαλείο!

​

#2 PHP είναι φοβερό

​

Ναι, αυτό το επιχείρημα προέρχεται πάντα από το στόμα προγραμματιστών που έχουν εξοικειωθεί με ισχυρά τυποποιημένες, συγκρίσιμες γλώσσες.
​
Κοιτάζοντας το γράφημα των δεδομένων που συλλέχθηκαν κατά τη διάρκεια τηςΈρευνα StackOverflow του 2021, μπορείτε να δείτε ότι 10.834 ερωτηθέντες που αντιπροσωπεύουν σχεδόν 60% του συνόλου βρήκαν το PHP "φοβερό".

​
εικόνα
​
Ως παλαιάς σχολής Προγραμματιστής PHP, καταλαβαίνω γιατί συμβαίνει αυτό. Μου έρχεται αμέσως στο μυαλό ένα κλασικό παράδειγμα προβλημάτων μνήμης σε PHP:

<?php

class FOO {
  public $f,
}

class BAR {
  public $f,
}

while(1) {
  $a = new FOO(),
  $b = new BAR(),
  $a->f = $b,
  $b->f = $a,
  print "Memory usage: " . number_format(memory_get_usage(true)) . " bytesn",
  unset($a),
  unset($b),
}

Για τους μη μυημένους - ναι, ο παραπάνω κώδικας προκαλεί σφάλμα μνήμης. Και υπάρχει και κάτι άλλο. Από την ηλίθια ονομασία των μεθόδων και την πλήρη έλλειψη λογικής στη σειρά των παραμέτρων τους (ναι, όλοι αγαπάμε str_ και array_) στο πιο διάσημο σφάλμα του PHP T_PAAMAYIM_NEKUDOTAYIM - Το PHP είναι γεμάτο από ιδιοτροπίες και ελαττώματα των παλαιών εκδόσεων. Αυτό δεν σημαίνει ότι αυτά που ακούσαμε για PHP πριν από μερικά χρόνια εξακολουθεί να ισχύει. Η γλώσσα έχει υποστεί μια τεράστια μεταμόρφωση και σήμερα χαίρομαι που μπορώ να κοιτάξω τους ορισμούς των αντικειμένων μου:

readonly class NotificationEvent
{
    public function __construct(
        public string $context,
        public User $user,
        public string $body,
        public DateTime $issuedAt,
    ) {}
}

Επιπλέον, η Οικοσύστημα PHP έχει αναπτυχθεί τρομερά, και τώρα έχουμε απίστευτες ευκαιρίες να δημιουργήσουμε καλό, υψηλά τυποποιημένο και καλά δοκιμασμένο κώδικα. Μπορούμε να χρησιμοποιήσουμε Symfony ​για την ανάπτυξη εφαρμογών DDD χωρίς σημαντικά προβλήματα, και μπορούμε να παρακάμψουμε το πρόβλημα του συγχρονισμού του PHP χρησιμοποιώντας το Message Bus.

Και ενώ εγώ ο ίδιος δεν πιστεύω PHP είναι κατάλληλο για τη δημιουργία μακροχρόνιων backend διεργασιών και έχει τεράστια προβλήματα απόδοσης όταν πρόκειται για συγχρονισμό καταστάσεων, έχω επίσηςδημιούργησε ένα παιχνίδι κονσόλας PHP χρησιμοποιώντας το Symfony + Docker με τα χέρια μου ως παράδειγμα ότι το PHP μπορεί ακόμα να έχει αντισυμβατικές χρήσεις.

​
Ένα άλλο πλεονέκτημα του PHP είναι το χαμηλό εμπόδιο εισόδου για τους νέους προγραμματιστές. Τεκμηρίωση δύο δημοφιλών πλαισίων Symfony καιLaravel και PHP τεκμηρίωση είναι αρκετά για να εισέλθετε στον κόσμο του backend με τη βοήθειά τους. Ένας κόσμος που δεν είναι τέλειος στο PHP αλλά επιτρέπει πολλά. Χρησιμοποιώντας πρόσθετες βιβλιοθήκες όπως η Laravel Nova είμαστε σε θέση να δημιουργήσουμε σχεδόν οποιοδήποτε στοιχείο του συστήματός μας με δύο μόνο εντολές.

Afterglow

​
Είναι PHP πεθαίνεις;

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

Ως μια γλώσσα που έχει βρεθεί στο αγορά εδώ και είκοσι χρόνια, η οποία έχει ήδη επιβιώσει από περισσότερες από μία hype (θυμάστε το Objective-C;) Νομίζω ότι θα τα καταφέρει και θα βρει τη θέση του.
​
Και ποιος ξέρει, ίσως οι προβλέψεις μου να αποδειχθούν σωστές και το PHP 10.x να γνωρίσει νέα άνθηση σε δύο χρόνια;

πανό συνεργασίας

Σχετικά άρθρα

Ανάπτυξη λογισμικού

PHP 8.2: Τι νέο υπάρχει;

Η νέα έκδοση του PHP είναι προ των πυλών. Ποιες είναι οι νέες υλοποιήσεις που πρέπει να γνωρίζετε; Διαβάστε αυτό το άρθρο για να μάθετε!

The Codest
Sebastian Luczak PHP Αρχηγός μονάδας
Ανάπτυξη λογισμικού

GraphQL: μαθήματα στην παραγωγή

Είναι το 2020. Η ομάδα σας τείνει όλο και περισσότερο προς την κατασκευή εφαρμογών μίας σελίδας ή τουλάχιστον προς την ενσωμάτωση πλούσιων στοιχείων σε κανονικές εφαρμογές πολλών σελίδων. Η [GraphQL](https://graphql.org/) είναι [πάνω από δύο ετών](https://en.wikipedia.org/wiki/GraphQL) τώρα, η οποία...

Pawel Wal

Εγγραφείτε στη βάση γνώσεών μας και μείνετε ενήμεροι για την τεχνογνωσία από τον τομέα της πληροφορικής.

    Σχετικά με εμάς

    The Codest - Διεθνής εταιρεία ανάπτυξης λογισμικού με κέντρα τεχνολογίας στην Πολωνία.

    Ηνωμένο Βασίλειο - Έδρα

    • Γραφείο 303B, 182-184 High Street North E6 2JA
      Λονδίνο, Αγγλία

    Πολωνία - Τοπικοί κόμβοι τεχνολογίας

    • Πάρκο γραφείων Fabryczna, Aleja
      Pokoju 18, 31-564 Κρακοβία
    • Πρεσβεία του εγκεφάλου, Konstruktorska
      11, 02-673 Βαρσοβία, Πολωνία

      The Codest

    • Αρχική σελίδα
    • Σχετικά με εμάς
    • Υπηρεσίες
    • Case Studies
    • Μάθετε πώς
    • Καριέρα
    • Λεξικό

      Υπηρεσίες

    • Συμβουλευτική
    • Ανάπτυξη λογισμικού
    • Backend Ανάπτυξη
    • Ανάπτυξη Frontend
    • Staff Augmentation
    • Backend Developers
    • Μηχανικοί cloud
    • Μηχανικοί δεδομένων
    • Άλλα
    • Μηχανικοί QA

      Πόροι

    • Γεγονότα και μύθοι σχετικά με τη συνεργασία με εξωτερικό συνεργάτη ανάπτυξης λογισμικού
    • Από τις ΗΠΑ στην Ευρώπη: Γιατί οι αμερικανικές νεοσύστατες επιχειρήσεις αποφασίζουν να μετεγκατασταθούν στην Ευρώπη
    • Σύγκριση υπεράκτιων κόμβων ανάπτυξης τεχνολογίας: Ευρώπη (Πολωνία), ASEAN (Φιλιππίνες), Ευρασία (Τουρκία)
    • Ποιες είναι οι κορυφαίες προκλήσεις των CTOs και των CIOs;
    • The Codest
    • The Codest
    • The Codest
    • Privacy policy
    • Website terms of use

    Πνευματικά δικαιώματα © 2025 από The Codest. Όλα τα δικαιώματα διατηρούνται.

    elGreek
    en_USEnglish de_DEGerman sv_SESwedish da_DKDanish nb_NONorwegian fiFinnish fr_FRFrench pl_PLPolish arArabic it_ITItalian jaJapanese ko_KRKorean es_ESSpanish nl_NLDutch etEstonian elGreek