Mac용 visual Studio 2017

Last Update: 2017-06-16

Mac용 Visual Studio 2017의 릴리스를 발표하게 되어 기쁘게 생각합니다. Mac용 Visual Studio는 Visual Studio 제품군의 새로운 멤버로, macOS의 개발자가 Unity로 게임을 개발할 뿐만 아니라 Xamarin 및 .NET Core로 모바일, 웹 및 클라우드용 앱을 빌드할 수 있도록 합니다.

Mac용 Visual Studio 2017을 사용하여 Android, macOS, iOS, tvOS, watchOS, 웹 및 클라우드용 앱을 개발할 수 있습니다. 이를 통해 빠르게 코딩하고, 간단하게 디버그 및 진단하고, 자주 테스트하며, 안심하고 릴리스하세요. 이 새로운 릴리스로 버전 제어를 사용하고, 민첩하게 대처하고, 효율적으로 공동 작업하세요.

Mac용 Visual Studio 2017 다운로드

다른 관련 다운로드에 대해 자세히 알아보려면 다운로드 페이지를 참조하세요. Mac용 Visual Studio 2017에 대한 자세한 내용은 Mac 시스템 요구 사항Mac 플랫폼 대상 지정 및 호환성을 참조하세요.

사용자 의견

Microsoft는 여러분의 의견을 기다리고 있습니다! 설치 관리자나 Visual Studio IDE 자체에서 문제 보고 옵션을 통해 문제를 보고할 수 있습니다. 오른쪽 위 모서리에 옵션이 있습니다. Developer Community(개발자 커뮤니티) 포털에서 의견을 추적할 수 있습니다. 제안 사항이 있는 경우 UserVoice 사이트를 통해 알려주세요.

릴리스 날짜: 2017년 6월 2일 - Mac 7.0.1.24용 Visual Studio

이 릴리스에서는 다양한 버그 및 메모리 누수를 해결합니다.

Android SDK Manager

  • 수정됨: SDK 라이선스가 올바르게 줄 바꿈되지 않습니다.
  • 수정됨: 취소 단추의 레이블이 [업데이트 설치]로 다시 변경되지 않습니다.
  • 수정됨: SDK 도구의 최신 빌드 제거 시 모든 SDK 도구가 제거됩니다.
  • 수정됨: 업데이트가 진행되는 동안 구성 요소를 수정할 수 있습니다.
  • 수정됨: 권한 문제로 인해 독립 실행형 설치 관리자에서 다운로드한 SDK 도구를 사용할 수 없습니다.
  • 수정됨: 이전에 제거한 구성 요소를 설치할 수 없습니다.
  • 수정됨: SDK 도구 25.2.5 설치에 실패합니다.

기타 문제

  • 수정됨: 세로 정렬 문서 창을 사용하여 문서를 복원하는 데 문제가 있습니다.
  • 수정됨: 'InitializeComponent' 이름이 .NETStandard/새 csproj 형식의 이식 가능한 라이브러리를 사용하는 현재 컨텍스트에 존재하지 않습니다.
  • 수정됨: Android 배포는 릴리스 모드에서 자동으로 실패합니다.
  • 수정됨: 빠른 수정에서 어떤 작업도 수행하지 않습니다.
  • 수정됨: 참조 편집 대화 상자에서 참조 제거가 작동하지 않습니다.
  • 수정됨: Test Cloud로 iOS Forms PCL 앱을 업로드하면 "알 수 없는 MSBuild 오류"가 발생하면서 빌드 단계가 실패합니다.
  • 수정됨: .Net Core 응용 프로그램에서 변수를 검사할 수 없습니다.
  • 수정됨: F# 디버깅 명령이 모든 파일에 표시됩니다.
  • 수정됨: F# Xamarin Forms 템플릿에서 패키지를 복원하지 않습니다.
  • 수정됨: .NET Core 응용 프로그램을 디버깅하는 동안 스레드를 선택하면 호출 스택이 사라집니다.
  • 수정됨: Shift 키와 아래쪽 키를 계속 누르면 뷰포트를 넘는 텍스트가 선택됩니다.
  • 수정됨: 패키지를 복원하는 동안 UI가 잠깁니다.
  • 수정됨: 편집기에서 전체 텍스트를 렌더링하지 않습니다.
  • 수정됨: Apple 이벤트를 사용하여 파일을 열 때 솔루션 로드 후 파일 열기 순서 문제가 발생합니다.
  • 수정됨: 클래스 이름과 일치하도록 파일 이름을 바꾸면 파일이 삭제됩니다.
  • 수정됨: FooButton_Clicked 처리기 완료에서 메서드 스텁을 생성하지 않습니다.
  • 수정됨: 화면을 분할하면 메뉴 항목이 사용 중지됩니다.

Mac용 Visual Studio의 새로운 기능

핵심 기능

Mac용 Visual Studio에는 전기능의 소스 편집기, 코드 검색 및 탐색, 강력한 디버거, 사용자 지정 가능 작업 영역, Git 통합 및 풍부한 확장 시스템을 포함하여 최신 IDE에서 기대하는 모든 기능이 포함되어 있습니다.

이러한 기능에는 다음이 포함됩니다.

  • Roslyn 기반 C# IntelliSense, 리팩터링, 분석기 및 코드 수정
  • NuGet 기반 패키지 관리
  • Visual Studio 호환 가능한 프로젝트 형식
  • MSBuild 빌드 엔진
  • 통합 유닛 테스트
  • F#에 대한 기본 제공 지원

.NET Core 지원

.NET Core는 Windows, Linux 및 Mac에서 실행할 수 있는 응용 프로그램을 만들기 위한 플랫폼입니다. Mac용 Visual Studio에서는 .NET Core 프로젝트의 로드, 생성, 실행 및 디버깅에 대한 지원을 제공합니다.

.NET Core 프로젝트를 실행하려면 .NET Core SDK를 다운로드 및 설치해야 합니다.

.NET Core 지원에는 다음이 포함됩니다.

  • C# 및 F# IntelliSense
  • 콘솔, 라이브러리 및 웹 응용 프로그램용 .NET Core 프로젝트 템플릿
  • 중단점, 호출 스택, 조사식 창 등을 포함하는 전체 디버깅 지원
  • NuGet PackageReferences 및 MSBuild 기반 복원
  • .NET Core SDK에 포함된 Visual Studio 테스트 플랫폼을 사용하여 테스트를 실행 및 디버그하기 위한 통합 유닛 테스트 지원
  • 이전 project.json 형식에서의 마이그레이션

웹 도구

Mac용 Visual Studio에서는 HTML, CSS 및 JSON 파일에 대한 새로운 웹 도구 지원을 추가적으로 제공합니다.

HTML

  • 새 HTML 템플릿
  • 향상된 스마트 들여쓰기 및 서식 지정
  • 향상된 색 지정
  • 향상된 IntelliSense
  • 코드 접기(사용하도록 설정해야 함)
  • 명령 축소
  • 향상된 코드 템플릿(조각)
  • <div>를 사용하여 선택한 코드 감싸기
  • 옵션 위로/아래로를 사용하면 선택한 텍스트가 위/아래로 이동됩니다.

CSS

  • 향상된 스마트 들여쓰기 및 서식 지정
  • 향상된 색 지정
  • 향상된 IntelliSense
  • 코드 접기
  • 다양한 코드 템플릿(조각)
  • 옵션 위로/아래로를 사용하면 선택한 텍스트가 위/아래로 이동됩니다.

JSON

  • schemastore.org에 액세스할 수 있는 스키마 선택 기능
  • 스키마의 유효성 검사
  • 스키마의 IntelliSense
  • 향상된 스마트 들여쓰기 및 서식 지정
  • 향상된 색 지정
  • 주석 처리/주석 처리 제거
  • 큰따옴표 삽입 및 중괄호 일치
  • 옵션 위로/아래로를 사용하면 선택한 텍스트가 위/아래로 이동됩니다.

Xamarin

최고 수준의 Xamarin 지원을 통해 Android, macOS, iOS, tvOS 및 watchOS에 대한 풍부한 네이티브 환경을 개발할 수 있습니다. Xamarin.Forms 플랫폼 간 응용 프로그램은 네이티브 기능에 대한 액세스를 제한하지 않으면서 Android, iOS 및 macOS 간에 XAML 기반 UI 코드를 공유할 수 있도록 합니다.

여기에는 다음이 포함됩니다.

  • 빌드, 배포, 디버깅, 프로파일링
  • iOS 및 Android용 끌어서 놓기 UI 디자이너
  • Xamarin Forms에 대한 실시간 미리 보기
  • .NET Standard 호환 프레임워크
  • 네이티브 API에 대한 바인딩

다중 플랫폼 앱 템플릿

이제 다중 플랫폼 Xamarin.Forms 앱네이티브 앱 프로젝트 템플릿을 사용하면 다중 플랫폼 모바일 앱 및 해당 클라우드 백 엔드를 빠르게 만들 수 있습니다.

이러한 템플릿은 공유 프로젝트를 통해 코드를 공유하는 Xamarin.iOS 앱 프로젝트 및 Xamarin.Android 앱 프로젝트, 앱에 대한 백 엔드 서비스를 구현하는 .NET Core 웹 API 프로젝트(그림 1)를 비롯한 다양한 프로젝트를 만듭니다.

Debugging with .NET Core

(그림 1) .NET Core를 사용한 디버깅

Azure App Service에 ASP.NET Core 웹앱 게시

Azure App Service에 ASP.NET Core 웹앱을 게시할 수 있습니다(그림 2).

Publish to Azure content menu

(그림 2) Azure 콘텐츠 메뉴에 게시

웹앱을 게시하려면 Solution Pad 또는 프로젝트 메뉴에서 게시 | Azure에 게시 명령을 선택합니다. 그런 후 배포하려는 App Service를 선택하거나 새 Azure App Service를 만듭니다(그림 3). 게시의 출력이 게시 출력 패드에 로깅되고 게시 프로필이 프로젝트의 속성 > PublishProfiles 아래에 생성됩니다.

Publish a new app service

(그림 3) 새 App Service 게시

프로젝트에 정의된 모든 게시 프로필은 게시 메뉴 내의 옵션으로 표시되므로 App Service를 한 번 더 선택하지 않고도 다시 배포할 수 있습니다.

다중 프로세스 디버깅

프로젝트에는 프로젝트를 실행하기 위한 옵션 및 인수를 지정하는 프로젝트 실행 구성이 있습니다. 도구 모음의 드롭다운을 사용하여 현재 활성 상태인 실행 구성을 보고 변경할 수 있습니다.

Mac용 Visual Studio의 솔루션 실행 구성 창에서는 여러 프로젝트를 한 번에 실행할 수 있습니다. 솔루션 옵션 대화 상자에서 솔루션 실행 구성을 만들 수 있습니다. 이렇게 하면 모바일 앱이 백 엔드 서비스와 상호 작용하는 방식을 디버그하는 데 매우 유용합니다.

TextMate 번들

Mac용 Visual Studio는 다음을 추가하는 데 사용할 수 있는 TextMate 언어 번들을 지원합니다.

  • 편집기 색 테마
  • 코드 조각
  • 새 언어에 대한 문법, 강조 표시 및 기본 IntelliSense 사용

기본 설정 > 텍스트 편집기 > 언어 번들에서 TextMate 번들을 추가할 수 있습니다.

iOS

오디오 장치 마법사

새 오디오 장치 확장 마법사(그림 4)는 오디오 장치 프로젝트 템플릿 plist를 사용자 지정하기 위한 세 가지 옵션을 추가적으로 제공합니다.

  • 오디오 장치 유형
    • 계기
    • Generator
    • 효과
    • 음악 효과
  • 하위 형식 코드: 정확히 4자여야 합니다.
  • 제조업체 코드: 정확히 4자여야 합니다.

Audio Unit Wizard

(그림 4) 오디오 장치 마법사

watchOS 확장 마법사

Xcode 8.3에서 Apple은 인텐트 확장(Siri)을 시작으로 여러 watchOS 확장(iOS 확장과 유사)을 도입했습니다.

watchOS 확장 마법사(그림 5)는 watchOS 확장을 지원하도록 업데이트되었으므로 이제 전용 인텐트 확장 템플릿을 사용할 수 있습니다.

watchOS extension wizard

(그림 5) watchOS 확장 마법사

기타 개선 사항 및 버그 수정
  • 이제 자동 완성 창에서 DeprecatedObsoleted 특성을 처리합니다. 이렇게 하면 Xamarin.iOS의 사용되지 않는 API가 취소선으로 표시될 수 있습니다.
  • 장치에 배포할 때 진행률 표시줄이 표시됩니다. 이 기능은 watchOS에 특히 유용합니다. (Xamarin.iOS 10.5.0.323+ 필요) .
  • Xamarin.iOS의 알려진 OS 버전을 사용하여 배포 대상 드롭다운을 채웁니다.
    두 가지 장점은 각 앱 확장 형식에 대해 정확한 최소 버전을 제공할 수 있다는 것과 Xamarin.iOS에서 아직 지원하지 않는 Xcode 기반의 OS 버전이 표시되지 않는다는 것입니다.

Mac/iOS API 문제 분석기

  • 분석기가 트리거될 때 중복된 표식을 수정합니다.
  • 특성에서 "message"(API가 더 이상 사용되지 않는 이유를 설명하는 프레임워크의 정보 부분)를 가져온 후 다른 가용성 메시지에 해당 정보를 추가합니다.
  • 명확성을 높이기 위해 모든 가용성 메시지가 업데이트되었습니다.
  • 가용성 메시지에서 기호 이름을 사용하여 명확성이 개선되었습니다. 다음을
    API Usage Issue: this API requires iOS 10.0 or later
    다음과 같이 변경합니다.
    'MyMethod' is only available on iOS 10.0 or newer

Android

  • 새 SDK Manager

Mac용 Visual Studio에는 자체 Android SDK Manager(그림 6)가 포함되어 있습니다.

Android SDK Manager window

(그림 6) Android SDK Manager

  • 이제 장치 또는 에뮬레이터에 대한 프로젝트 배포는 /t:Install msbuild 대상을 통해 수행됩니다. 이전에는 Mac용 Visual Studio에서 장치에 응용 프로그램을 배포하기 위해 자체의 내부 논리를 사용했지만 이제는 터미널에서 사용할 수 있는 대상 또는 Windows의 Visual Studio에서 사용되는 대상과 동일한 공통 대상을 사용합니다. 이러한 방식의 이점 중 하나는 보다 나은 로그를 토대로 배포 문제를 진단할 수 있다는 것입니다.

  • 새 바인딩 프로젝트의 기본값은 이제 class-parse입니다. 이는 JVM 없이 직접 Java 바이트 코드를 구문 분석할 수 있습니다. 이제 디버그 기호를 포함하는 Java 바이트 코드에서 매개 변수 이름을 추출할 수 있습니다. javac -g로 컴파일된 바이트 코드를 예로 들 수 있습니다. 또한 class-parse는 확인할 수 없는 형식의 멤버에서 상속하거나 이러한 멤버를 포함하는 클래스를 “건너뛰지” 않습니다.

액세스 가능성

  • 이 버전의 Mac용 Visual Studio에는 Voice Over와 같은 보조 기술을 지원합니다. 이러한 기술을 통해 사용자 인터페이스의 많은 부분(예: 편집기 및 솔루션 탐색기)에 대한 접근성이 높아졌습니다. 그러나 이는 여전히 진행 중인 작업이며 향후 릴리스에서 추가 개선 사항이 제공될 예정입니다. 내게 필요한 옵션 기능은 접근성 기본 설정 또는 다음을 입력하는 명령줄을 통해 활성화할 수 있습니다.

    defaults write com.microsoft.visual-studio com.monodevelop.AccessibilityEnabled 1