Offcanvas

���������������

칼럼ㅣ깃허브 코파일럿에서 ‘희망’을 보았다

‘깃허브 코파일럿’이 언제나 적절하고 정확하며 실행 가능한 코드를 생성하는 건 아니지만 어느 정도 유용하다는 점은 부인할 수 없다.  컴퓨터 프로그래밍의 종말은 한두 해 된 이야기가 아니다. 하지만 여러 이유로 종말은 아직 오지 않았다. 가장 중요한 이유를 들자면 프로그래밍이 과학이나 공학이기도 하지만 그만큼이나 예술이기도 하다는 것이다.    ‘AI 동료 프로그래머(AI pair programmer)’라고도 부르는 ‘깃허브 코파일럿(GitHub Copilot)’은 인텔리센스(IntelliSense) 등이 제공할 수 있는 수준을 약간 능가하는 프로그래밍 자동화를 지원하고자 한다.  물론 완전히 자율적이진 않다. 코파일럿이 유의미한 코드를 생성하려면 (개발자가) 먼저 의도를 선언(입력)해야 하고, 또한 코파일럿이 불가피하게 궤도를 이탈하면 이를 정상 궤도로 되돌릴 수 있도록 감독해야 한다.  코파일럿은 비주얼 스튜디오 코드(Visual Studio Code), 젯브레인 IDE(예: 인텔리제이 IDEA(IntelliJ IDEA)), 네오빔(Neovim) 인터페이스를 갖춘 클라우드 서비스다(사용자의 컴퓨터에서 실행되거나 깃허브 코드스페이스의 클라우드에서 실행).  그리고 이 클라우드 서비스는 수십억 줄의 공개된 코드를 학습한 언어 모델 ‘오픈AI 코덱스(OpenAI Codex)’로 구동되는 코드 예측 엔진이다.  여기서 코덱스와 코파일럿에 대한 논란이 있었다. 하지만 코파일럿의 잠재적인 저작권 및 프라이버시 침해에 관해 열변을 토하기 전에, 코덱스가 머신러닝 커뮤니티 내에서 공정 이용(fair use)이라고 간주되는 방식에 따라 공개적으로 사용 가능한 코드를 학습했다는 점을 이해해야 한다.  아울러 코덱스는 검색 엔진이 아니라 코드 합성기(code synthesizer)라는 점도 이해해야 한다.  이와 관련해 코파일럿 개발팀은 “이는 새로운 공간이다. (깃허브는) 이에 ...

깃허브 코파일럿 개발자 코드 자동 완성 컴퓨터 프로그래밍 코드 인텔리센스 비주얼 스튜디오 코드 오픈AI 코덱스

2021.11.10

‘깃허브 코파일럿’이 언제나 적절하고 정확하며 실행 가능한 코드를 생성하는 건 아니지만 어느 정도 유용하다는 점은 부인할 수 없다.  컴퓨터 프로그래밍의 종말은 한두 해 된 이야기가 아니다. 하지만 여러 이유로 종말은 아직 오지 않았다. 가장 중요한 이유를 들자면 프로그래밍이 과학이나 공학이기도 하지만 그만큼이나 예술이기도 하다는 것이다.    ‘AI 동료 프로그래머(AI pair programmer)’라고도 부르는 ‘깃허브 코파일럿(GitHub Copilot)’은 인텔리센스(IntelliSense) 등이 제공할 수 있는 수준을 약간 능가하는 프로그래밍 자동화를 지원하고자 한다.  물론 완전히 자율적이진 않다. 코파일럿이 유의미한 코드를 생성하려면 (개발자가) 먼저 의도를 선언(입력)해야 하고, 또한 코파일럿이 불가피하게 궤도를 이탈하면 이를 정상 궤도로 되돌릴 수 있도록 감독해야 한다.  코파일럿은 비주얼 스튜디오 코드(Visual Studio Code), 젯브레인 IDE(예: 인텔리제이 IDEA(IntelliJ IDEA)), 네오빔(Neovim) 인터페이스를 갖춘 클라우드 서비스다(사용자의 컴퓨터에서 실행되거나 깃허브 코드스페이스의 클라우드에서 실행).  그리고 이 클라우드 서비스는 수십억 줄의 공개된 코드를 학습한 언어 모델 ‘오픈AI 코덱스(OpenAI Codex)’로 구동되는 코드 예측 엔진이다.  여기서 코덱스와 코파일럿에 대한 논란이 있었다. 하지만 코파일럿의 잠재적인 저작권 및 프라이버시 침해에 관해 열변을 토하기 전에, 코덱스가 머신러닝 커뮤니티 내에서 공정 이용(fair use)이라고 간주되는 방식에 따라 공개적으로 사용 가능한 코드를 학습했다는 점을 이해해야 한다.  아울러 코덱스는 검색 엔진이 아니라 코드 합성기(code synthesizer)라는 점도 이해해야 한다.  이와 관련해 코파일럿 개발팀은 “이는 새로운 공간이다. (깃허브는) 이에 ...

2021.11.10

MS 비주얼 스튜디오 2022, 첫 프리뷰 올 여름 출시 예정

마이크로소프트가 비주얼 스튜디오 IDE(Visual Studio IDE)의 다음 메이저 업그레이드 계획을 발표했다. 회사에 따르면 ‘비주얼 스튜디오 2022(Visual Studio 2022)’은 64-bit에, 더 빠르고, 더 가벼우며, 더 접근하기 쉬워질 예정이다.  ‘비주얼 스튜디오 2022’의 첫 번째 퍼블릭 프리뷰가 올 여름 출시될 예정이다. 이는 학생 및 예비 개발자부터 산업용 솔루션을 구축하는 숙련된 개발자까지 다양한 사용자가 쓸 수 있도록 고안됐다.    마이크로소프트는 ‘비주얼 스튜디오 2022’가 64-bit 버전이며, 이에 따라 기본 실행 프로세스(devenv.exe)는 더 이상 최대 4GB 메모리로 제한되지 않을 것이라고 밝혔다. 64-bit로의 전환은 구성요소 메모리 사용량을 줄이고, 32-bit 설계를 최적화할 수 있다는 게 회사 측 설명이다.  이어서 윈도우에서 64-bit 버전의 비주얼 스튜디오를 사용하면 메모리 부족 없이 크고 복잡한 애플리케이션을 열고 편집하며 실행하고 디버깅할 수 있다고 마이크로소프트는 전했다. 또 64-bit로 전환하더라도 비주얼 스튜디오로 빌드할 수 있는 애플리케이션 유형이나 비트는 바뀌지 않으며, 비주얼 스튜디오가 32-bit 앱 개발에 적합한 도구가 될 것이라고 덧붙였다.  이와 관련해 마이크로소프트는 1,600개 프로젝트와 약 30만 개 파일이 포함된 솔루션을 열고자 비주얼 스튜디오가 64-bit 프로세스에서 쓸 수 있는 추가 메모리를 사용해 스케일링하는 모습을 담은 비디오를 예로 들었다.    닷넷(.NET) 개발 측면을 살펴보자면 비주얼 스튜디오 2022는 닷넷 6(.NET 6)와 윈도우 및 맥 개발자를 위한 웹, 클라이언트, 모바일 앱용 통합 프레임워크를 지원한다. 여기에는 윈도우, 안드로이드, 맥OS, iOS의 크로스-플랫폼 클라이언트 앱을 지원하는 닷넷 마우이(.NET Multi-platform App UI; .NET ...

마이크로소프트 IDE 통합 개발 환경 비주얼 스튜디오 64비트 닷넷 인텔리센스 윈도우 데스크톱 안드로이드 iOS 애플리케이션 씨메이크 리눅스 WSL C++ 실시간 협업 애저 클라우드

2021.04.20

마이크로소프트가 비주얼 스튜디오 IDE(Visual Studio IDE)의 다음 메이저 업그레이드 계획을 발표했다. 회사에 따르면 ‘비주얼 스튜디오 2022(Visual Studio 2022)’은 64-bit에, 더 빠르고, 더 가벼우며, 더 접근하기 쉬워질 예정이다.  ‘비주얼 스튜디오 2022’의 첫 번째 퍼블릭 프리뷰가 올 여름 출시될 예정이다. 이는 학생 및 예비 개발자부터 산업용 솔루션을 구축하는 숙련된 개발자까지 다양한 사용자가 쓸 수 있도록 고안됐다.    마이크로소프트는 ‘비주얼 스튜디오 2022’가 64-bit 버전이며, 이에 따라 기본 실행 프로세스(devenv.exe)는 더 이상 최대 4GB 메모리로 제한되지 않을 것이라고 밝혔다. 64-bit로의 전환은 구성요소 메모리 사용량을 줄이고, 32-bit 설계를 최적화할 수 있다는 게 회사 측 설명이다.  이어서 윈도우에서 64-bit 버전의 비주얼 스튜디오를 사용하면 메모리 부족 없이 크고 복잡한 애플리케이션을 열고 편집하며 실행하고 디버깅할 수 있다고 마이크로소프트는 전했다. 또 64-bit로 전환하더라도 비주얼 스튜디오로 빌드할 수 있는 애플리케이션 유형이나 비트는 바뀌지 않으며, 비주얼 스튜디오가 32-bit 앱 개발에 적합한 도구가 될 것이라고 덧붙였다.  이와 관련해 마이크로소프트는 1,600개 프로젝트와 약 30만 개 파일이 포함된 솔루션을 열고자 비주얼 스튜디오가 64-bit 프로세스에서 쓸 수 있는 추가 메모리를 사용해 스케일링하는 모습을 담은 비디오를 예로 들었다.    닷넷(.NET) 개발 측면을 살펴보자면 비주얼 스튜디오 2022는 닷넷 6(.NET 6)와 윈도우 및 맥 개발자를 위한 웹, 클라이언트, 모바일 앱용 통합 프레임워크를 지원한다. 여기에는 윈도우, 안드로이드, 맥OS, iOS의 크로스-플랫폼 클라이언트 앱을 지원하는 닷넷 마우이(.NET Multi-platform App UI; .NET ...

2021.04.20

MS 비주얼 스튜디오 16.9 정식 출시··· 메모리 오류 감지 및 C++ 기능 지원

마이크로소프트가 ‘비주얼 스튜디오 2019 버전 16.9(Visual Studio 2019 v16.9)’를 프로덕션 릴리즈로 공개했다. 이와 동시에 ‘비주얼 스튜디오 2019 버전 16.10(Visual Studio 2019 v16.10)’의 첫 번째 프리뷰도 함께 발표됐다.  지난 3월 2일에 출시된 비주얼 스튜디오 2019 버전 16.9는 이곳에서 액세스할 수 있으며, 버전 16.10 프리뷰는 여기에서 확인할 수 있다. 비주얼 스튜디오 16.9는 런타임 메모리 문제를 찾기 위해 메모리 오류를 빠르게 감지하는 주소 검사기(Address Sanitizer, ASan)를 제공한다. 또한 프로덕션 릴리즈에서 마이크로소프트 비주얼 C++(Microsoft Visual C++)는 프로젝트와 함께 Asan을 사용하는 데 필요한 런타임 라이브러리를 파악할 수 있다.    C++의 경우 버전 16.9는 More constexpr 컨테이너 제안을 구현했다. 이를 통해 소멸자와 새 표현식을 constexpr로 만들 수 있다. C++ 인텔리센스(IntelliSense)도 개선됐다. 이 밖에 비주얼 스튜디오 2019 버전 16.9의 새로운 기능 및 개선사항은 다음과 같다.  • 닷넷(.NET) 생산성 향상을 위해 새 파일에 유형을 복사하고 붙여넣을 때 using 지시문이 자동으로 추가된다. 또 추론된 유형과 람다 매개변수 유형이 있는 변수에 수식어를 삽입하는 인라인 유형 힌트가 추가됐다. 인텔리센스 자동완성 기능은 이제 메소드 완성 및 개체 생성을 위한 커밋 문자로 세미콜론을 자동 삽입한다.  • WSL(Windows Subsystem for Linux) 2에서 닷넷 코어(.NET Core) 디버깅 기능을 사용하면 개발자가 선택한 리눅스 배포판을 사용하여 WSL 2에서 코드를 디버깅할 수 있다. 참고로 현재 우분투(Ubuntu)와 데비안(Debian)만 테스트됐다. 닷넷 코어에서 지원하는 다른 배포판도 작동할 순 있지만 닷넷...

마이크로소프트 비주얼 스튜디오 C++ 인텔리센스 닷넷 닷넷 코어 우분투 데비안 자마린 통합개발환경 소프트웨어 개발

2021.03.08

마이크로소프트가 ‘비주얼 스튜디오 2019 버전 16.9(Visual Studio 2019 v16.9)’를 프로덕션 릴리즈로 공개했다. 이와 동시에 ‘비주얼 스튜디오 2019 버전 16.10(Visual Studio 2019 v16.10)’의 첫 번째 프리뷰도 함께 발표됐다.  지난 3월 2일에 출시된 비주얼 스튜디오 2019 버전 16.9는 이곳에서 액세스할 수 있으며, 버전 16.10 프리뷰는 여기에서 확인할 수 있다. 비주얼 스튜디오 16.9는 런타임 메모리 문제를 찾기 위해 메모리 오류를 빠르게 감지하는 주소 검사기(Address Sanitizer, ASan)를 제공한다. 또한 프로덕션 릴리즈에서 마이크로소프트 비주얼 C++(Microsoft Visual C++)는 프로젝트와 함께 Asan을 사용하는 데 필요한 런타임 라이브러리를 파악할 수 있다.    C++의 경우 버전 16.9는 More constexpr 컨테이너 제안을 구현했다. 이를 통해 소멸자와 새 표현식을 constexpr로 만들 수 있다. C++ 인텔리센스(IntelliSense)도 개선됐다. 이 밖에 비주얼 스튜디오 2019 버전 16.9의 새로운 기능 및 개선사항은 다음과 같다.  • 닷넷(.NET) 생산성 향상을 위해 새 파일에 유형을 복사하고 붙여넣을 때 using 지시문이 자동으로 추가된다. 또 추론된 유형과 람다 매개변수 유형이 있는 변수에 수식어를 삽입하는 인라인 유형 힌트가 추가됐다. 인텔리센스 자동완성 기능은 이제 메소드 완성 및 개체 생성을 위한 커밋 문자로 세미콜론을 자동 삽입한다.  • WSL(Windows Subsystem for Linux) 2에서 닷넷 코어(.NET Core) 디버깅 기능을 사용하면 개발자가 선택한 리눅스 배포판을 사용하여 WSL 2에서 코드를 디버깅할 수 있다. 참고로 현재 우분투(Ubuntu)와 데비안(Debian)만 테스트됐다. 닷넷 코어에서 지원하는 다른 배포판도 작동할 순 있지만 닷넷...

2021.03.08

마이크로소프트 비주얼 스튜디오, ‘C 언어’ 지원 강화

마이크로소프트의 ‘비주얼 스튜디오 IDE(Visual Studio IDE)’가 C 언어 표준 ‘C11’과 ‘C17’의 지원을 추가하고 제한됐던 기능 지원을 확장했다. 지난 9월 14일 공개한 비주얼 스튜디오 2019 버전 16.8 프리뷰 3부터 C11과 C17 버전이 지원된다.  그동안 비주얼 스튜디오는 C++ 언어에 필요한 만큼만 C 언어를 지원해왔다. 지난 14일(현지 시각) 마이크로소프트는 공식 블로그를 통해 표준에 부합하는 토큰기반 전처리기(token-based preprocessor)가 컴파일러에 추가되면서 상황이 달라졌다고 밝혔다. 이어서 /std:c11와 /std:c17라는 두 개의 컴파일러 스위치가 추가돼 최신 ISO C 표준을 공식 지원하게 됐다고 덧붙였다.    회사에 따르면 _Pragma, restrict, Static_assert 등을 포함해 C11과 C17의 모든 필수 기능이 지원된다. 비주얼 스튜디오의 소스코드 자동완성 프로그램인 인텔리센스(IntelliSense)도 이 기능들과 네이티브하게 작동하며, C 코드 구문 강조 표시를 활성화하려면 소스파일에 .c 파일 확장자를 사용하거나 /TC 컴파일러 스위치를 사용하면 된다. 그러나 인텔리센스 하이라이팅은 현재 표준 헤더에서 도입한 매크로가 아닌 키워드에서만 사용할 수 있다. 이는 이후 릴리스에서 수정될 예정이다.  표준에 맞는 토큰 기반 전처리기가 포함된 두 개의 새 C 컴파일러 스위치는 /Zc: 전처리기를 의미한다는 게 회사 측 설명이다. C11 또는 C17과 함께 기존의 문자 기반 전처리기(character-based preprocessor)를 사용하려면 /Zc: 전처리기 컴파일러 스위치를 전달해야 한다.  마이크로소프트는 C17을 ISO C의 버그 수정 릴리즈라고 설명했다. C11과 C17 버전의 차이점은 C17의 _STDC_version 매크로뿐이다. 비주얼 스튜디오는 현재 C11의 선택적 기능을 지원하지 않지만 향후 릴리즈에서...

마이크로소프트 비주얼 스튜디오 C 언어 C++ 인텔리센스

2020.09.17

마이크로소프트의 ‘비주얼 스튜디오 IDE(Visual Studio IDE)’가 C 언어 표준 ‘C11’과 ‘C17’의 지원을 추가하고 제한됐던 기능 지원을 확장했다. 지난 9월 14일 공개한 비주얼 스튜디오 2019 버전 16.8 프리뷰 3부터 C11과 C17 버전이 지원된다.  그동안 비주얼 스튜디오는 C++ 언어에 필요한 만큼만 C 언어를 지원해왔다. 지난 14일(현지 시각) 마이크로소프트는 공식 블로그를 통해 표준에 부합하는 토큰기반 전처리기(token-based preprocessor)가 컴파일러에 추가되면서 상황이 달라졌다고 밝혔다. 이어서 /std:c11와 /std:c17라는 두 개의 컴파일러 스위치가 추가돼 최신 ISO C 표준을 공식 지원하게 됐다고 덧붙였다.    회사에 따르면 _Pragma, restrict, Static_assert 등을 포함해 C11과 C17의 모든 필수 기능이 지원된다. 비주얼 스튜디오의 소스코드 자동완성 프로그램인 인텔리센스(IntelliSense)도 이 기능들과 네이티브하게 작동하며, C 코드 구문 강조 표시를 활성화하려면 소스파일에 .c 파일 확장자를 사용하거나 /TC 컴파일러 스위치를 사용하면 된다. 그러나 인텔리센스 하이라이팅은 현재 표준 헤더에서 도입한 매크로가 아닌 키워드에서만 사용할 수 있다. 이는 이후 릴리스에서 수정될 예정이다.  표준에 맞는 토큰 기반 전처리기가 포함된 두 개의 새 C 컴파일러 스위치는 /Zc: 전처리기를 의미한다는 게 회사 측 설명이다. C11 또는 C17과 함께 기존의 문자 기반 전처리기(character-based preprocessor)를 사용하려면 /Zc: 전처리기 컴파일러 스위치를 전달해야 한다.  마이크로소프트는 C17을 ISO C의 버그 수정 릴리즈라고 설명했다. C11과 C17 버전의 차이점은 C17의 _STDC_version 매크로뿐이다. 비주얼 스튜디오는 현재 C11의 선택적 기능을 지원하지 않지만 향후 릴리즈에서...

2020.09.17

MS, ‘비주얼 스튜디오용 앵귤러 랭귀지 서비스’ 확장 출시

‘비주얼 스튜디오용 앵귤러 랭귀지 서비스(Angular Language Service for Visual Studio)’ 확장 프로그램은 앵귤러 템플릿 내부에서 코드 자동완성, 오류 확인, 빠른 정보, 탐색 기능을 제공한다.    ‘앵귤러 랭귀지 서비스’가 마이크로소프트의 비주얼 스튜디오 IDE로 포팅됐다. 앵귤러 랭귀지 서비스는 앵귤러 템플릿 내에서 자동완성, 오류 확인, 힌트, 탐색 등을 위한 메커니즘을 제공한다.  구글에서 개발한 앵귤러 자바스크립트/타입스크립트 프레임워크와 함께 작동하는 이 서비스는 ‘비주얼 스튜디오용 앵귤러 랭귀지 서비스’ 확장 프로그램으로 제공된다. 현재 비주얼 스튜디오 마켓플레이스(Visual Studio Marketplace)에서 다운로드받을 수 있다.  공식 블로그에 따르면 마이크로소프트는 많은 ASP.NET 및 ASP.NET Core 사용자들이 앵귤러에서 프론트엔드를 구축한다는 사실을 알고 이 서비스를 지원하기로 했다. 비주얼 스튜디오에서는 기본 기능(예: 코드 완성, 인텔리센스(InteliSense), 정의로 이동(Go to Definition)) 외에는 앵귤러를 많이 지원하지 않았다.  이 확장 기능을 사용하려면 비주얼 스튜디오 16.5.0 이상 버전이 필요하다. 앵귤러 랭귀지 서비스는 인라인 템플릿뿐만 아니라 별도의 HTML 파일에 있는 외부 템플릿과도 작동한다. 비주얼 스튜디오는 개발자가 앵귤러 파일을 여는 것을 감지하고, 앵귤러 언어 서비스를 사용하여 tsconfig.json 파일을 읽는다. 그리고 애플리케이션에서 모든 템플릿을 찾는다. 그다음, 열려 있는 템플릿에서 랭귀지 서비스를 사용할 수 있다.  한편 마이크로소프트는 8월 5일 공개한 새 확장 프로그램에 관한 피드백을 요청하고 있다. 피드백은 깃허브를 통해 남길 수 있다. ciokr@idg.co.kr  

마이크로소프트 비주얼 스튜디오 앵귤러 코드 편집기 자바스크립트 타입스크립트 비주얼 스튜디오 마켓플레이스 ASP.NET 인텔리센스 html

2020.08.20

‘비주얼 스튜디오용 앵귤러 랭귀지 서비스(Angular Language Service for Visual Studio)’ 확장 프로그램은 앵귤러 템플릿 내부에서 코드 자동완성, 오류 확인, 빠른 정보, 탐색 기능을 제공한다.    ‘앵귤러 랭귀지 서비스’가 마이크로소프트의 비주얼 스튜디오 IDE로 포팅됐다. 앵귤러 랭귀지 서비스는 앵귤러 템플릿 내에서 자동완성, 오류 확인, 힌트, 탐색 등을 위한 메커니즘을 제공한다.  구글에서 개발한 앵귤러 자바스크립트/타입스크립트 프레임워크와 함께 작동하는 이 서비스는 ‘비주얼 스튜디오용 앵귤러 랭귀지 서비스’ 확장 프로그램으로 제공된다. 현재 비주얼 스튜디오 마켓플레이스(Visual Studio Marketplace)에서 다운로드받을 수 있다.  공식 블로그에 따르면 마이크로소프트는 많은 ASP.NET 및 ASP.NET Core 사용자들이 앵귤러에서 프론트엔드를 구축한다는 사실을 알고 이 서비스를 지원하기로 했다. 비주얼 스튜디오에서는 기본 기능(예: 코드 완성, 인텔리센스(InteliSense), 정의로 이동(Go to Definition)) 외에는 앵귤러를 많이 지원하지 않았다.  이 확장 기능을 사용하려면 비주얼 스튜디오 16.5.0 이상 버전이 필요하다. 앵귤러 랭귀지 서비스는 인라인 템플릿뿐만 아니라 별도의 HTML 파일에 있는 외부 템플릿과도 작동한다. 비주얼 스튜디오는 개발자가 앵귤러 파일을 여는 것을 감지하고, 앵귤러 언어 서비스를 사용하여 tsconfig.json 파일을 읽는다. 그리고 애플리케이션에서 모든 템플릿을 찾는다. 그다음, 열려 있는 템플릿에서 랭귀지 서비스를 사용할 수 있다.  한편 마이크로소프트는 8월 5일 공개한 새 확장 프로그램에 관한 피드백을 요청하고 있다. 피드백은 깃허브를 통해 남길 수 있다. ciokr@idg.co.kr  

2020.08.20

회사명:한국IDG 제호: ITWorld 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아00743 등록일자 : 2009년 01월 19일

발행인 : 박형미 편집인 : 박재곤 청소년보호책임자 : 한정규
사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2022 International Data Group. All rights reserved.

10.5.0.5