Question

Alors que le prototypage, dans quelle mesure êtes-vous jeter les meilleures pratiques de la porte en faveur du hacking code et fix? En admettant que le code ne vise pas à être maintenu en pleine production.

Ajouter: Je travaille sur un prototype semi-travail assez grand fait en Python, pour comprendre l'interface utilisateur pour une application embarquée. Je sais que le code n'est pas destiné à être utilisé dans la production, mais il me contrarie que la qualité de la base de code diminue de façon constante le nombre de changements effectués.

Était-ce utile?

La solution

Cela dépend de ce que votre prototype tente de prouver. Est-ce que vous Prototypage l'interface utilisateur pour la facilité d'utilisation et de démontrer aux clients ou êtes-vous Prototypage une architecture?

Si je suis le prototypage d'une interface utilisateur alors je jetterai tout une fois que le concept a été par itérations et éprouvée.

Si je prototypage une architecture alors le code final sera conforme aux meilleures pratiques et utilisables.

Cela dit, il est incroyable la quantité de prototypes d'emploi hack qui finissent en pleine production en raison de contraintes de temps ou le budget. Si votre intention est le code pour ne pas terminer en production (un prototype d'interface utilisateur), il peut être utile de se moquer des captures d'écran plutôt que de les coder.

Autres conseils

Malheureusement, j'ai eu trop de prototypes se transformer en produit de base en raison des contraintes de temps. Donc, idéalement, vous suivrez les meilleures pratiques. De façon réaliste, vous faites ce qu'il faut pour faire le travail afin de répondre à tout délai que vous filmez pour. Ne vous attendez pas la possibilité de réécrire complètement. Ce que vous venez avec sera souvent la ligne de base, surtout s'il a fallu plus de quelques jours pour se développer. Le meilleur conseil est d'apprendre à utiliser les meilleures pratiques à des vitesses de niveau de pirate informatique.

Je jette des méthodes et commentent (à savoir les classes utilitaires qui « font bouger les choses ») « propres », mais pas « objets métier » si vous voulez.

Ainsi, par exemple, si j'ai le choix entre la définition d'une classe « Car » pour définir les propriétés de valeur de chaîne de « WheelCount », « DoorCount », ou tout simplement faire un Hashtable rapide, je vais généralement aller de l'avant et passer un peu temps supplémentaire créant la classe de voiture.

La raison est parce que quand je retourne à recoder plus tard, il est plus logique de regarder sur les noms de classe (et parfois ces petites classes sont transférables à la version « réelle »).

Le plus grand danger de prototypage en général pense « Je vais le corriger plus tard » et ne pas le faire ... donc si à tout moment vous pensez dans votre esprit «J'ai une assez bonne idée de la façon dont je dois cette classe ne », allez-y et passer quelques minutes supplémentaires sur cette classe et le faire correctement afin que vous puissiez le réutiliser.

Je traite presque toujours des prototypes (appelés tour des « pointes » ici) code jetable. Le point d'un prototype est de acquérir la compréhension d'un problème , ne pas le résoudre. Cette compréhension est beaucoup plus important que tout artefacts de code, et mettre en œuvre correctement la solution doit être trivial (si ce n'est pas, je dirais la portée de la pointe est trop importante).

Vous pouvez Refactor le prototype dans un état en forme, mais dans mon expérience, il est plus rapide de réécrire à partir de zéro, étant donné qu'il doit intégrer un système plus large.

Pour un prototype, seul l'extérieur est vraiment important. Si vous êtes assez courageux pour jeter le code après, vous pouvez utiliser dans le livre une vacherie aussi longtemps qu'il ressemble beaucoup.

Rappelez-vous, un prototype est juste un outil pour obtenir une réponse à la clientèle. (Ouais, je l'aime, ou, pourquoi avez-vous mis cette option là-bas?).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top