2015-01-09 1 views
3

나는 끊임없이 성장하는 MATLAB 프로그램을 개발하고있다. 그것은 스크립트 모음으로 시작되었지만 점점 더 커졌습니다. 지금은 모든 것이 하나의 큰 폴더에 있지만 개별 모듈을 분리하기 위해 하위 폴더로 나누고 싶습니다. 모듈간에 몇 가지 종속성이 있으므로 matlab 파일을 복사하지 않고도 다른 모듈의 기능에 액세스 할 수 있기를 원합니다.더 큰 Matlab 프로젝트 관리

검색 경로에 모든 디렉토리를 추가하는 다른 방법이 있습니까? 더 큰 MATLAB 프로젝트의 코드베이스를 깔끔하게 유지하려면 어떻게해야합니까?

+3

이 질문에 대한 대답을 설정 : http://stackoverflow.com/questions/2748302/what-is-the-closest-thing -matlab-has-to-namespaces – magnetometer

답변

1

빠른 수정 :

하나의 루트 디렉토리에 모든 기본 프로그램을 추가 할 수 있습니다. 하위 모듈은 아래 폴더에 있습니다. 모든 주 프로그램에서 모든 경로가 올바르게 설정되었는지 확인하십시오. 원래 경로를 복원 프로그램의 끝에서 은 도움이 될 수

% Begin of main program. Set path to all subfolders 
save_path = path; 
curr_dir = strrep(which(mfilename('fullpath')),mfilename,'') 
addpath(genpath(curr_dir)) 

% Main program 
.... 
.... 
.... 

% Restore original Path settings 
path(save_path); 
0

이미 네임 스페이스와 비슷한 링크가 있습니다. 그러나 패키지를 원하지 않는다면 현재 사용중인 구조를 따라갈 수 있습니다.

  1. 프로젝트 1
  2. 프로젝트 2
  3. 일반
  4. : 나는 당신이

    당신이이 개 프로젝트에 다음 세 개의 병렬 폴더를 만드는 작업 가정 큰 프로젝트

    이 제한되어있는 경우이 잘 특히 작동 생각

기본적으로 프로젝트 1과 프로젝트 2를 각각의 폴더에 만들 수 있으며 두 프로젝트에서 유사한 작업이 수행 된 것을 볼 수 있습니다 (아마도 약간의 일반화), 당신은 일반화시킬 수 있습니다. 일반 경로가 일반화 된 경로보다 먼저 검색 경로를 선택하면 일반적인 경로보다 먼저 사용자 지정 기능을 찾을 수 있습니다.

물론 하위 폴더도 일반적으로 만들 수 있습니다.


이 방법을 사용하는 가장 쉬운 방법은 경로에 일반 폴더를 추가 한 다음 프로젝트 폴더를 추가하는 것입니다. 이 경우에도 경로에 많은 파일이있을 수 있지만이 방법은 중복이 없으므로 어떤 중요한 파일이 프로젝트와 관련이 있는지 쉽게 볼 수 있습니다.

+0

팁 startup.m의 경로에 general을 추가하여 항상 추가해야합니다. –