Visual Studio Icon Visual Studio 2017 버전 15.7 릴리스 정보Visual Studio 2017 version 15.7 Release Notes


| 개발자 커뮤니티 | 시스템 요구 사항 | 호환성 | 배포 가능한 코드 | 사용 조건 | 블로그 | 알려진 문제 || Developer Community | System Requirements | Compatibility | Distributable Code | License Terms | Blogs | Known Issues |


참고

영어 이외의 언어 버전에서 이 페이지에 액세스하는 경우 최신 콘텐츠를 보려면 영문 릴리스 정보 페이지를 방문하십시오.If you are accessing this page from a non-English language version, and want to see the most up-to-date content, please visit this Release Notes page in English. 페이지 바닥글에서 지구본 아이콘을 클릭하고 원하는 언어를 선택하여 이 페이지의 언어를 변경할 수 있습니다.You can change the language of this page by clicking the globe icon in the page footer and selecting your desired language.


단추를 클릭하여 Visual Studio 2017 최신 버전을 다운로드합니다.Click a button to download the latest version of Visual Studio 2017. Visual Studio 2017 설치 및 업데이트에 대한 지침은 Visual Studio 2017을 최신 릴리스 버전으로 업데이트를 참조하세요.For instructions on installing and updating Visual Studio 2017, see Update Visual Studio 2017 to the most recent release. 또한 오프라인으로 설치하는 방법에 대한 지침도 참조하세요.Also, see instructions on how to install offline.


15.7의 새로운 기능What's New in 15.7

Visual Studio 블로그는 엔지니어링 팀의 제품 정보가 제공되는 공식 출처입니다.The Visual Studio Blog is the official source of product insight from the Visual Studio Engineering Team. 다음 게시물에서 Visual Studio 15.7 릴리스에 대한 자세한 정보를 찾을 수 있습니다.You can find in-depth information about the Visual Studio 15.7 releases in the following posts:

Visual Studio 2017 버전 15.7 릴리스Visual Studio 2017 version 15.7 Releases

Visual Studio 2017 버전 15.7 공지Visual Studio 2017 version 15.7 Announcements

15.7의 주요 새로운 기능 요약Summary of Notable New Features in 15.7


15.7에서 해결된 주요 문제Top Issues Fixed in 15.7

고객이 보고한 문제 중 15.7에서 해결된 문제는 다음과 같습니다.These are the customer-reported issues addressed in 15.7:

고객이 보고하여 Visual Studio 2017 버전 15.7에서 해결된 모든 문제를 참조하세요.See all customer-reported issues fixed in Visual Studio 2017 version 15.7.

The Developer Community Portal


15.7의 새로운 기능에 대한 세부 정보Details of What's New in 15.7

Release Notes Icon Visual Studio 2017 버전 15.7.0Visual Studio 2017 version 15.7.0

릴리스 날짜: 2018년 5월 7일released on May 07, 2018

15.7의 새로운 기능New Features in 15.7

성능Performance

  • 이 릴리스에서는 C# 및 VB 프로젝트에 대한 솔루션 로드 시간이 평균 20% 향상되었습니다.In this release, we improved solution load time for C# and VB projects by an average of 20%.
  • 대형 .NET Core 프로젝트에서 IntelliSense를 로드하는 데 걸리는 시간을 25% 줄였습니다.In large .NET Core projects, we reduced the time to load IntelliSense by 25%.
  • Git에서 분기를 전환할 때 솔루션 및 프로젝트를 다시 로드할 필요가 없는 경우 모달 진행률 대화 상자가 제거됩니다.When switching branches in Git, the modal progress dialog has been removed when solutions and projects do not need to be reloaded.

Visual Studio 설치Installing Visual Studio

  • 업데이트 대화 상자에서는 새로운 기능, 다운로드 크기 및 최신 업데이트 버전과 같은 업데이트에 대한 자세한 정보를 제공합니다.The update dialog provides more details about your update, such as what's new, the download size, and the latest update version.
  • 향상된 저장 환경: Visual Studio를 업데이트하기 전에 먼저 보류 중인 모든 변경 내용을 로컬로 저장한 후에 업데이트를 시작합니다.Improved save experience: Before you update Visual Studio, all pending changes will be saved locally first -- before starting the update. 업데이트 대화 상자에 지금 업데이트 대신 모두 저장 및 업데이트 단추가 표시됩니다.The update dialog, will show a Save All & Update button instead of Update Now.
  • 다운로드 캐시, 공유 구성 요소, 일부 SDK 및 도구를 다른 드라이브로 이동하여 시스템 드라이브의 설치 공간을 줄였습니다 (그림 1).We reduced the installation footprint on the system drive by moving the download cache, shared components, some SDKs, and tools to different drives (Figure 1).
Install Locations
(그림 1) 설치 위치 선택(Figure 1) Choose install locations

관리할 수 있는 위치는 세 곳이며, 이들 위치는 처음 설치할 때만 설정할 수 있습니다.There are three locations you can manage, and these locations can only be set with your very first installation:

  • Visual Studio 핵심 제품: 이 위치는 설치하기로 선택한 Visual Studio 버전에 대한 특정 파일을 위한 것입니다.Visual Studio core product: This location is for files that are specific to the version of Visual Studio you selected to install.
  • 다운로드 캐시: 설치 파일과 매니페스트가 이 위치에 다운로드됩니다.Download cache: Installation files and manifests will be downloaded to this location. 확인란의 선택을 취소하여 다운로드 캐시를 유지하지 않으려면 설치가 완료된 후에 해당 파일이 제거됩니다.If you decide not to keep the download cache by unchecking the check box, the files will be removed after installation completes.
  • 공유 구성 요소, 도구 및 SDK: 이 위치는 Visual Studio 병렬 설치에서 공유하는 파일에 대한 위치입니다.Shared components, tools, and SDKs: This location is for files that are shared by side-by-side Visual Studio installations.

참고

설치된 위치와 다른 규칙이 적용되는 도구 및 SDK는 이 드라이브에 설치되지 않습니다.Tools and SDKs that have different rules as to where they are installed, won’t be installed to this drive. 이는 도구/SDK 특정 규칙이 우선 적용되기 때문입니다.The tool/SDK specific rules take precedence.

참고

사용자는 패키지 캐시를 사용하지 않도록 설정하고 위치를 설정할 수 있습니다.Users can disable the package cache and set the location.

Visual Studio IDEVisual Studio IDE

이제는 장기 실행 작업에서 Visual Studio를 사용 중인 상태로 유지하고 있음을 나타내는 대화 상자 창 (그림 2) 에서 화면 판독기(예: NVDA, 내레이터 등)에 액세스할 수 있습니다.The dialog window (Figure 2) that indicates which long running operation is keeping Visual Studio busy, is now screen reader accessible (for example, NVDA, Narrator, etc.). Visual Studio에서 대화 상자를 표시하면 화면 판독기에서 오디오 큐를 재생하여 새 정보가 화면에 표시됩니다.When the dialog is shown by Visual Studio, the screen reader plays an audio cue indicating new information is visible on the screen. 내레이터에서 뷰 변경 명령을 호출하여 사용자가 대화 상자의 내용을 읽거나, 사용 가능한 경우 취소 단추와 상호 작용할 수 있습니다.Users can read the contents of the dialog or interact with the Cancel button when available by invoking the Change View command in Narrator.

Wait dialog
(그림 2) 대화 상자 창이 로딩되면서 화면 판독기에 액세스할 수 있음(Figure 2) Loading dialog window, now screen reader accessible

참고

내레이터를 완전하게 지원하려면 Windows 10 Redstone 4(RS4) 빌드를 사용해야 합니다.For full Narrator support, you must be using Windows 10 Redstone 4 (RS4) builds.

Visual C++ 개선 사항Visual C++ Improvements

  • 이 릴리스에는 CVE-2018-1037에서 설명한 대로 PDB 파일의 로컬 정보 공개 취약성에 대한 픽스가 포함되어 있습니다.This release contains a fix for a local information disclosure vulnerability in PDB files as described in CVE-2018-1037.
  • C5045는 컴파일러에서 Spectre 완화를 삽입한 코드 패턴이 표시되는 새로운 컴파일러 진단입니다.C5045 is a new compiler diagnostic that lets you see code patterns where the compiler would have inserted a Spectre mitigation.
  • Visual Studio의 번들된 CMake 설치가 3.10에서 3.11로 업그레이드되었습니다.Visual Studio's bundled CMake installation has been upgraded from 3.10 to 3.11.
  • CMake 프로젝트는 VCXProj와 같은 C++ 코드의 정적 분석을 지원합니다.CMake projects support static analysis of C++ code, such as VCXProj.
  • MSVC는 컴파일 시간에 std::string_view much를 더 유용하게 만드는 P0426R1 "std::char_traits" C++ 17 기능을 지원합니다.MSVC supports the C++17 feature P0426R1 "constexpr for std::char_traits," which makes std::string_view much more usable at compile time.
  • 각 단위 테스트 위에 CodeLens를 사용하여 테스트 상태를 실행, 디버그 및 표시합니다(그림 3).Use CodeLens above each of your unit tests to Run, Debug, and view Test Status (Figure 3).
Use CodeLens above each of your unit tests
(그림 3) 각 단위 테스트 위에 CodeLens 사용(Figure 3) Use CodeLens above each of your unit tests
  • C++용 Visual Studio iOS 개발 도구가 Xcode 9에서 작동하도록 업데이트되었습니다.We updated the Visual Studio iOS development tools for C++ to work with Xcode 9.
  • 규칙 집합 구성에 따라 C++ 코드 분석 도구에서 경고를 필터링하는 /analyze:ruleset 옵션이 cl.exe에 추가되었습니다.We added /analyze:ruleset option to cl.exe for filtering down warnings in the C++ Code Analysis tools based on ruleset configuration. 이로 인해 컴파일러와 IDE의 독립 실행형 호출 간에 일관된 환경이 제공되고 규칙 집합에 언급된 규칙만 실행하여 성능이 향상됩니다.This results in a consistent experience between standalone invocations of the compiler and the IDE and improves performance by running only the rules mentioned in ruleset.
  • 생성자 상속은 이제 다른 기본 클래스 멤버를 상속하는 것과 동일하게 작동합니다.Inheriting a constructor now works the same as inheriting any other base class member. 이전에는 이 작업이 원본에 위임하는 새 생성자를 선언하여 수행되었습니다. 이 변경으로 인해 기본 클래스 생성자가 파생 클래스에서 파생 클래스 생성자인 것처럼 표시되므로 C++의 일관성이 향상됩니다.Previously, this worked by declaring a new constructor that delegates to the original; with this change, base class constructors are visible in a derived class as if they were derived class constructors, improving consistency in C++.
  • 모든 형식을 형식이 아닌 매개 변수로 사용하도록 설계된 템플릿은 이제 템플릿 매개 변수 목록에서 auto 키워드를 사용할 수 있습니다.Templates that are designed to take any type as a non-type parameter can now use the auto keyword in the template parameter list. 이렇게 하면 인스턴스화 시점에서 템플릿 매개 변수의 형식을 확인하고 제공할 필요 없이 인스턴스화에서 모든 형식을 사용할 수 있습니다.This allows instantiations to use any type instead of needing to determine and supply the type of template parameter at the point of instantiation.
  • std::launder가 이제 지원됩니다.std::launder is now supported.
  • 2단계 이름 조회는 거의 모든 경우에 올바르게 작동합니다.Two-phase name lookup operates correctly in almost all cases. 오버로드된 연산자에 종속되지 않는 함수 호출과 같은 일부 에지의 경우는 향후 업데이트에서 수정될 예정입니다.Some edge cases, such as non-dependent function calls to overloaded operators, will be fixed in a future update.
  • MSVC 컴파일러 도구 집합은 C++ 17 표준을 준수합니다.The MSVC compiler toolset conforms with the C++ 17 Standard. /Zc:__cplusplus 스위치를 사용하여 컴파일할 때 __cplusplus 매크로의 값에서 올바른 표준 버전 번호를 반영합니다.When compiling with the /Zc:__cplusplus switch, the value of the __cplusplus macro reflects the correct Standard version numbers.
  • Visual C++ 런타임에서 이제 Spectre 변형 1 취약성에 대한 완화를 지원합니다.The Visual C++ Runtime supports mitigations for the Spectre variant 1 vulnerability. 이 도구 집합에는 완화된 버전과 완화되지 않은 버전의 DLL이 포함되어 있습니다.The toolset includes mitigated and non-mitigated versions of the DLLs. 또한 코드 생성 속성 페이지에서 Spectre 완화 기능을 사용하면 완화된 버전의 DLL에 연결됩니다.Enabling the Spectre Mitigation feature in the Code Generation property page will also cause linking to the mitigated version of the DLL. Spectre 완화에 대한 자세한 내용은 Visual C++ 팀 블로그를 참조하세요.More information about Spectre mitigations is available on the Visual C++ Team Blog.
  • 최적화되지 않은 빌드(/Od)의 Spectre 완화에 대한 컴파일러 지원이 활성화되었습니다.Enabled compiler support for Spectre mitigations in non-optimized builds (/Od).
  • /Zf 스위치가 이제 기본적으로 활성화되어 여러 컴파일 프로세스를 사용할 때 PDB가 더 빨리 생성됩니다.The /Zf switch is now enabled by default, which enables faster PDB generation when using multiple compilation processes.
  • /await에 대한 코드 생성이 크게 향상되었습니다.We significantly improved the code generation for /await. 코드 생성기에 코루틴을 다시 구현하여 안정성이 향상되고 대부분의 버그가 수정되었습니다.We re-implemented coroutines in the code generator to improve reliability, fixing the vast majority of bugs.
  • CMake 대상 보기는 솔루션 탐색기에서 CMake 프로젝트의 원본을 표시하는 다른 방법을 제공합니다. 즉 폴더 기반 보기 대신 코드를 개별 CMake 대상으로 구성합니다 (그림 4).The CMake Targets View provides an alternative way to view a CMake project's source in the Solution Explorer; instead of a folder-based view, it organizes the code into individual CMake targets (Figure 4). 이 구성은 CMake "Visual Studio" 생성기에서 만든 프로젝트 및 솔루션 파일의 구성과 비슷합니다.The organization is similar to the organization of the Project and Solution files created by the CMake "Visual Studio" generator.
CMake Targets View
(그림 4) CMake 대상 보기(Figure 4) CMake Targets View
  • CMake 프로젝트에 속한 원본 파일(.cpp)은 CMake 메뉴를 통하거나 솔루션 탐색기에서 원본 파일을 마우스 오른쪽 단추로 클릭하여 개별적으로 작성할 수 있습니다.Source files (.cpp) belonging to CMake projects can be built individually via the CMake menu or by right-clicking on a source file in the Solution Explorer.
  • 태그 구문 분석 오류의 원인이 되는 알 수 없는 매크로에 녹색 물결선 밑줄이 표시됩니다.Unknown macros that cause tag-parsing errors are now underlined with green squiggles. 빠른 작업을 통해 매크로를 C++ 힌트 파일에 자동으로 추가하여 문제를 해결할 수 있습니다.A quick action is available to automatically add the macro to a C++ Hint file to resolve the issue. 솔루션 또는 폴더의 모든 태그 구문 분석 오류는 프로젝트 메뉴에서 태그 구문 분석 오류 표시를 클릭하여 나열할 수 있습니다.All tag-parsing errors in the Solution or folder can be listed by clicking Display Tag Parser Errors on the Project menu.
  • 폴더 열기에서 빠른 작업을 사용하여 CppProperties.json 포함 경로에 헤더를 추가합니다.Add headers to the CppProperties.json include path with quick actions in Open Folder.
  • Linux 및 Unix 유사 시스템의 헤더가 이제 Windows의 IntelliSense에서 사용하기 위해 자동으로 다운로드됩니다.Headers from Linux and Unix-like systems are now automatically downloaded for use by IntelliSense on Windows. 또한 이러한 기능은 Linux 네이티브 플랫폼 개발에 향상된 IntelliSense 환경을 제공하는 데도 사용됩니다.These are also used to provide an enhanced IntelliSense experience for Linux native Platform development.
  • 지침 지원 라이브러리의 사용과 관련하여 C++ Core Guidelines의 항목을 적용하는 새로운 5개 규칙이 추가되었습니다.We added five new rules enforcing items from the C++ Core Guidelines regarding use of the Guidelines Support Library.
  • 집계 형식에서 공용 기본 클래스를 허용하므로 상용구 생성자를 작성하지 않고 집계 초기화 구문을 사용하여 초기화할 수 있습니다.We allow public base classes in aggregate types, so that they can be initialized using aggregate initialization syntax without writing boilerplate constructors. 중괄호로 묶은 초기화 목록에서 기본 클래스가 먼저 초기화된 다음, 데이터 멤버가 초기화됩니다.In the braced initializer list, bases are initialized first, followed by data members.
  • 함수에 대한 템플릿 인수 추론이 템플릿 클래스의 생성자로 확장됩니다. 이에 따라 클래스 템플릿을 만들 때 인수를 더 이상 지정할 필요가 없습니다.Extend template argument deduction for functions to constructors of template classes; when you construct a class template, it is no longer necessary to specify the arguments.
  • C++ 17에서는 한정 변환의 정의가 변경되었습니다.C++17 has changed the definition of qualification conversions. 이전에는 이러한 변환이 여러 수준 포인터와 혼합 포인터 간에 허용되어 해당 한정자를 첫 번째 수준 이외의 수준에 추가할 수 있는 경우가 있었지만 배열에도 마찬가지로 적용되지 않았습니다.Previously, these were permitted between multi-level pointers and mixed pointers, such that qualifiers could often be added at levels other than the first; however, this did not similarly apply to arrays.
  • 멤버 액세스, 할당 및 배열 인덱스와 같이 이전에 컴파일러 구현 세부 정보에 남겨진 주요 C++ 연산자에 대한 식 평가 순서가 구체화되었습니다.Refined the expression evaluation order for major C++ operators that were previously left to compiler implementation detail, for example, member access, assignment, and array index.
  • using 선언을 확장하여 variadic 기본 클래스 멤버에 대한 팩 확장 의미 체계를 지원합니다. 그러면 파생 클래스 내에서 사용할 수 있습니다.Expand the using declaration to support pack expansion semantics for variadic base class members, which can then be used inside the derived class.
  • SFINAE 식이 이제 완전히 구현되었고 해당 표준 템플릿 라이브러리가 변경되었습니다.We are now complete with the full implementation of Expression SFINAE, and made the corresponding Standard Template Library changes.
  • ISO C++ 17 표준을 준수하는 병렬 알고리즘이 구현되었습니다.We implemented parallel algorithms conforming to the ISO C++17 standard. 자세한 내용은 [VSInstallDir]\VC\Tools\MSVC\<ver>\include\yvals.h에 있는 원본 파일을 참조하세요.See the source file located at [VSInstallDir]\VC\Tools\MSVC\<ver>\include\yvals.h for additional details.
  • /std:c++17 모드에서 C4834 경고 수준("'nodiscard' 특성이 포함된 함수의 반환 값을 버리는 중")이 W3에서 W1로 높아졌습니다.In /std:c++17 mode, the warning level of C4834 ("discarding return value of function with 'nodiscard' attribute") is increased from W3 to W1. 또한 컴파일러에서 auto로 선언된 형식이 아닌 템플릿 인수의 형식을 추론할 수 있습니다.In addition, the compiler can now deduce the type of a non-type template argument that is declared with auto.
  • /Debug:fastlink PDB를 사용한 대형 솔루션 디버깅이 더 강력해졌습니다.Debugging large solutions with /Debug:fastlink PDBs is more robust. PDB의 변경 사항으로 인해 VS 디버거에서 지연 시간이 감소하고 힙 메모리 소비가 30% 감소했습니다.Changes in the PDB lead to reduced latency and a 30% reduction in heap memory consumption in the VS Debugger.
  • C++ Core Check는 이제 네이티브 코드 분석을 위한 기본 도구 집합의 일부입니다.C++ Core Check is now part of the default toolset for native code analysis. 코드 분석이 프로젝트를 통해 실행될 때마다 C++ Core Check에서 기본 권장 규칙 외에도 규칙의 하위 집합이 활성화됩니다.Whenever code analysis is executed over a project, a subset of rules is enabled from C++ Core Check in addition to default recommended rules.
  • Linux 프로젝트에 대한 병렬 컴파일 지원을 추가하여 빌드 시간이 크게 향상되었습니다.We added parallel compilation support for Linux projects, which may significantly improve build times. 이는 속성 페이지> C/C++ > 최대 병렬 컴파일 작업 수를 통해 사용하도록 설정할 수 있습니다.This can be enabled via Property Pages > C/C++ > Max Number of Parallel Compilation Jobs.
  • "공용 프로젝트 포함 디렉터리" Linux 프로젝트 속성을 추가하여 Linux 솔루션의 프로젝트 간 참조에서의 포함 사용이 향상되었습니다.The "Public Project Include Directories" Linux project property has been added to improve consumption of includes from project-to-project references in Linux solutions.
  • C++ 개발자를 위한 ClangFormat 지원이 IDE에 추가되었습니다.We added ClangFormat support for C++ developers in the IDE. EditorConfig와 마찬가지로 ClangFormat을 사용하여 개발 팀 전체에 적용할 수 있는 방식으로 코드의 스타일과 서식이 입력하는 대로 자동으로 지정됩니다.Similar to EditorConfig, you can use ClangFormat to automatically style and format your code as you type, in a way that can be enforced across your development team.

C# 컴파일러C# Compiler

버그 수정 외에도, 이 릴리스에서 제공하는 C# 7.3 기능은 다음과 같습니다.In addition to bug fixes, this release brings the following C# 7.3 features:

PythonPython

  • 프로젝트를 마우스 오른쪽 단추로 클릭하고 Python > MyPy를 차례로 선택하여 프로젝트에서 MyPy를 실행할 수 있습니다.You can run MyPy on a project by right-clicking on the project and selecting Python > MyPy. MyPy는 코드를 형식 힌트와 대조하여 확인하고, 검색된 모든 형식의 오류가 오류 목록에 표시됩니다.MyPy will check your code against type hints, and any type errors detected will be shown in the error list.
  • Conda 환경을 만들고 사용할 수 있으며, pip 또는 Conda를 사용하여 Conda 환경에 대한 패키지를 관리할 수 있습니다.You can create and use Conda environments as well as manage packages for your Conda environments using pip or Conda.
  • Anaconda 버전 5.1.0은 이제 Visual Studio 설치 관리자에서 사용할 수 있으며, 데이터 과학 작업이 선택되면 기본적으로 설치됩니다.Anaconda version 5.1.0 is now available from the Visual Studio Installer and is installed by default when the Data Science workload is selected.
  • 인기 있는 오픈 소스 pydevd 디버거를 기반으로 하는 Python 디버거의 ptvsd 4.0 버전에 옵트인이 추가되었습니다.We added an opt-in to the ptvsd 4.0 version of the Python debugger based on the popular open source pydevd debugger. 옵트인은 도구 > 옵션 > Python > 실험적에서 실험용 디버거 사용을 선택하여 활성화할 수 있으며, 응용 프로그램에 더 빠른 디버깅 성능을 제공합니다.The opt-in offers faster debugging performance for applicationscan and can be enabled by checking Use experimental debugger from Tools > Options > Python > Experimental.
  • 디버거, Conda, MyPy 및 형식 힌트를 사용하는 방법에 대한 자세한 내용은 Visual Studio 15.7의 Python 블로그 게시물을 확인하세요.Check out the Python in Visual Studio 15.7 blog post for more on using the debugger, Conda, MyPy, and type hints.

Xamarin용 Visual Studio ToolsVisual Studio Tools for Xamarin

이 릴리스에는 Xamarin.Android 8.3Xamarin.iOS 11.10이 포함되어 있습니다.This release includes Xamarin.Android 8.3 and Xamarin.iOS 11.10.

자동 Android SDK 관리Automatic Android SDK Management

Xamarin.Android 프로젝트가 로드되면 Visual Studio에서 프로젝트에 사용된 Android API 수준이 컴퓨터에서 누락되어 있는지 확인하고 백그라운드에서 자동으로 설치합니다.When a Xamarin.Android project is loaded, Visual Studio can determine if the Android API level used by the project is missing from your machine and automatically install it for you in the background. 이 기능을 사용하도록 설정하려면 도구 > 옵션 > Xamarin > Android 설정 > Android SDK 자동 설치로 차례로 이동합니다.To enable this feature, go to Tools > Options > Xamarin > Android Settings > Auto Install Android SDKs.

향상된 XAML IntelliSenseImproved XAML IntelliSense

Visual Studio 2017 버전 15.7을 사용하는 Xamarin.Forms 개발자는 크게 향상된 IntelliSense 환경을 확인할 수 있습니다 (그림 5).Xamarin.Forms developers using Visual Studio 2017 version 15.7 will notice a vastly improved IntelliSense experience (Figure 5). Xamarin.Forms XAML 편집 환경은 이제 WPF 및 UWP를 구동하는 동일한 IntelliSense 엔진으로 작동됩니다.The Xamarin.Forms XAML editing experience is now powered by the same IntelliSense engine that powers WPF and UWP. 이는 개발자에게 향상된 일치, 전구 제안, 코드 탐색, linting, 리소스 완료 및 태그 확장 완료를 포함하여 향상된 많은 기능을 제공합니다.This brings many enhancements to developers, including improved matching, light bulb suggestions, code navigation, linting, resource completion, and markup extension completion.

Xamarin.Forms XAML editing experience
(그림 5) Xamarin.Forms XAML 편집 환경(Figure 5) Xamarin.Forms XAML editing experience

조건부 XAML에 대한 향상된 도구 기능Tooling Enhancements for Conditional XAML

XAML 편집기는 조건부 XAML을 작성하기 위한 IntelliSense를 제공합니다.The XAML editor provides IntelliSense for authoring conditional XAML. 응용 프로그램의 대상 최소 버전에 없는 형식을 사용하는 경우 XAML 편집기에서 경고할 뿐만 아니라 해결할 수 있는 몇 가지 옵션도 제공합니다.When using a type that is not present in the target min version of your app, the XAML editor now not only warns, but also, provides several options to fix it.

자동 iOS 프로비전Automatic iOS Provisioning

개발을 위한 iOS 장치 프로비저닝을 더 쉽게 만들었습니다 (그림 6).We made iOS device provisioning for development easier (Figure 6). Visual Studio 2017 버전 15.7에는 한 번의 단추 클릭만으로 개발 인증서를 요청하고, 서명 키를 생성하고, 개발자 센터에 장치를 추가하고, 프로비전 프로필을 만들 수 있는 간소화된 환경이 있습니다.In Visual Studio 2017 version 15.7, there's a streamlined experience to request a development certificate, generate a signing key, add a device in the Developer Center, and create a provisioning profile, all with a single button click. iOS 장치 프로비저닝의 과중한 작업은 모두 30초 이내에 처리됩니다.All the heavy lifting of provisioning an iOS device is handled for you in less than 30 seconds.

iOS & Android Project Templates
(그림 6) iOS 자동 프로비전 기능으로 더 쉬워진 자동 iOS 프로비전 기능(Figure 6) Provisioning iOS apps got easier with our automatic iOS provisioning feature.

Android SDK 관리Android SDK Management

모바일 개발을 위해 설치할 Android SDK를 파악하는 데 시간이 걸릴 수 있습니다.Figuring out what Android SDKs to install for mobile development can be time consuming. Visual Studio 2017 버전 15.7에는 Android SDK 설치 관리에 대한 중간 과정을 수행하는 새로운 Android SDK 관리자가 추가되었습니다.Visual Studio 2017 version 15.7 adds a new Android SDK manager that takes the guesswork out of managing Android SDK installations. 빌드하기 위해 SDK가 설치되지 않은 프로젝트가 열린 후에 필요한 SDK를 다운로드하는 데 도움이 되는 알림이 표시됩니다.After opening a project for which you don’t have SDKs installed to build it, a notice will appear to help you download the required SDKs. 다운로드 및 설치를 클릭하고 관련 사용권 계약에 동의하면 올바른 SDK가 백그라운드에서 자동으로 설치됩니다.After clicking Download & Instal and accepting the relevant license agreement, the correct SDKs will automatically be installed in the background for you.

새 iOS 및 Android 프로젝트 템플릿New iOS & Android Project Templates

새롭거나 숙련된 Xamarin 개발자 모두에게 프로젝트 템플릿은 앱 빌드 과정에서 중요한 부분입니다.Whether you’re a new or seasoned Xamarin developer, project templates are an important part of the app building journey. 이러한 템플릿은 성공을 위해 처음부터 쉽게 찾고 설정할 수 있어야 합니다 (그림 7).They should be easy to find and set you up for success from the start (Figure 7). 이 릴리스에서는 플라이아웃 또는 아래쪽 탭과 같은 현대적인 탐색 패턴을 더 효율적으로 검색하고 지원할 수 있도록 iOS 및 Android 네이티브 프로젝트 템플릿이 완전히 다시 작성되었습니다.In this release, we completely rebuilt our iOS and Android native project templates for better discoverability and support for modern navigation patterns like flyout or bottom tabs.

iOS & Android Project Templates
(그림 7) 쉽게 찾고 설정할 수 있는 iOS 및 Android 프로젝트 템플릿(Figure 7) Easy to find and set your iOS & Android Project Templates

향상된 설치 기능Improvements to Installation

Visual Studio 설치 관리자에는 Android API 27 및 Android SDK Tools 26을 포함한 업데이트된 Android SDK 구성이 함께 제공됩니다.The Visual Studio Installer ships with an updated Android SDK configuration, including Android API 27 and Android SDK Tools 26. 여기에는 빠른 부팅 지원이 포함되어 있어 Android 에뮬레이터를 5초 이내에 부팅할 수 있습니다.This includes support for quick boot, which enables your Android emulator to boot in less than five seconds.

또한 에뮬레이터를 쉽게 생성, 편집 및 삭제할 수 있도록 모바일 개발의 일부로 .NET 워크로드가 있는 Android Device Manager가 포함되었습니다.Additionally, we include the Android Device Manager as part of the Mobile development with .NET workload to easily create, edit, and delete emulators.

향상된 .NET 생산성.NET Productivity Improvements

  • 빠른 작업 및 리팩터링(Ctrl +.)을 사용하여 다음을 수행합니다.Use Quick Actions and Refactorings (Ctrl+.) to:
    • forforeach로 변환하고, 그 반대의 경우도 마찬가지입니다.Convert for-to-foreach, and vice versa.
    • readonly 전용 필드를 만듭니다.Make private fields readonly.
  • LINQ 쿼리 절 및 분해에 정의로 이동(F12)이 지원됩니다.Go To Definition (F12) is now supported for LINQ query clauses and deconstructions.
  • 코드 스타일 기본 설정과 관계없이 Ctrl +. 를 사용하여Use Ctrl+. var 및 명시적 형식 간에 전환할 수 있습니다.to toggle between var and the explicit type, regardless of your code style preferences.
  • 빠른 정보에서 람다 함수와 로컬 함수에 대한 캡처를 보여 주므로 범위 내에 있는 변수를 확인할 수 있습니다.Quick Info shows captures on lambdas and local functions, so you can see what variables are in scope.
  • 시그니처 변경 리팩터링(시그니처에서 Ctrl +.)이Change Signature refactoring (Ctrl+. 로컬 함수에서 작동합니다.on signature) works on local functions.
  • .NET Core 프로젝트 파일을 내부에서 편집할 수 있으므로 포함 폴더 열기, 탭 복원 및 기타 편집기 기능이 완벽하게 지원됩니다.You can edit .NET Core project files in-place, so opening containing folder, restoring tabs, and other Editor features are fully supported. 연결된 파일 추가와 같은 IDE 변경 내용은 편집기에서 저장되지 않은 변경 내용과 병합됩니다.IDE changes, such as adding a linked file, will be merged with unsaved changes in the editor.

테스트Testing

  • Live Unit Testing은 포함된 pdb와 지정/결정적 pdb에서 작동합니다.Live Unit Testing works with embedded pdbs and pdbs specifying /deterministic.
  • 참조 어셈블리를 사용하는 프로젝트에 대한 Live Unit Testing 지원이 추가되었습니다.We added Live Unit Testing support for projects that use reference assemblies.
  • 테스트 탐색기에는 테스트 실행 중에 더 많은 응답 아이콘이 표시됩니다.The Test Explorer has more responsive icons during test runs. 테스트 실행이 진행 중일 때 현재 실행 중인 테스트 옆에 진행률 링이 표시되고, 보류 중인 테스트에 대해 시계 아이콘이 표시됩니다.When a test run is in progress, a progress ring appears next to tests that are currently executing, and a clock icon appears for tests that are pending execution.

웹 도구Web Tools

  • ASP.NET 웹 응용 프로그램 프로젝트 템플릿을 최신 버전의 종속 패키지로 새로 고쳤습니다.The ASP.NET Web Application project templates have been refreshed to newer versions of the dependent packages.
  • 컨테이너화되지 않은 응용 프로그램을 Linux의 Azure App Service에 게시할 수 있습니다.You can publish your non-containerized applications to Azure App Service on Linux.
  • 클라우드 탐색기의 게시 요약 페이지에서 Azure App Service를 연결하여 엽니다.Link to open your Azure App Service in Cloud Explorer from the Publish Summary page.
  • .NET Core 프레임워크에 종속적이고 자체 포함된 응용 프로그램을 게시할 수 있도록 지원됩니다.You have support for publishing .NET Core framework dependent and self-contained applications.
  • F# 응용 프로그램에 대한 지원을 App Service 및 폴더에 게시합니다.Publish support for F# applications to App Service and folder.
  • IIS Express 프로세스에서 ASP.NET Core 응용 프로그램을 직접 호스팅하기 위한 지원이 추가되었습니다.We added support for hosing ASP.NET Core applications directly in the IIS Express process.
  • 새 Azure App Service에 게시할 때 저장소 계정을 만들고 연결 문자열 이름을 제공하여 App Service 설정에 저장할 수 있습니다.You can create a storage account and provide a connection string name to be stored in App Service settings when publishing to a new Azure App Service.
  • 디버그하는 동안의 Kestrel HTTP 지원이 향상되었습니다.We improved Kestrel HTTPs support during debugging.
  • ASP.NET Core 응용 프로그램에서 프로젝트 속성 아래의 "앱 URL" 필드에 세미콜론으로 구분된 여러 개의 값을 지원합니다.ASP.NET Core applications support multiple semi-colon separated values in the "App URL" field under project properties. 이 필드에 여러 개의 URL이 있으면 첫 번째 URL이 브라우저를 시작하는 데 사용됩니다.When multiple URLs are present in this field, the first one is used to launch the browser.
  • "Identity"라는 새 스캐폴더가 ASP.NET Core 2.1 응용 프로그램에 ID 관리 UI를 추가하는 명령줄(GUI 지원 제공 예정)을 통해 사용할 수 있습니다.New scaffolder called "Identity" is available via the command line (GUI support coming soon), which adds identity management UI to your ASP.NET Core 2.1 applications.
  • ASP.NET 및 ASP.NET Core 프로젝트에서 "Key Vault" 연결된 서비스를 구성하여 Azure Key Vault를 만들고 IDE 내의 웹 응용 프로그램과 연결할 수 있습니다.ASP.NET and ASP.NET Core projects can create and associate Azure Key Vaults with their web applications within the IDE by configuring the "Key Vault" Connected Service.
  • ASP.NET 또는 ASP.NET Core 응용 프로그램이 Azure Key Vault에 종속되어 있는 경우 도구 > 옵션 > Azure 서비스 인증 아래에서 선택한 계정이 지정된 개발자의 컴퓨터에서 응용 프로그램이 런타임에 해당 Key Vault에 액세스할 수 없으면 오류 목록에 오류가 표시됩니다.When an ASP.NET or ASP.NET Core application depends on Azure Key Vault, an error appears in the error list if the app is unable to access that Key Vault at runtime from the developer’s machine given the account selected under Tools > Options > Azure Service Authentication. 이렇게 하면 권한 또는 계정 문제를 검색하고 수정하는 시간을 줄이고 런타임에 응용 프로그램 오류가 발생하지 않도록 방지합니다.This shortens the time to discover and correct the permission or account issue and avoid an application failure at runtime.
  • 웹 응용 프로그램에서 선택한 ASAL 사용자 계정에 액세스 권한이 없는 KeyVault를 사용하면 오류 목록에 경고가 표시됩니다.When your web app consumes a KeyVault to which your selected ASAL user account has no access, a warning will now appear in the Error List.

Visual Studio 2017 Build ToolsVisual Studio 2017 Build Tools

Azure, UWP 및 기타 워크로드 지원Support for Azure, UWP, and Other Workloads

Visual Studio 2017 Build Tools는 대부분의 Visual Studio 프로젝트에 대한 명령줄 빌드를 지원합니다.Visual Studio 2017 Build Tools support command-line builds for most Visual Studio projects. 지원되는 프로젝트에는 ASP.NET, Azure, C++ 데스크톱, ClickOnce, 컨테이너, .NET Core, .NET 데스크톱, Node.js, Office 및 SharePoint, Python, TypeScript, 단위 테스트, UWP, WCF 및 Xamarin 등이 포함됩니다.Supported projects include: ASP.NET, Azure, C++ desktop, ClickOnce, containers, .NET Core, .NET Desktop, Node.js, Office and SharePoint, Python, TypeScript, Unit Tests, UWP, WCF, and Xamarin. 이후 릴리스에서 SQL에 대한 지원이 추가될 예정입니다.We expect to add support for SQL in a future release. Visual Studio Build Tools는 이제 컨테이너에 설치도 지원합니다.Visual Studio Build Tools now also support installing into a container. Visual Studio 다운로드에서 Visual Studio Build Tools를 다운로드할 수 있습니다.You can download Visual Studio Build Tools from Visual Studio Downloads. 컨테이너 이미지를 조정할 수 있는 구성 요소 ID 및 작업 목록은 Visual Studio Build Tools 2017 구성 요소 디렉터리에 있습니다.A list of workload and component IDs with which you can tailor your container image can be found in the Visual Studio Build Tools 2017 component directory.

참고

Build Tools에는 Visual Studio 2017에 대한 라이선스가 필요합니다.Build Tools requires a license to Visual Studio 2017.

Visual Studio 2017 Build Tools의 UWP 지원UWP Support in Visual Studio 2017 Build Tools

Visual Studio Build Tools를 사용하여 모든 Visual Studio를 설치하지 않고도 빌드 서버를 만들 수 있습니다.Visual Studio Build Tools allow you to create build servers without installing all of Visual Studio. 고객의 요청에 부응하여 추가 프로젝트 형식을 지원하도록 Visual Studio Build Tools를 개선했습니다.In response to customer requests, we enhanced Visual Studio Build Tools to support additional project types. 이런한 프로젝트 유형에는 ASP.NET, Azure, C++ 데스크톱, ClickOnce, 컨테이너, .NET Core, .NET 데스크톱, Node.js, Office 및 SharePoint, Python, TypeScript, 단위 테스트, UWP, WCF 및 Xamarin 등 지원되는 프로젝트 목록과 함께 UWP 도구가 포함됩니다.These project types include UWP tools, bringing the supported project list ASP.NET, Azure, C++ desktop, ClickOnce, containers, .NET Core, .NET Desktop, Node.js, Office and SharePoint, Python, TypeScript, Unit Tests, UWP, WCF, and Xamarin. 이후 릴리스에서 SQL에 대한 지원이 추가될 예정입니다.We expect to add support for SQL in a future release.

유니버설 Windows 플랫폼 개발자용 도구Tools for Universal Windows Platform Developers

  • 시각적 상태 관리 및 애니메이션 도구는 XAML 디자이너의 최신 업데이트가 포함된 Blend에서 사용할 수 있습니다.Visual State Management and Animation tooling is available in Blend with the latest updates to the XAML Designer. 모든 UWP 개발자가 이러한 도구에 액세스할 수 있습니다.All UWP developers have access to these tools. 또한 XAML 편집 및 계속에서는 시각적 상태 및 애니메이션 편집을 지원합니다.In addition, XAML Edit & Continue supports editing Visual States and Animations.
  • Windows Machine Learning 자동 코드 생성 지원을 통해 ONNX 모델 파일을 기존 항목으로 프로젝트에 추가하여 WinML 래퍼 클래스를 생성할 수 있습니다.Windows Machine Learning automatic code generation support allows WinML wrapper classes to be generated by adding your ONNX model files as an existing item in the project.
  • Windows 10 2018년 4월 업데이트 SDK(빌드 17134)는 Visual Studio의 유니버설 Windows 플랫폼 개발 워크로드에 대한 기본 SDK입니다.The Windows 10 April 2018 Update SDK (Build 17134) is the default SDK for the Universal Windows Platform development workload in Visual Studio.
  • C# 및 새 선택적 코드 패키지 프로젝트 템플릿을 사용하여 선택적 패키지에서 코드 실행을 통해 관련 집합을 만들 수 있습니다.You can create related sets with code execution in optional packages using C# and the new Optional Code Package project template.
  • 새 '패키지 레이아웃' 항목 템플릿을 사용하면 플랫 패키지 번들을 쉽게 생성할 수 있습니다.With the new 'Package Layout' item template, you can easily construct flat package bundles.

APPX 패키지에서 AppInstaller 지원AppInstaller Support in APPX Packages

유니버설 Windows 플랫폼을 사용하면 "사이드로딩"이라는 메커니즘을 사용하여 Microsoft Store를 통하지 않고도 응용 프로그램을 배포할 수 있습니다.The Universal Windows Platform allows distributing applications without the Microsoft Store by using a mechanism called “sideloading”. 이 릴리스에서는 appinstaller 파일을 생성하여 APPX 기반 배포에서 자동 업데이트를 가져올 수 있습니다.This release allows you to generate the appinstaller file to get automatic updates from your APPX based deployments. 기본 기술에 대해 자세히 알아보세요.Learn more about the underlying technology.

NuGetNuGet

  • 이 릴리스에서는 packages.config에 따라 기존 프로젝트를 PackageReference로 마이그레이션하기 위한 즉시 지원을 제공합니다.This release provides out of the box support for migrating existing projects based on packages.config to PackageReference.

  • NuGet 패키지 서명 지원이 추가되었습니다.We added support for NuGet package signatures. 서명된 패키지 설치하거나 복원하면 패키지 콘텐츠를 추출하기 전에 디지털 서명의 유효성을 검사합니다.Installing or restoring signed packages validates the digital signature before extracting the packages content. 서명 유효성 검사가 실패하면(예: 콘텐츠가 변조되었거나 유효하지 않은 인증서 등) 오류 목록에 표시된 빌드 오류로 인해 작업이 차단됩니다.If the signature validation fails (for example, the content has been tampered with, invalid certificate, etc.) the operation will be blocked with a build error that is shown in the Error List.

TypeScript 및 JavaScriptTypeScript and JavaScript

TypeScript 2.8 RC가 Visual Studio 2017 버전 15.7에 포함되었습니다.TypeScript 2.8 RC is now included in Visual Studio 2017 version 15.7.
이 릴리스에서 향상된 기능은 다음과 같습니다.This release brings the following improvements:

  • tsconfig.json과 비슷한 편집기 옵션을 제어하는 데 도움이 되는 파일인 jsconfig.json에 대한지원Support for jsconfig.json, a file that can help control your editor options much like tsconfig.json.
  • 열지 않은 파일에 대한 형식 검사를 해제하여 리소스 사용을 줄이는 옵션An option to reduce resource usage by turning off type-checking for unopened files.
    • 이는 도구 > 옵션 > 텍스트 편집기 > JavaScript/TypeScript > 프로젝트 아래에 있는 Only report diagnostics for files opened in the editor(편집기에서 열려 있는 파일에 대한 진단만 보고) 옵션입니다.This is the only report diagnostics for files opened in the editor option under Tools > Options > TextEditor > JavaScript/TypeScript > Project.
  • TypeScript 및 JavaScript 사용자 모두를 위한 새로운 편집 기능:New editing features for both TypeScript and JavaScript users:
    • 파일 내의 모든 빠른 수정 적용Applying all quick fixes within a file.
    • 가져오기 구성Organize imports.
    • JSX의 클래스와 중괄호에서 this. 완성Completions for this. in classes and braces in JSX.
  • TypeScript 2.8 기능:TypeScript 2.8 features:
    • 조건부 형식(A extends B ? C : D)Conditional types (A extends B ? C : D).
    • lib.d.ts 조건부 형식 도우미(예: NonNullable, ReturnType, ExtractExclude)New lib.d.ts conditional type helpers such as NonNullable, ReturnType, Extract, and Exclude.
    • 매핑된 형식의 한정자에 대한 세분화된 제어Granular control on modifiers in mapped types.
    • // @jsx pragma를 사용하여 파일 내의 JSX 팩터리에 대한 제어Control on JSX factories within files using the new // @jsx pragma.

TypeScript 2.8에 대한 자세한 내용은 TypeScript 2.8 RC 블로그에서 확인할 수 있습니다.You can find more information on TypeScript 2.8 in the TypeScript 2.8 RC blog.

  • TypeScript 2.7 기능:TypeScript 2.7 features:
    • 엄격한 속성 초기화Strict property initialization.
    • 숫자 구분 기호Numeric separators.
    • 더 효율적인 형식 가드Smarter type guards.

TypeScript 2.7에 대한 자세한 내용은 TypeScript 2.7 블로그에서 확인할 수 있습니다.You can find more information on TypeScript 2.7 in the TypeScript 2.7 blog.

또한 코드 조각의 조기 트리거링, 취소할 수 없는 리팩터링, 사용 해제하기 어려운 서식 및 잘못된 TypeScript 버전 선택을 포함하여 고객이 제기한 주요 문제 중 일부가 해결되었습니다.We also fixed some of the top issues raised by customers, including premature triggering of snippets, uncancellable refactorings, hard-to-disable formatting, and incorrect TypeScript version selection.

참고

이러한 향상된 기능은 TypeScript 2.8에서 제공됩니다.These improvements are powered by TypeScript 2.8. 최상의 환경을 위해 기존 프로젝트를 최신 TypeScript 버전으로 업데이트하세요.For the best experience, update your existing projects to the latest TypeScript version.

Microsoft Edge에서 JavaScript 디버깅JavaScript debugging with Microsoft Edge

Windows 참가자 빌드의 Visual Studio ASP.NET 및 .NET Core 개발자는 Microsoft Edge 브라우저를 사용하여 중단점을 설정하고 JavaScript 파일을 디버그할 수 있습니다.Visual Studio ASP.NET and .NET core developers on Windows Insider builds, can set breakpoints and debug their JavaScript files using a Microsoft Edge browser. Visual Studio는 Microsoft Edge 브라우저를 대상으로 할 때 Microsoft Edge 팀에서 개발한 새 Edge DevTools 프로토콜을 사용합니다.Visual Studio will use the new Edge DevTools Protocol developed by the Microsoft Edge team when targeting Microsoft Edge browser. 개발자는 Microsoft Edge와 Google Chrome 브라우저 모두에서 Visual Studio 내에서 JavaScript 문제를 디버그하고 수정할 수 있습니다.Developers can debug and fix JavaScript issues from within Visual Studio in both Microsoft Edge and Google Chrome browsers. 고객이 자주 요청하는 이 기능을 사용할 수 있게 되어 기쁘게 생각합니다.We are glad to enable this often-requested feature from our customers. Visual Studio를 향상시키는 데 도움이 되도록 기능에 대한 의견을 보내주시기 바랍니다.We would love to hear your feedback on the feature to help us improve and build a better Visual Studio.

디버깅 및 진단Debugging and Diagnostics

이 릴리스에서는 소스 링크에 대한 VSTS 및 GitHub 인증 지원이 추가되었습니다.This release adds VSTS and GitHub authentication support for Source Link. 인증은 IDE를 통해 사용할 수 있는 경우 소스 링크 요청에 자동으로 추가됩니다.Authentication will be added to Source Link requests automatically if it is available through the IDE. 사용자가 아직 인증되지 않은 경우 인증을 사용하도록 설정하기 위해 로그인 UI가 표시됩니다.If the user is not already authenticated, the sign in UI will be shown to enable authentication.

IntelliTrace의 뒤로 이동 디버깅 기능이 .NET Core 프로젝트 디버깅에 지원됩니다.IntelliTrace’s step-back debugging feature is supported for debugging .NET Core projects.

  • 이 기능을 사용하도록 설정하려면 도구 > 옵션 > IntelliTrace 설정으로 이동하고, IntelliTrace 이벤트 및 스냅숏 옵션을 선택합니다.To enable the feature, go to Tools > Options > IntelliTrace settings, and select the IntelliTrace events and snapshots option.
  • IntelliTrace의 뒤로 이동 디버깅 기능은 예외에서 스냅숏 만들기를 지원합니다.IntelliTrace's step-back debugging feature supports taking snapshots on exceptions. 이 기능을 사용하도록 설정하려면 도구 > 옵션 > IntelliTrace 설정으로 이동하고, IntelliTrace 이벤트 및 스냅숏 옵션을 선택합니다 (그림 8).To enable the feature, go to Tools > Options > IntelliTrace settings, and select the option IntelliTrace events and snapshots (Figure 8).
Snapshot on exception
(그림 8) 예외에 대한 스냅숏(Figure 8) Snapshot on exception

Microsoft Edge에서 ASP.NET 프로젝트에 대한 스크립트 디버거 시작 및 연결Launch and Attach Script Debugger to Microsoft Edge for ASP.NET Projects

Google Chrome을 브라우저로 선택하여 사용할 때 Visual Studio에서 직접 JavaScript와 TypeScript를 모두 디버그할 수 있습니다.You can debug both JavaScript and TypeScript directly in Visual Studio when using Google Chrome as your browser of choice. Visual Studio에서 Chrome을 브라우저로 선택하고 F5 키를 눌러 디버그하면 됩니다.All you need to do is select Chrome as your browser in Visual Studio and hit F5 to debug. 자세한 내용은 Google Chrome에서 ASP.NET 프로젝트의 클라이언트 쪽 디버깅을 참조하세요.See the Client-side debugging of ASP.NET projects in Google Chrome for additional information.

팀 탐색기Team Explorer

팀 탐색기의 Git 설정, 전역 설정에 OpenSSL과 보안 채널 중에서 선택할 수 있는 옵션이 추가되었습니다.In Git Settings, Global Settings in Team Explorer, there is an option to choose between OpenSSL and Secure Channel. OpenSSL이 기본값입니다.OpenSSL is the default.

6.2 Service Fabric 릴리스용 Service Fabric 도구Service Fabric Tooling for the 6.2 Service Fabric release

Service Fabric 6.2 릴리스에 대한 Service Fabric 도구는 6.2 런타임과 3.1 SDK에 대한 호환성을 지원합니다.The Service Fabric Tools for the Service Fabric 6.2 release provide compatibility support for the 6.2 runtime and 3.1 SDK. 몇 가지 버그 수정과 함께 새로운 기능은 사용하면 기존 ASP.NET 또는 콘솔 프로젝트에 컨테이너 지원을 추가할 수 있습니다.Along with several bug fixes, a new feature enables adding container support to existing ASP.NET or Console projects. .NET Framework 및 .NET Core 2.0 모두 “새 오케스트레이션 지원” 바로 가기 메뉴 및 대화 상자를 통해 지원됩니다.Both .NET Framework and .NET Core 2.0 projects are supported through a new "Add Orchestration Support" context menu and dialog. 이러한 프로젝트가 Service Fabric 오케스트레이션 지원에 추가되면 원격으로 배포하고 로컬 Service Fabric 클러스터에서 디버깅할 수 있습니다.Once these projects have added Service Fabric orchestration support, they can be deployed remotely and debugged on the local Service Fabric cluster.

향상된 Entity Framework 도구 기능Entity Framework Tools Improvements

향상된 F# 및 F# 도구 기능F# and F# Tools Improvements

F# 및 해당 도구를 대폭 개선했습니다.We made many improvements to F# and its tools. 이 릴리스에서는 .NET SDK 스타일 프로젝트를 통한 기존 환경의 성능과 정리에 중점을 두었습니다.Performance and cleaning up existing experiences with .NET SDK-style projects has been the focus for this release. 언제나처럼, 훌륭한 F# 커뮤니티가 상당한 도움이 되었습니다.As always, we also received significant contributions from the wonderful F# community.

향상된 F# 컴파일러 및 코어 라이브러리 기능F# Compiler and Core Library Improvements

  • .NET SDK에서 F# 컴파일러를 사용하여 속성에서 F# AssemblyInfo를 생성할 수 있습니다.Enabled generating F# AssemblyInfo from properties with the F# compiler in the .NET SDK.
  • --debug:full이 Windows에서 F# .NET Core 컴파일러에 지원됩니다.--debug:full is supported for the F# .NET Core compiler on Windows.
  • MakeTuple이 구조체 튜플에 지원됩니다.MakeTuple is supported for struct tuples.
  • 튜플에 확장 메서드를 사용할 때 발생하는 불필요한 경고가 해결되었습니다.An unnecessary warning when using an extension method for a tuple is now resolved.
  • 부모 프로세스가 취소될 때 MailboxProcessor.PostAndAsyncReply에서 취소를 제대로 처리합니다.MailboxProcessor.PostAndAsyncReply properly handles cancellation when a parent process is cancelled.
  • NonStructuralComparison을 사용하면 float32 형식에 대한 같음이 올바르게 적용됩니다.Equality for float32 types is now correct when NonStructuralComparison is used.
  • Mathias Dittrich에 의해 메서드 오버로드를 검색할 때 경고가 전달됩니다.Warnings are now forwarded when searching for method overloads, by Matthias Dittrich.
  • John Wostenberg에 의해 일치하지 않는 열거형의 예제를 내보내기 위해 열거형에 대한 패턴이 일치할 때 발생하는 경고가 향상되었습니다.An improvement to a warning when pattern matching on an enum to emit an example of an unmatched enum, by John Wostenberg.

F# 도구 개선 사항F# Tooling Improvements

  • Avi Avni와 Microsoft에 의해 F# 컴파일러 서비스의 메모리 사용량이 크게 줄었습니다.Significant reductions in memory usage in the F# Compiler Service, by Avi Avni and Microsoft.
  • 사용되지 않은 개방 분석기가 설정되는 경우 해당 성능이 크게 향상되었습니다.Significant performance improvements for the Unused Open Analyzer when it is turned on.
  • F# 분석기 및 코드 수정이 설정되는 경우 응답성이 향상되어 오류 진단이 항상 나머지 작업보다 우선적으로 수행됩니다.Improved responsiveness when F# analyzers and code fixes are turned on, such that error diagnostics are always prioritized above the rest.
  • F#용 ASP.NET Core 템플릿을 추가했습니다.We added ASP.NET Core templates for F#.
  • .NET SDK 프로젝트에 대한 폴더에 붙여넣은 파일의 초기 순서가 파일을 붙여넣은 범위의 맨 위에 올바르게 지정됩니다.The initial ordering for pasted files in folders for .NET SDK projects is now correctly at the top of the scope the file was pasted into.
  • Alt+Enter를 누르면 프로젝트 파일이 없는 F# 스크립트에서 코드를 F# Interactive에 올바르게 보냅니다.F# scripts without a project file correctly sends code to F# Interactive when Alt+Enter is pressed.
  • F# 목록에 대한 디버거 보기가 50개 항목에서 5,000개 항목으로 확장되었습니다.The debugger view for F# lists has been extended from 50 items to 5000 items.
  • 클래식 F# 프로젝트(.NET Framework에만 해당)는 디자인 타임 빌드를 수행하므로 솔루션 로드 시간을 줄입니다.Classic F# projects (.NET Framework only) also perform design-time builds, which reduces solution load time.
  • 설정 > 텍스트 편집기 > F# > 고급 아래에서 구조화 지침 및 개요 보기를 설정/해제할 수 있습니다.The Structured Guidelines and Outlining views can now be toggled, under Settings > Text Editor > F# > Advanced.
  • 어셈블리 수준 특성이 F# 컴파일러 서비스에서 반환됩니다.Assembly level attributes are now returned by the F# Compiler Service.
  • Entity.DeclaringEntity를 F# 컴파일러 서비스에 추가했습니다.We added Entity.DeclaringEntity to the F# Compiler Service.
  • Steffen Forkmannncave에 의해 최적화는 F# 컴파일러 서비스 API를 통해 사용할 수 있습니다.Optimization is available via the F# Compiler Service API, by Steffen Forkmann and ncave.
  • amieres에 의해 GetDeclarationLocation은 올바른 데이터가 있는 경우 결과를 제공할 파일이 더 이상 필요하지 않습니다.GetDeclarationLocation no longer requires a file to provide results on otherwise correct data, by amieres.
  • Eugene Auduchinok에 의해 이제 IsNameGenerated는 F# 기호 API에서 사용할 수 있습니다.IsNameGenerated is now available in the F# Symbols API, by Eugene Auduchinok.

향상된 F# 인프라 기능F# Infrastructure Improvements

  • autoconf는 더 이상 Mono 빌드에 필요하지 않습니다.autoconf is no longer required in our Mono build.
  • 이제는 모든 Visual Studio 통합 프로젝트에서 .NET SDK를 사용합니다.All Visual Studio integration projects now use the .NET SDK.
  • 도구 빌드에 대한 커밋 해시는 도움말 > Visual Studio 정보에서 사용할 수 있습니다.The commit hash for a build of the tools is available in Help > About Microsoft Visual Studio.

이 릴리스에 포함된 항목에 대한 커밋 로그 전체를 보려면 15.7에 대한 릴리스 태그를 확인하세요.To see the full commit log of what went into this release, check out our release tag for 15.7.


알려진 문제Known Issues

알려진 기존 문제 및 Visual Studio 2017 버전 15.7에서 사용 가능한 해결 방법을 모두 참조하세요.See all existing known issues and available workarounds in Visual Studio 2017 version 15.7.

Visual Studio 2017 Known Issues


Release Notes Icon Visual Studio 2017 버전 15.7.1Visual Studio 2017 version 15.7.1

릴리스 날짜: 2018년 5월 8일released on May 08, 2018

15.7.1에서 해결된 주요 문제Top Issues Fixed in 15.7.1

고객이 보고한 문제 중 15.7.1에서 해결된 문제는 다음과 같습니다.These are the customer-reported issues addressed in 15.7.1:

  • 이 릴리스에는 솔루션 로링 동안 메모리 사용량 및 GC 압력을 절감하는 수정 프로그램이 포함됩니다.This release includes a fix that reduces memory usage and GC pressure during solution load.

Release Notes Icon Visual Studio 2017 버전 15.7 보안 권고 알림 Visual Studio 2017 version 15.7 Security Advisory Notice

업데이트 날짜: 2018년 5월 8일updated on May 08, 2018

.NET Core 서비스 거부 취약점에 대한 Microsoft 보안 권고Microsoft Security Advisory for .NET Core Denial Of Service Vulnerability

CVE-2018-0765CVE-2018-0765

Microsoft는 .NET Core 및 .NET 네이티브 버전 2.0의 취약점에 대한 정보를 제공하기 위해 이 보안 권고를 릴리스합니다.Microsoft is releasing this security advisory to provide information about a vulnerability in .NET Core and .NET native version 2.0. 이 권고는 또한 개발자가 이 취약점을 제거하기 위해 자신의 응용 프로그램을 업데이트할 수 있는 지침을 제공합니다.This advisory also provides guidance on what developers can do to update their applications to remove this vulnerability.

Microsoft는 .NET Framework 및 .NET Core가 부적절하게 XML 문서를 처리하는 경우 발생하는 서비스 거부 취약점을 알고 있습니다.Microsoft is aware of a denial of service vulnerability that exists when .NET Framework and .NET Core improperly process XML documents. 이 취약점을 악용하는 공격자는 .NET Framework, .NET Core 또는 .NET 네이티브 응용 프로그램에 대한 서비스 거부로 이어질 수 있습니다.An attacker who successfully exploited this vulnerability could cause a denial of service against a .NET Framework, .NET Core, or .NET native application.

업데이트는 .NET Framework, .NET Core 및 .NET 네이티브 응용 프로그램에서 XML 문서를 처리하는 방법을 수정하여 취약점을 해결합니다.The update addresses the vulnerability by correcting how .NET Framework, .NET Core, and .NET native applications handle XML document processing.

사용자 응용 프로그램이 ASP.NET Core 응용 프로그램인 경우 개발자에게는 ASP.NET Core 2.0.8로 업데이트가 권고됩니다.If your application is an ASP.NET Core application, developers are also advised to update to ASP.NET Core 2.0.8.


Release Notes Icon Visual Studio 2017 버전 15.7.2Visual Studio 2017 version 15.7.2

릴리스 날짜: 2018년 5월 21일released on May 21, 2018

15.7.2에서 해결된 주요 문제Top Issues Fixed in 15.7.2

고객이 보고한 문제 중 15.7.2에서 해결된 문제는 다음과 같습니다.These are the customer-reported issues addressed in 15.7.2:


Release Notes Icon Visual Studio 2017 버전 15.7.3Visual Studio 2017 version 15.7.3 New Release icon

릴리스 날짜: 2018년 5월 31일released on May 31, 2018

15.7.3에서 해결된 주요 문제Top Issues Fixed in 15.7.3

고객이 보고한 문제 중 15.7.3에서 해결된 문제는 다음과 같습니다.These are the customer-reported issues addressed in 15.7.3:

Git 보안 취약성Git Security Vulnerability

Git 커뮤니티에 공개된 Git 보안 취약성도 해결했습니다.We also fixed a security vulnerability in Git that was disclosed by the Git community. 취약성으로 인해 사용자가 악성 리포지토리를 복제할 때 임의의 코드가 실행될 수 있습니다.The vulnerability can lead to arbitrary code execution when a user clones a malicious repository. 이 블로그 게시물에 더 많은 정보가 있습니다.This blog post has more information.

사용자 의견Feedback

Microsoft는 여러분의 의견을 기다리고 있습니다!We’d love to hear from you! 문제가 있으면 설치 관리자나 Visual Studio IDE 자체의 오른쪽 위에서 문제 보고 옵션을 통해 알려주세요.For issues, let us know via the Report a Problem option in the upper right-hand corner of either the installer or the Visual Studio IDE itself. ComponentThe Feedback Icon 아이콘은 오른쪽 위 모서리에 있습니다.icon is located in the upper right-hand corner. Visual Studio 개발자 커뮤니티에서 문제를 추적하고 질문을 하고 대답을 찾을 수 있습니다.You can track your issues in the Visual Studio Developer Community, where you can ask questions and find answers. UserVoice를 통해 제품을 제안하거나 실시간 채팅 지원을 통해 무료 설치 도움을 받을 수도 있습니다.You can also make a product suggestion through UserVoice or get free installation help through our Live Chat support.


블로그Blogs

개발자 도구 블로그 사이트에서 사용 가능한 인사이트 및 권장 사항을 활용하여 모든 새 릴리스에 대한 최신 정보와 다양한 기능에 대한 심층적인 게시물을 확인하세요.Take advantage of the insights and recommendations available in the Developer Tools Blogs site to keep you up-to-date on all new releases and include deep dive posts on a broad range of features.

Developer Tools Blogs


Visual Studio 2017 릴리스 정보 기록Visual Studio 2017 Release Notes History

Visual Studio 2017 이전 버전의 릴리스 정보를 볼 수 있습니다.You can view prior versions of Visual Studio 2017 release notes:


맨 위로 이동

Top of Page