MATLAB - необычный выбор для крупномасштабных проектов, и он также подходит для таких задач, как ассемблер, COBOL или SQL.Если вы по-прежнему выбираете MATLAB, то хотя бы автоматически проверяйте код!Все виды тестов - интеграционные тесты, юнит-тесты, нагрузочные тесты!И, конечно, используйте систему контроля версий.
Как уже говорилось, MATLAB создавался не с учетом больших проектов, поэтому единственная лучшая практика, касающаяся структуры проекта, модулей и связывания, - это здравый смысл.
Если вы берете на себя существующий большой проект MATLAB, тогда мне жаль, что рефакторинг станет кошмаром.Если вы собираетесь начать новый крупный проект с MATLAB, то вы с ума сошли - есть гораздо лучшие альтернативы MATLAB, которые не так уж плохи в отношении числовой производительности.Большой проект подразумевает, что почти весь код является бизнес-логикой, а не цифрами, поэтому, ради бога, MATLAB?
Большой проект подразумевает хорошо структурированные компоненты, что подразумевает ОО, что является слабым местом MATLAB, поскольку он жертвует производительностью кучи для числовой производительности до степени непригодности .
Мой опыт:
- Я провел годы в полумиллионном проекте LOC MATLAB.
- Я видел безболезненный переход нескольких крупных проектов MATLAB на C #.
С MATLAB вам все еще приходится использовать большое количество Java для приличного графического интерфейса, C / C ++ MEX для быстрогоне числовые части, такие как импорт, может быть SQL и т. д. С Java (или лучше C #) с бесплатной числовой библиотекой у вас есть только один язык, который идеально подходит для всего, что вам нужно в большом проекте.
Я не являюсьговоря, что MATLAB это плохо - это правила быстрого прототипирования и чисел!И у Simulink нет альтернатив (но их можно скомпилировать и использовать везде).