2010-03-05 5 views
1

Je voudrais commencer une discussion sur les meilleures ressources pour les conseils de refactoring, avec un oeil vers le refactoring Front-End JavaScript.Ressources pour les conseils de refactoring orientés vers JavaScript

Un ami dont l'opinion je respecte suggère ce book, bien qu'il utilise des exemples en Java. Je comprends que les principes du refactoring OO devraient se traduire dans un autre langage. Parlons de refactoring en général et de refactoring JS en particulier.

Répondre

1

Découvrez le Clean Code de Martin pour un peu d'inspiration. Les exemples sont en Java mais les idées devraient également être traduites en JavaScript.

Afin de refactoriser correctement, vous aurez besoin de tester votre code ainsi que d'avoir des tests appropriés en place est une condition préalable pour cela. Essayez de trouver des outils de test qui vous offrent une couverture de code, car cela sera extrêmement utile.

Si votre code n'a pas encore été testé, vous pouvez considérer le test comme une méthode d'apprentissage. Vous écrivez des tests pour prouver ou réfuter vos hypothèses à ce sujet. Une fois que vous avez terminé et couvert correctement, vous devriez être en mesure de refactoriser le code en utilisant différents modèles fournis.

Comme Ira a mentionné avoir un outil pour détecter les clones peut être utile. C'est certainement une façon de voir les choses. Je pense que souvent avec une bonne perspective est la moitié de la solution. Si vous pouvez énoncer votre conception en termes clairs, vous obtiendrez de meilleurs résultats. Essayez de ne pas trop l'inventer en appliquant tous les modèles possibles. :)

+2

Clean Code a été une source d'inspiration pour les dernières semaines maintenant, a certainement été inestimable jusqu'à présent. – jerome

1

pas spécifiquement un outil de refactoring, mais un outil pour détecter le numéro un odeur dans le code: notre CloneDR Code trouve automatiquement dupliqué (copier/coller/modifier) et vous montre les emplacements précis et une abstraction raisonnable de chaque clone . Vous devez résoudre les clones à la main, mais sachant où ils sont et ayant reçu cette première coupe à une abstraction, est d'une grande aide.

EDIT: Ceci est directement une ressource pour la refactorisation du code Java et JavaScript. CloneDR fonctionne pour les deux, en utilisant l'analyse syntaxique précise pour donner une analyse précise des clones.

Vous pouvez voir sample clone detection results on Google's Javascript Closure package.

+0

Cela a été marqué quelques fois comme spam, mais je pense qu'il répond déjà aux directives de la [FAQ] (http://stackoverflow.com/faq#promotion). La question est un peu vague, mais je ne vois pas pourquoi les «ressources» ne pourraient pas inclure des outils. –