Main Content

codeCompatibilityReport

코드 호환성 리포트 만들기

설명

예제

codeCompatibilityReport는 현재 작업 폴더와 하위 폴더에 대한 코드 호환성 리포트를 만듭니다. 코드 호환성 리포트는 MATLAB® 웹 브라우저에서 열립니다. 새로운 MATLAB 버전으로 업그레이드한 후 이 리포트를 사용하여 기존 코드에 있는 잠재적인 호환성 문제를 식별할 수 있습니다.

호환성 문제에 대한 검사 등 MATLAB 코드 분석기에서 수행한 모든 검사의 목록은 Index of Code Analyzer Checks에서 확인할 수 있습니다.

codeCompatibilityReport(names)names에서 지정한 파일이나 폴더에 대한 리포트를 만듭니다.

codeCompatibilityReport(___,'IncludeSubfolders',tf)는 하위 폴더에 대한 보고 여부를 지정합니다. 기본적으로, 하위 폴더는 분석에 포함됩니다. 이 구문은 위에 열거된 구문 중 하나의 인수에 사용하십시오.

예제

codeCompatibilityReport(cca)CodeCompatibilityAnalysis 객체에 들어 있는 기존 코드 호환성 결과에서 리포트를 만듭니다.

예제

모두 축소

codeCompatibilityReport를 사용하여 코드 호환성 리포트를 생성합니다.

codeCompatibilityReport

이 명령은 코드 호환성 분석기 앱을 시작하고 지정된 코드 내에서 발견된 호환성 문제에 대한 리포트를 생성합니다. 리포트 상단의 요약 섹션에는 리포트에 포함된 정보가 간략히 설명되어 있습니다. 이 섹션에는 분석된 파일 개수 및 분석된 코드에서 발견된 오류와 경고 및 정보 메시지의 총 개수가 나와 있습니다.

Code Compatibility Analyzer app

코드 호환성 분석기는 코드를 MATLAB의 최신 버전으로 업그레이드하는 데 도움이 되는 정보를 생성합니다. 그러한 정보에는 다음과 같은 문제 유형이 포함됩니다.

  • 구문 오류 — 구문 오류에 대한 세부 정보를 표로 제공. 구문 오류가 있으면 코드를 실행할 수 없게 되며, 설사 MATLAB 신규 버전에서 이러한 구문 오류가 발생하지 않는다 하더라도 호환성 분석에는 영향을 미치게 됩니다.

  • 제거된 기능 — 제거된 기능을 코드에서 사용한 것으로 분석되면 관련 세부 정보를 표로 제공. 예: 'wavfinfo'가 제거되었습니다. 대신 'audioinfo'를 사용하십시오.

  • 동작 변경된 기능 — 변경된 기능을 코드에서 사용한 것으로 분석되면 관련 세부 정보를 표로 제공. 예: 'legend'가 변경되었으며, 인수 이름을 레이블이 아니라 범례 속성으로 해석할 수 있습니다. 범례 속성과 이름이 동일한 레이블을 포함하려면 셀형 배열 또는 string형 배열을 사용하여 레이블을 지정하십시오. 영향을 받는 속성 이름 목록을 보려면 도움말 문서를 참조하십시오.

  • 오류를 일으킬 수 있는 지원되지 않는 기능 — 지원되지 않거나, 문서에 설명되지 않았거나, 사용할 수 있는 용도가 아닌 기능에 대한 세부 정보를 표로 제공. 지원되지 않는 기능이 오류 및 예기치 않은 동작 변경을 야기할 수 있으므로 문서에 설명된 기능을 사용하도록 코드를 업데이트하십시오. 예를 들어, 'awtinvoke'는 지원되지 않으며 예고 없이 변경되었거나 제거되었을 수 있습니다. 코드를 적절히 변경하여 javaMethodEDT를 대신 사용하십시오.

  • 제거될 기능 — 향후 릴리스에서 제거될 예정인 기능을 코드에서 사용한 것으로 분석되면 관련 세부 정보를 표로 제공. 예: 'aviinfo'는 향후 릴리스에서 제거될 예정입니다. 대신 'VideoReader'를 사용하십시오.

  • 동작 변경될 기능 — 향후 릴리스에서 동작이 변경될 예정인 기능을 코드에서 사용한 것으로 분석되면 관련 세부 정보를 표로 제공. 예: 'interp1(...,'cubic')'은 향후 릴리스에서 3차 컨벌루션을 수행하도록 변경될 예정입니다. 형태 보존 조각별 3차 보간을 계속 사용하려면 'interp1(...,'pchip')'을 대신 사용하십시오.

  • 새 기능을 사용하여 코드 개선 — 새 기능에 대한 세부 정보를 표로 제공. 코드 업데이트를 고려해 보십시오. 현재 코드도 향후 릴리스에서 계속 작동하지만 최신 기능을 사용하는 것이 좋습니다. 예: DISPLAY를 프로그래밍 방식으로 사용하는 것은 권장되지 않습니다. DISP 또는 FPRINTF를 대신 사용하십시오.

문제는 기본적으로 문제 유형별로 그룹화됩니다. 그룹화 기준 목록을 사용하여 문제를 그룹화하는 방법을 변경할 수 있습니다. 리포트를 파일별로 그룹화합니다.

Code Compatibility Analyzer report grouped by file.

심각도별 필터링문제 유형별 필터링 목록을 사용하여 표시된 메시지를 필터링할 수 있습니다. 경고만 표시하도록 리포트를 필터링합니다.

Code Compatibility Analyzer report filtered by severity

현재 폴더와 하위 폴더의 코드에 대한 코드 호환성 리포트를 만듭니다. 리포트가 MATLAB 웹 브라우저에서 열립니다.

codeCompatibilityReport

다른 리포트를 만들지만, 분석에서 하위 폴더를 제외합니다.

codeCompatibilityReport('IncludeSubfolders',false)

현재 작업 폴더와 하위 폴더의 코드에 대한 호환성 분석 결과를 생성합니다.

r = analyzeCodeCompatibility;

결과에서 리포트를 만듭니다. 리포트가 MATLAB 웹 브라우저에서 열립니다.

codeCompatibilityReport(r)

입력 인수

모두 축소

분석할 파일 또는 폴더의 이름으로, 문자형 벡터, 문자형 벡터로 구성된 셀형 배열, string형 스칼라 또는 string형 배열로 지정됩니다.

파일의 이름은 유효한 MATLAB 코드 또는 앱 파일(.m, .mlx 또는 .mlapp)이어야 합니다.

예: '../thisFile.m'

예: {'folderA','folderB','fileA'}

데이터형: char | string

하위 폴더 분석 표시자로, true, false, 0 또는 1로 지정됩니다. 기본적으로 analyzeCodeCompatibility 함수는 분석에 하위 폴더를 포함합니다. 하위 폴더를 생략하려면 tffalse 또는 0으로 설정하십시오.

코드 호환성 분석 결과로, CodeCompatibilityAnalysis 객체로 지정됩니다.

세부 정보

모두 축소

코드 호환성 리포트

코드 호환성 리포트에는 코드를 MATLAB의 새 버전으로 업그레이드하는 데 도움이 되는 정보가 들어 있습니다. 리포트에는 다음 섹션이 있습니다.

  • 구문 오류 — 구문 오류에 대한 세부 정보를 표로 제공. 예: 이 컨텍스트에서는 ~를 사용하여 값을 무시하는 것이 허용되지 않습니다. 구문 오류가 있으면 코드를 실행할 수 없게 되며, 설사 MATLAB 신규 버전에서 이러한 구문 오류가 발생하지 않는다 하더라도 호환성 분석에는 영향을 미치게 됩니다.

  • 제거된 기능 — 제거된 기능을 코드에서 사용한 것으로 분석되면 관련 세부 정보를 표로 제공. 예: 'wavfinfo'가 제거되었습니다. 대신 'AUDIOINFO'를 사용하십시오.

  • 동작 변경된 기능 — 변경된 기능을 코드에서 사용한 것으로 분석되면 관련 세부 정보를 표로 제공. 예: 'legend'가 변경되었으며, 인수 이름을 레이블이 아니라 범례 속성으로 해석할 수 있습니다. 범례 속성과 이름이 동일한 레이블을 포함하려면 셀형 배열 또는 string형 배열을 사용하여 레이블을 지정하십시오. 영향을 받는 속성 이름 목록을 보려면 도움말 문서를 참조하십시오.

  • 오류를 일으킬 수 있는 지원되지 않는 기능 — 여기에 나열된 파일은 지원되지 않거나, 문서에 설명되지 않았거나, 고객이 사용할 수 있는 용도가 아닌 기능을 사용합니다. 오류 및 예기치 않은 동작 변경을 방지하려면 문서에 설명된 기능을 사용하도록 코드를 업데이트하십시오. 예를 들어, 'awtinvoke'는 지원되지 않으며 예고 없이 변경되었거나 제거되었을 수 있습니다. 코드를 적절히 변경하여 javaMethodEDT를 대신 사용하십시오.

  • 제거될 기능 — 향후 릴리스에서 제거될 예정인 기능을 코드에서 사용한 것으로 분석되면 관련 세부 정보를 표로 제공. 예: 'aviinfo'는 향후 릴리스에서 제거될 예정입니다. 대신 'VideoReader'를 사용하십시오.

  • 동작 변경될 기능 — 향후 릴리스에서 동작이 변경될 예정인 기능을 코드에서 사용한 것으로 분석되면 관련 세부 정보를 표로 제공. 예: 'interp1(...,'cubic')'은 향후 릴리스에서 3차 컨벌루션을 수행하도록 변경될 예정입니다. 형태 보존 조각별 3차 보간을 계속 사용하려면 'interp1(...,'pchip')'을 대신 사용하십시오.

  • 새 기능을 사용하여 코드 개선 — 코드 업데이트를 고려해 보십시오. 현재 코드도 향후 릴리스에서 계속 작동하지만 최신 기능을 사용하는 것이 좋습니다. 예: DISPLAY를 프로그래밍 방식으로 사용하는 것은 권장되지 않습니다. DISP 또는 FPRINTF를 대신 사용하십시오.

  • 수행된 검사의 전체 목록 — 지정한 코드에서 수행된 검사에 대한 정보를 제공하는 표.

  • 분석된 파일의 전체 목록 — MATLAB이 코드 호환성 분석을 수행한 파일 목록.

대안

탭에서 MATLAB아래에 있는 앱 아이콘 Code Compatibility Analyzer app icon을 클릭하여 코드 호환성 리포트에 액세스할 수 있습니다.

버전 내역

R2017b에 개발됨