Εξερευνώντας PHP Best Practices

 

PHP Best Practices

PHP Best Practices

Επισκόπηση: Δεξιά από την ίδρυσή της, PHP χρησιμοποιείται ευρέως για την ανάπτυξη web-based εφαρμογές. Από την PHP είναι μια γλώσσα scripting κάποιος πρέπει να ακολουθήσετε ορισμένους κανόνες ενώ οι αναπτυσσόμενες.

In this document, Θα μιλήσουμε για τις βέλτιστες πρακτικές που είναι γενικά ακολουθούνται στον κόσμο PHP.

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

Μετά είναι οι καλύτερες πρακτικές που θα πρέπει να ακολουθήσουμε τη διάρκεια της εργασίας με την PHP:

αναφοράς σφάλματος πρέπει να είναι ενεργοποιημένη -

αναφοράς σφάλματος είναι μια πολύ χρήσιμη λειτουργία στον κόσμο PHP. Πρέπει να ενεργοποιήσετε αυτό ενώ είμαστε στη φάση της ανάπτυξης. Αυτό μας βοηθά να εντοπίζουν τα προβλήματα στον κώδικά μας. Το συνηθέστερα χρησιμοποιούμενο χαρακτηριστικό είναι «E_ALL‘ η οποία μας βοηθά να εντοπίσετε όλες τις προειδοποιήσεις και κρίσιμα σφάλματα. Θα πρέπει να σημειωθεί ότι, πριν βάλουμε τον κώδικα μας σε παραγωγή, θα πρέπει να απενεργοποιήσετε αυτό το χαρακτηριστικό, καθώς αυτό θα εκθέσει όλα τα πιθανά λάθη στα προγράμματα περιήγησης.

Χρησιμοποιήστε τα ξηρά προσέγγιση -

DRY περίπτερα για «Μην επαναλαμβάνεις τον εαυτό σου’. Η έννοια αυτή είναι πολύ χρήσιμη έννοια προγραμματισμού και πρέπει να χρησιμοποιείται σε οποιαδήποτε γλώσσα προγραμματισμού π.χ.. Ιάβα, ΝΤΟ#, PHP κλπ. Χρησιμοποιώντας την ΞΗΡΌΣ προσέγγιση που εξασφαλίζουν ότι δεν υπάρχει περιττό κώδικα. Ένα κομμάτι του κώδικα που παραβιάζει ΞΗΡΌΣ αναφέρεται ως ΒΡΕΓΜΈΝΟΣ λύση. WET σημαίνει «γράψετε τα πάντα δύο φορές' ή 'απολαμβάνουμε την πληκτρολόγηση’. Ας ρίξουμε μια ματιά στο παρακάτω κώδικα -

Listing1 - ΞΗΡΌΣ & WET προσέγγιση

[Code]

$mysql = mysql_connect ( 'Localhost', ‘mysqladmin_uid’, «mysqladmin_pwd’ );

mysql_select_db( «db_name’ ) ή πέθανε( “Συγνώμη !! Καμία βάση δεδομένων που επιλέγονται!”);

[/Code]

Αυτή η παραπάνω κώδικα βασίζεται στο WET προσέγγιση καθώς οι σχετικές παράμετροι ενσωματωμένες. Μετά τα ξηρά προσέγγιση, η παραπάνω κωδικός μπορεί να αλλάξει σε -

[Code]

$db_host = ‘ localhost ";
$db_user = ‘ mysqladmin_uid »;
$db_password = ‘ mysqladmin_pwd »;
$db_database = ‘ db_name »;

$mysql = mysql_connect($db_host, $db_user, $db_password);
mysql_select_db($db_database);

[/Code]

Εσοχές και Χρήση κενά -

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

Νόημα και συνέπεια ονομασίας προτύπων -

Όπως σε οποιαδήποτε γλώσσα προγραμματισμού, εμπειρογνώμονες PHP συμβουλεύουν επίσης να ακολουθήσει ουσιαστική πρότυπα ονοματοδοσίας. Έχουμε δύο κύριες προσεγγίσεις, ενώ εξασφαλίζουμε την υλοποίηση αυτού -

  • Χρησιμοποιώντας Camel Case - In this approach, το πρώτο γράμμα είναι σε πεζά και πρώτο γράμμα κάθε λέξης, εν συνεχεία, με κεφαλαία.

Listing 2 - Απόσπασμα κώδικα χρησιμοποιώντας περίπτωση καμήλα

[Code]

δημόσια τάξη MyClass {

public void mΜΕΘΟΔΟΣNαγάπη(Κορδόνι έναrgNαγάπη) {

}

}

[/Code]

  • Χρησιμοποιώντας κάτω παύλες ανάμεσα σε δύο λέξεις - In this approach, βάζουμε ένα χαρακτήρα υπογράμμισης χαρακτήρα ('_') μεταξύ κάθε δύο λέξεων. Χρησιμοποιώντας αυτή την προσέγγιση, η παραπάνω κώδικας μπορεί να τροποποιηθεί ως κάτω -

Listing 2 - Απόσπασμα κώδικα χρησιμοποιώντας υπογράμμισης

[Code]

δημόσια τάξη MyClass {

public void μέθοδο_όνομα(String arg_όνομα) {

}

}

[/Code]

Βαθιά ωοτοκίας πρέπει να αποφεύγεται -

Πολυεπίπεδη ωοτοκίας μειώνει την αναγνωσιμότητα του κώδικα είναι οποιαδήποτε γλώσσα προγραμματισμού είναι. Κάθε προγραμματιστής θα πρέπει να αποφεύγουν τη χρήση βαθιά ωοτοκίας. Ας δούμε το παρακάτω απόσπασμα κώδικα -

Listing 4 - Απόσπασμα κώδικα που έχει multi ωοτοκίας επίπεδο

[Code]

δημόσια τάξη MyClass {

public void METHOD_NAME(String arg_name) {

αν (is_writable($ντοσιέ)) {

αν ($fp = fopen($file_location_path,«W»)) {

αν ($πράγματα = extractSomeConditionalStuff()) {

αν ( fwrite ( $fp, $υλικό) ) {

// …

} αλλού {
return false;
}

} αλλού {
return false;
}

} αλλού {
return false;

}

} αλλού {
return false;
}

}

}

[/Code]

Ο παραπάνω κώδικας είναι μια απλή ένθετη κώδικα. Όπως μπορούμε να δούμε ότι είναι πολύ δύσκολο να καταλάβω τα οποία, αν μπλοκ τελειώνει εκεί. Για να έχετε μια καλύτερη αναγνωσιμότητα, ας τροποποιήσει τον παραπάνω κώδικα ως κάτω -

Listing 5 - Απόσπασμα κώδικα αποφυγή πολλαπλών ωοτοκίας επίπεδο

[Code]

λειτουργία METHOD_NAME (String arg_name) {

// …

αν (!is_writable($ντοσιέ)) {
return false;
}

αν (!$fp = fopen($file_location_path,«W»)) {
return false;
}

αν (!$πράγματα = extractSomeConditionalStuff()) {
return false;
}

αν (fwrite($fp, $υλικό)) {
// …
} αλλού {
return false;
}
}

[/Code]

Βάλτε επαρκή σχόλια -

Όπως σε οποιαδήποτε γλώσσα προγραμματισμού, βεβαιωθείτε ότι πηγαίο κώδικα σας έχει αρκετή inline σχόλια. Αυτή είναι μια συνήθης πρακτική και θα πρέπει να ακολουθούνται. Αυτό βοηθά στην περαιτέρω ανάλυση του κώδικα βάσης, δεδομένου ότι είναι μια συνήθης πρακτική ότι το πρόσωπο που έχει καταρτίσει τον κώδικα δεν διατηρεί την ίδια. Ακόμη και αν το ίδιο πρόσωπο καλείται να κάνετε κάποιες αλλαγές στον κώδικα, inline comments will always be helpful to understand the motive of writing the code. In order to maintain high class comment standard in PHP I would recommend you to get familiarize with some PHP documentation package e.g. phpDocumentor.

Μην τοποθετείτε phpinfo() λειτουργία στο root web -

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

Ποτέ μην εμπιστεύεσαι τον χρήστη -

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

Χρησιμοποιήστε μηχανισμό Cache όπου απαιτείται -

Καλή προσεγγίσεις προγραμματισμού πάντα προτείνουν τη χρήση του μηχανισμού cache, όπως η cache μας βοηθά να επιτύχουμε καλύτερη απόδοση. Στον κόσμο PHP caching επιτυγχάνεται με τη χρήση -

  • memcached - Ένα στη μνήμη κατάστημα ζεύγος κλειδιού-τιμής που χρησιμοποιείται για μικρά κομμάτια των δεδομένων.
  • APC - Εναλλακτικές PHP Cache μια ανοικτή cache opcode για την PHP
  • XCache - Μια γρήγορη και αξιόπιστη cache PHP opcode
  • Zend Cache - Μια συλλογή από APIs για την υλοποίηση προηγμένων δυνατοτήτων caching.
  • eAcclerator - Εργαλείο caching ανοιχτού κώδικα

Avoid copying extra variables –

Δεν είναι μια καλή πρακτική προγραμματισμού για να αντιγράψετε προκαθορισμένες μεταβλητές στις τοπικές μεταβλητές που έχουν μικρότερα ονόματα. Αυτό έχει μια δυσμενή επίδραση στην απόδοση της εφαρμογής. Ας δούμε το παρακάτω απόσπασμα κώδικα -

Listing 6 - Αντιγραφή επιπλέον μεταβλητές -

[Code]

$desc = strip_tags($_ΘΈΣΗ[«Περιγραφή της PHP]);

echo desc $;

[/Code]

The above code snippet is an example of copying a variable into a local variable unnecessarily. This is not at all a good practice. Το ίδιο κίνητρο μπορεί να επιτευχθεί με τη χρήση του παρακάτω κώδικα -

[Code]

echo strip_tags($_ΘΈΣΗ[«Περιγραφή της PHP]);

[/Code]

Χρήση πλαισίων -

Τα πλαίσια που αναπτύχθηκε μετά από πολλή έρευνα λειτουργεί και ως εκ τούτου να αποδειχθούν λιγότερο προβληματική. Κάνουν τη ζωή μας ευκολότερη, καθώς παρέχουν δοκιμασμένες λύσεις. Στην PHP υπάρχουν πολλά πλαισίων διαθέσιμη. ενώ η ανάπτυξη, θα πρέπει να κάνουν χρήση αυτών των. Ένα από αυτά τα πλαίσια τα οποία χρησιμοποιούνται ευρέως είναι MVC ή Model View Controller.

Συμπέρασμα:

Let us conclude our discussion in the form of following bullets –

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

 

Tagged on: ,
============================================= ============================================== Buy best TechAlpine Books on Amazon
============================================== ---------------------------------------------------------------- electrician ct chestnutelectric
error

Enjoy this blog? Please spread the word :)

Follow by Email
LinkedIn
LinkedIn
Share