63 votes

Caractéristiques/fonctions qui permettent à votre application plus professionnelle? Codage hobbyhorses

Quelles fonctions avez-vous mettre en œuvre (comment) dans vos applications web en PHP parce que vous jugent "plus professionnel" d'une certaine façon? Ou avez-vous des personnels nitpicks et le code hobbyhorses, notamment les petites choses qui pourraient compter? Qui unsavoured code ou mineur de la fonctionnalité de vous faire passer une quantité excessive de temps sur d'avoir droit?

.

Exemple de codage hobbyhorses pour Q&Une illustration:

Les données de Configuration sont pas dans la base de données: les données de l'Application != les données de configuration, qui c'est aussi une question de la nécessité et de l'efficacité.

URL de fixation: Normaliser toutes les adresses web en ajoutant le slash de fin, même si c'est techniquement pas nécessaire.

Lisible par l'homme des cookies: Pour la confidentialité des données j'essaie d'éviter opaque session de base de données sur les poignées (pour les options de l'utilisateur, pas d'autorisation d'utilisation).

La négociation de contenu: a de sens pour de simples variations de entre par exemple les flux RSS et Atom formats. Mais je le vois pas souvent utilisé.

Pas d'Id de base de données dans l'INTERFACE utilisateur: Éviter la fuite de la base de données interne de substitution de clés dans les Url. Et avec Orm db-clés internes n'ont même pas eu une fuite dans une logique d'entreprise.

.

Les indices (pas de règles)

  • Ainsi, les fonctionnalités croyez-vous met votre application web au-dessus de la moyenne?
  • Pourquoi est-il rare?
  • Avantages pour les utilisateurs, mais il est également facile d'oublier?
  • Plus de professionnels et de codage sécurisé suggestions sont très sur le sujet. Ils le sont toujours.
  • Mais la portée de ce Q&A est en fait rare/caractéristiques uniques, et peut-être non-standard et controversée de la fonctionnalité. Gros bonus pour fascinant.
  • C'est aussi à propos des préférences de codage et nitpicks qui vient de se produire à se matérialiser en PHP.
  • Ne pense pas trop grand ou trop haut niveau. Petite fonctionnalité de compte aussi.
  • Afficher le code si c'est possible.
  • La syntaxe et le style de codage / paradigmes sont toutefois en grande partie hors-sujet.
  • Et nous n'allons pas débattre à propos de l'utilité ou de la qualité du code. C'est purement une featuritis & code de l'enquête.

Première featuritis recherche bounty ronde: Il est difficile de décider sur l'une des nombreuses bonnes idées. Pour dire la vérité, je n'ai pu la réduire à cinq favoris et à gauche de la décision d' rand(). Et le sujet est certainement assez intéressant pour justifier une deuxième prime ronde. Après une pause. Et peut-être quelqu'un d'autre prend le relais pour préciser la portée.

40voto

koen Points 4770

De la Documentation.

Imaginer un projet open source que vous pouvez trouver avec et sans la mise à jour de la documentation et de sentir l'impact que cela a sur les compétences professionnelles que vous pensez.

31voto

NikiC Points 47270

Pour la sécurité, en particulier de l'utilisateur des données privées.

Stocker les mots de passe à l'aide d'une forte hachage comme bcrypt (voir crypt de la documentation):

// generating hash
// read up how $costParameter and $salt look like in the crypt() docs
$hash = crypt($password, '$2a$' . $costParameter . '$' . $salt . '$');

// checking if password is correct
if (crypt($whatTheUserEntered, $hash) == $hash) {
    // correct password
}

$salt ne doit pas être une valeur statique. Il doit être différent pour chaque utilisateur.

24voto

mykhal Points 5873

pour l'aspect professionnel, il est très important de nettoyer et de l'esthétique de la conception graphique . parce que la couverture est ce qui se vend, ces jours-ci. triste, mais vrai. application web avec un beau code et aspect laid ne pas attirer trop l'attention.

22voto

Pekka 웃 Points 249607

Un bilan de santé

Une série de pré-configuré essais pour déterminer la base de la "santé" d'une application web ou un site web qui peut être consulté (par l'administrateur / propriétaire du site), à tout moment, en montrant des choses comme:

  • Est le serveur de base de données accessible?
  • Sont les fichiers et les répertoires accessibles en écriture?
  • Sont toutes les structures de données saine et complète?
  • Faire toutes les pages / dialogues / requêtes afficher correctement?
  • Est de suffisamment d'espace disque disponible?
  • etc. etc.

une simple page d'état indique le courant "santé" du système avec un vert, orange ou rouge en arrière-plan.

Cela est différent de l'Unité de Test en ce qu'il traite de la santé d'un "monde réel" de l'environnement, et non pas abstraite de l'intégrité du code.

Un bilan de santé fait également la migration d'une application vers un autre serveur facile.

J'ai mis en œuvre de plusieurs projets qui ont besoin d'une surveillance constante; j'ai l'intention d'en faire une petite, extensible "drop in" open source application un certain temps, cette année, qui peuvent être utilisés dans toutes sortes d'applications web et même des sites web. La Participation et l'apport très bienvenue - voir SI la question pour plus de détails.

15voto

SamGoody Points 4406

Contrôle De Code Source. Plus précisément Git (Mais pas spécifiquement GitHub)

OK, Il n'est pas rare.
Mais quand je externaliser le code et obtenir un joli repo, avec toute l'histoire et les rebondissements, je suis beaucoup plus impressionné que avec un dossier plein de fichiers php.
Et il montre comment beaucoup de travail supplémentaire a été mis dans le projet qui n'est pas vu.

J'utilise GitFlow, qui prend un peu plus lors de l'utilisation, mais fait pour lui-même dans l'être que beaucoup plus impressionnant dans le projet fini. Assurez-vous que le client voit le github graphique (ou équiv.) Toutes ces branches de l'air propre et impressionnant. (Outre le fait d'être utile!)

Connexes:
Un Système De Suivi De Problème.
Les deux avant de faire le code est terminé (alors que le client est en train de réviser), et par la suite, pour leur permettre d'ajouter de nouvelles tâches.
Il n'est pas seulement un moyen de délimiter les tâches et de faire plus de travail, il rend les clients se sentent que le projet est toujours sur mon esprit. Même si Ive a déménagé sur.
J'utilise Collabtive, ce qui est absolument horrible que de ces systèmes, mais il est plus impressionnant à la recherche puis autre chose, j'ai essayé, les Choses qui sont impressionnants sont censés être des professionnels.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X