29 votes

Meilleures pratiques de programmation MATLAB

Je suis à la recherche de ressources sur la façon de structure moyenne et à grande échelle MATLAB projets, en particulier ceux qui impliquent plusieurs modules indépendants. Comment puis-je gérer la configuration globale de variables, comment dois-je structurer le projet dans des dossiers, comment puis-je gérer les couplages entre les modules, etc.

Est-il une sorte de texte de référence sur ce sujet? Il semble que si la plupart MATLAB manuels ont été écrits par des scientifiques ou des ingénieurs. Ce que je recherche, je pense, c'est tout MATLAB manuel écrit par un ingénieur logiciel. :-)

19voto

Mikhail Points 3393

MATLAB est un choix inhabituel pour un des projets de grande envergure et est aussi bien adapté pour une telle tâche en tant qu'assembleur, COBOL ou SQL. Si vous décidez malgré tout de MATLAB puis au moins tester automatiquement le code! Tous les types de tests - tests d'intégration, tests unitaires, les tests de charge! Et bien sûr, utiliser un système de contrôle de version.

Comme l'a dit, MATLAB n'a pas été créé avec de grands projets dans l'esprit, par conséquent, le seul meilleures pratiques concernant la structure du projet, des modules de couplage est le bon sens.

Si vous prenez plus d'une grande MATLAB projet ensuite, je suis désolé avec vous, refactoring sera cauchemar. Si vous allez démarrer un nouveau projet d'envergure avec MATLAB, alors vous êtes fou, il y a beaucoup de meilleures alternatives à MATLAB qui ne sont pas mauvais concernant les performances numérique. Grand projet implique que presque tout le code est logique d'entreprise, pas des nombres, donc pourquoi pour l'amour de Dieu MATLAB?

Grand projet implique bien structuré composants, ce qui implique OO, qui est le point faible de MATLAB, car il sacrifie la performance du segment de performances numérique du degré de unusability.

Mon expérience:

  1. J'ai passé des années dans un demi-million de LOC MATLAB projet.
  2. J'ai vu transition sans effort de plusieurs grands MATLAB projets en C#.

Avec MATLAB, vous avez encore de l'utilisation de grandes quantités de Java décent à la recherche GUI, C/C++ MEX rapide pour ne pas les parties numériques comme les importations, peut-être, SQL, etc. Avec Java (ou mieux, C#) avec une connexion numérique de la bibliothèque, vous avez une seule langue qui est parfaitement adapté pour tout ce dont vous avez besoin dans un projet de grande envergure.

Je ne dis pas que MATLAB est mauvais - il des règles pour le prototypage rapide et les objets numériques! Et Simulink a pas de solution de rechange (mais peut être compilé et utilisé de partout).

7voto

Jonas Points 54073

Vous pouvez avoir un regard sur "Les Éléments de Matlab Style" (revue par Loren Shure).

Aussi, cette revue de bonnes pratiques de codage peut être utile.

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