Utilisons un langage de script pour une implémentation C ++ confortable après vérification avec python
J'ai fait un prototypage en Python aujourd'hui pour voir si l'algorithme fonctionne.
- Écrivez votre idée en Python.
- Représentez graphiquement les résultats afin de voir ce qui fonctionne sur une seule figure. (Environnement intégré Spyder)
- Assurez-vous qu'il fonctionne avec plusieurs ensembles de données.
- Assurez-vous qu'un autre jeu de données fonctionne.
- Standardisez le style d'écriture avec pylint.
- Rédigez un commentaire de documentation sur la fonction.
- Soyez conscient de la distinction entre le cœur de l'algorithme et les fonctions auxiliaires telles que la représentation graphique.
- Faites de la partie de base de l'algorithme un module séparé.
- Créez une classe si nécessaire.
- Terminez la conception, l'implémentation, les commentaires de documentation et la confirmation des résultats d'exécution en python.
- Clarifiez ce qui doit être implémenté en C ++.
- Démarrez le développement en vous référant à l'implémentation python de la partie à implémenter en C ++.
- S'il y a du C ++ du module utilisé en python, écrivez-le en l'utilisant (par exemple cv2.imread () → cv :: imread ()).
- Faites-le fonctionner même s'il est solide.
- Mettre en œuvre et modulariser (ou classer) comme il se doit.
- Implémentez-le en tant qu'application de ligne de commande et testez-le dans plusieurs conditions.
- Ajoutez le modificateur const aux arguments possibles. Rendre les membres de données privés, utiliser des espaces de noms, etc.
- Rédigez des commentaires de documentation à utiliser avec Doxygen.
- Séparer dans le code source de la bibliothèque à incorporer en tant que module, le fichier d'en-tête et le code source de la fonction principale pour le fichier d'exécution pour autonome.
- Limitez les fonctions qui n'ont pas besoin d'être exposées dans un espace de noms anonyme.
- Vérifiez le nom de la méthode, le nom de la fonction et le nom de la variable d'argument afin qu'ils soient faciles à comprendre en tant que documents, et renommez-les si nécessaire.
- Rédigez un test unitaire adapté à l'utilisation prévue.
- Pour le test unitaire, améliorez le module jusqu'à ce que le test réussisse.
- Le test unitaire décrit non seulement le système normal, mais également le système anormal.
- Incorporer le module une fois le test terminé dans le programme cible.
De cette manière, vous pouvez vérifier l'efficacité plus tôt et ensuite développer que développer avec C ++ seul.
Remarque:
Si vous souhaitez accélérer le processus
- Gérer le contrôle de version de script.
- Effectuer un test de régression à chaque révision de l'édition pour confirmer que les résultats des calculs ne se sont pas détériorés.
- Préparez et testez un nombre suffisant d'échantillons pour vérifier qu'aucune détérioration ne s'est produite.
- Mesurez le temps de traitement comme module Python.
- N'écrivez pas explicitement une double boucle dans le calcul. Utilisez la fonction appropriée.
--Vérifiez l'algorithme en écrivant un commentaire qui donne un indice sur la raison pour laquelle le processus est exécuté.
- Trouvez et simplifiez les parties qui peuvent être simplifiées en modifiant l'ordre des opérations.
--Réduire le gaspillage de calcul.
--Confirmez que le temps de traitement est raccourci lorsque le gaspillage de calcul est réduit.
- Relisez le script en gardant à l'esprit le groupe de significations faciles à comprendre.
J'en suis conscient.