VS Code용 ADT가 ABAP 개발 경험을 변화시키다 — 범위 제한을 수용한다면
요약
SAP가 ABAP 개발 경험을 개선하기 위해 VS Code용 ADT를 출시하며, 이는 에이전트 개발 및 확장성을 핵심 목표로 합니다. LSP와 MCP 기반 설계는 Eclipse의 한계를 극복하고 현대적인 개발 생태계에 통합되도록 돕습니다. 다만, 현재 버전은 RAP/Fiori 등 최신 영역에 초점을 맞추고 있어 클래식 ABAP 객체나 레거시 기능 지원에는 제한이 있습니다.
핵심 포인트
- VS Code ADT는 LSP와 MCP 기반으로 설계되어 확장성이 뛰어남.
- Eclipse 대비 메모리 효율성과 성능이 우수하여 컨테이너 환경에 적합함.
- 주요 초점은 RAP/Fiori 등 최신 서비스 개발 영역이며, 클래식 ABAP 지원은 제한적임.
- 전체 기능의 완전한 동등성을 위해서는 2026년까지 시간이 필요함.
SAP ABAP Development Tools for VS Code는 2026년에 일반적으로 사용 가능합니다. 범위 제한, MCP 통합, 그리고 팀이 여전히 Eclipse ADT를 필요로 하는 시점.
SAP가 마침내 VS Code ADT를 출시한 이유 (Language Server + MCP 기반)
10년 이상 동안 Eclipse ADT가 지배해 온 것과 달리, SAP의 VS Code 전환은 단순히 IDE 선호도 문제가 아니었습니다. 이는 에이전트 개발(agentic development)을 위한 전략적 토대였습니다:
- Language Server Protocol (LSP) 핵심: Eclipse의 독점 아키텍처와 달리, VS Code ADT는 언어 서비스에 LSP를 활용하여 본질적으로 더 확장성이 뛰어나고 MCP 서버 같은 외부 도구와의 통합이 용이합니다.
- MCP 우선 설계: 처음부터 Model Context Protocol(MCP)을 염두에 두고 구축되었기 때문에, VS Code ADT는 Eclipse의 사후 적용 방식보다 에이전트 워크플로우와 더 긴밀하게 통합됩니다.
- 현대적인 확장 생태계: 핵심 ABAP 기능 이상으로 개발자 생산성을 향상시키는 GitHub Copilot, Prettier, ESLint 등 VS Code의 방대한 마켓플레이스 확장에 접근할 수 있습니다.
- 성능 및 리소스 효율성: Eclipse에 비해 메모리 사용량이 현저히 적고 시작 시간이 빨라 컨테이너화된 개발 환경에 매우 중요합니다.
- 미래 대비: SAP를 VS Code가 많은 언어와 플랫폼의 기본 IDE가 되어가는 광범위한 산업 트렌드와 일치시킵니다.
이러한 변화는 ABAP 도구의 미래가 거대하고 Eclipse 기반인 솔루션보다는 개방적이고 확장 가능한 플랫폼에 있다는 SAP의 인식을 나타냅니다.
현재 범위: RAP/Fiori 우선 대 전체 ABAP 객체 동등성 타임라인
VS Code ADT는 특정 영역에서 탁월하지만, 조직은 도입 과정에서 실망을 피하기 위해 현재의 제한 사항을 이해해야 합니다:
강력한 지원 (RAP/Fiori 우선 초점):
- 비즈니스 서비스 및 서비스 정의 (CDS 기반 OData/V2 및 OData/V4의 핵심)
- 프로젝션 뷰(Projection views) 및 메타데이터 확장
- 서비스 바인딩(Service bindings) 및 소비 모델(consumption models)
- 기본 어노테이션 및 @OData.publish: true
- 간단한 엔티티 정의 및 연관 관계(associations)
개발 커버리지 (클래식 ABAP Objects):
- 클래스 및 인터페이스: 기본 정의/탐색은 좋으나, 고급 리팩토링은 제한적임
- 함수 모듈: 초기 릴리스에서는 보기 전용이었으며, 편집 기능이 점진적으로 추가됨
- 리포트: 기본적인 구문 강조(syntax highlighting)만 지원하며, 빠른 수정(quick fixes) 기능은 제한적임
- 데이터 요소 및 도메인: 보기 및 기본 편집만 가능함
- 데이터베이스 테이블: 정의 뷰만 제공되며, 고급 테이블 유지보수는 불가함
- 뷰 (SE11): 기본적인 생성 및 수정만 가능함
제한적이거나 계획된 지원:
- 클래식 dynpros (스크린): 최소한의 지원이며, 주로 보기(viewing) 목적으로 사용됨
- 모듈 풀(Module pools): 탐색이 제한적이며, 시각적인 스크린 페인터(visual screen painter)가 없음
- SAPscripts/Smart Forms: 디자인 기능이 없음
- 레거시 BAPI/RFC 래퍼: 기본적인 지원만 제공되며, 고급 생성 마법사(generation wizards)는 없음
- ABAP Workbench 통합: 일부 트랜잭션은 빠른 링크를 통해 접근 가능하지만, 내장되어 있지는 않음
타임라인 동기화: SAP는 2026년 말까지 Eclipse ADT와 80%의 객체 유형 패리티(object-type parity)에 도달하고, 2027년 중반을 목표로 완전한 패리티를 달성하겠다고 약속했습니다. 하지만 특정 레거시 GUI 기반 도구(예: Screen Painter)는 VS Code에서 직접적인 동등품이 없을 수 있습니다.
VS Code에서의 에이전트 개발 루프 (Agentic Dev Loop): MCP 도구, 외부 코딩 에이전트, 테스트 실행
VS Code ADT가 진정으로 빛을 발하는 곳은 현대적인 에이전트 기반(agentic) 개발 워크플로우를 가능하게 하는 것입니다:
- MCP 도구 통합: VS Code 인터페이스 내에서 ABAP MCP Server 도구에 직접 접근할 수 있습니다. 테이블 읽기, RFC 실행, 구문 검사 등을 편집기를 벗어나지 않고 모두 수행할 수 있습니다.
- 외부 에이전트 연결성: MCP를 통해 Claude, Copilot 또는 Amazon Q와 원활하게 연결되며, 열려 있는 파일과 선택된 코드를 기반으로 컨텍스트 인식 제안을 제공합니다.
- 실시간 코드 생성: 에이전트는 인라인 제안 형태로 나타나는 코드 변경 사항을 제안할 수 있으며, 익숙한 git 스타일의 diff 뷰를 통해 수락/거부할 수 있습니다.
- 통합 테스트: 편집기에서 ABAP Unit 테스트를 직접 실행하고, 결과는 패널에서 확인하며, 실패한 단언(assertion)으로 단 한 번의 클릭만으로 이동할 수 있습니다.
- 전송 요청 통합: SE09/SE10으로 전환하지 않고 전송 요청을 생성하고 관리할 수 있으며, 수정된 객체가 자동으로 포함됩니다.
- 구문 검사 및 빠른 수정: ABAP 전용 빠른 수정 기능을 실시간으로 제공합니다 (많은 기능이 기반 MCP 서버 기능을 활용합니다).
전체 작업 흐름은 '도구 간 전환'이라기보다는 IDE에 내장된 지능형 페어 프로그래머를 가진 느낌을 주며, 특히 탐색적 코딩이나 생소한 코드베이스 학습 시 강력합니다.
Eclipse가 죽지 않은 이유 — 여전히 필요한 경우
VS Code ADT에 대한 기대감에도 불구하고, Eclipse는 많은 ABAP 개발 시나리오에서 필수적입니다:
레거시 객체 유형 심층 작업:
- 클래식 dynpro 및 모듈 풀: Screen Painter와 Menu Painter는 여전히 Eclipse에만 존재합니다.
- SAPscript 및 Smart Form 유지보수: VS Code에는 동등한 디자이너가 없습니다.
- 배치 입력(BDC) 및 LSMW: 전문 도구들은 여전히 Eclipse 전용입니다.
- 레거시 BAPI 개발: 특정 GUI 지원 마법사들이 VS Code에 부재합니다.
- 고급 Web Dynpro: 시각적 개발 도구는 여전히 Eclipse 중심입니다.
특화된 개발 시나리오:
- 성능 분석: Eclipse에 깊이 통합된 SE30/SAT 런타임 분석
- 코드 검사기 개선: 특정 고급 ATC 설정 및 빠른 수정 기능
- 전송 오거나이저(Transport organizer): 기본 VS Code 통합 대비 전체 SE09/SE10 기능
- 워크플로우 빌더(Workflow builder): 시각적 워크플로우 생성 도구
- IDoc 관리: 고급 모니터링 및 테스트 도구
팀 및 프로세스 고려 사항:
- 레거시 코드 유지보수: 주로 S/4 HANA 이전 코드를 다루는 팀은 Eclipse가 더 생산적이라고 느끼는 경우가 많음
- 오프라인 개발: Eclipse는 언어 서버(language servers)에 의존하는 VS Code보다 연결이 끊긴 시나리오를 더 잘 처리함
- 복잡한 시나리오 디버깅: 특정 멀티스레드 또는 원격 디버깅 시나리오는 여전히 Eclipse가 유리함
- 레거시 SAP GUI 통합: 테스트 및 리플레이를 위한 SAP GUI와의 깊은 통합
실제 상황은 'Eclipse 대 VS Code'가 아니라 'X에 대한 Eclipse, Y에 대한 VS Code'이며, 스마트한 팀들은 두 IDE를 백엔드에 연결하여 함께 사용하고 개발자가 작업에 맞는 올바른 도구를 선택하도록 합니다.
팀 도입: 확장 기능(Extensions), 인증(Auth), 시스템 연결, 린팅(Linting)
평가 단계에서 팀 채택으로 나아가려면 이러한 실질적인 고려 사항들에 주의를 기울여야 합니다:
핵심 ADT 외 필수 확장 기능:
-
ABAP Flexible Project: 전통적인 ABAP을 넘어선 유연한 프로젝트 구조용
-
ABAP Debugger Enhancements: 개선된 디버깅 경험
-
ABAP Regex Helper: 정규 표현식(Regular expression) 구축 및 테스트
-
GitLens: 향상된 Git 기능 (Git 기반 워크플로우 사용 시)
-
Prettier - 코드 포매터(Code formatter): 일관된 코드 형식 지정
-
ESLint: 혼합 스택 프로젝트를 위한 JavaScript/TypeScript 린팅
-
Single Sign-On (SSO) 통합: 원활한 로그인을 위해 Kerberos 또는 SAML 구성
-
다중 시스템 관리: 개발(dev), 테스트(test), 프로덕션(production) 시스템 간 쉽게 전환
-
보안 자격 증명 저장소: 운영 체제 키체인 또는 비밀 관리 도구 사용
-
연결 프로필: 팀 전체에서 사용할 수 있는 연결 구성 저장 및 공유
-
오프라인 모드: 백엔드 시스템과 연결이 끊겼을 때 로컬 버퍼로 작업할 수 있는 기능
Linting 및 코드 품질 통합:
- ABAP Test Cockpit (ATC) 통합: 에디터에서 실시간 ATC 위반 사항 확인
- 사용자 정의 규칙 구성: 팀별 코딩 표준 강제 적용
- 저장 시 자동 포맷팅: 팀 전체에 일관된 코드 스타일 유지
- import 구문 정리: import 구문의 자동 정리 및 정렬
- 데드 코드 감지: 사용되지 않는 변수와 메서드를 식별하고 강조 표시
전문가 팁: 추천 확장 기능, 설정 및 폴더 구조를 포함하는 표준화된 VS Code 워크스페이스 파일(.code-workspace)을 생성하여 팀의 ABAP 프로젝트에 적용하세요.
개발자 경험 비교: Eclipse 숙련 사용자 vs VS Code 네이티브 채용 인력
IDE 선택은 종종 순수한 기능성보다 개발자의 배경과 작업 흐름 선호도를 더 많이 보여줍니다:
Eclipse 숙련 사용자가 일반적으로 중요하게 생각하는 것:
- SAP GUI 및 전통적인 ABAP Workbench 도구와의 깊은 통합
- 연결이 끊긴 상태에서의 포괄적인 오프라인 기능
- 수년간의 SAP 개발 경험에서 오는 익숙한 근육 기억(muscle memory)
- Screen Painter 및 Menu Painter와 같은 레거시 도구 접근성
- 복잡한 시나리오에 대한 강력한 성능 분석 및 디버깅 능력
- 대규모, 복잡한 엔터프라이즈 프로젝트에서의 안정성과 예측 가능성
VS Code 네이티브 채용 인력이 일반적으로 높게 평가하는 것:
- 광범위한 플러그인 생태계를 갖춘 현대적이고 확장 가능한 인터페이스
- 다른 기술 스택(JavaScript, Python 등)에서 오는 친숙함
- 우수한 성능과 낮은 리소스 소비
- 원활한 Git 통합 및 최신 워크플로우 호환성
- 폴리글랏 개발(동일 프로젝트 내 ABAP/JavaScript/HTML/CSS)에 대한 개선된 지원
- 활발한 커뮤니티와 빠른 혁신 주기
생산성 현실: 클래식 오브젝트를 이용한 순수 ABAP 백엔드 개발의 경우, 숙련된 Eclipse 사용자가 종종 1015% 정도 우위를 유지합니다. 하지만 풀스택 개발(ABAP UI5/Fiori, OData 서비스 또는 최신 RAP)의 경우에는, VS Code 사용자가 더 나은 프론트엔드 도구 통합 덕분에 2030%의 생산성 향상을 보이는 경우가 많습니다.
팀 프로필별 권장 매트릭스
모든 팀이 같은 속도로 VS Code ADT를 채택해야 하는 것은 아닙니다. 특정 상황을 고려해 보세요:
| 팀 프로필 | 권장 사항 | 시기 | 근거 |
|---|---|---|---|
| 신규 그린필드 S/4 프로젝트 (RAP/Fiori 중심) | VS Code ADT 즉시 채택 | 즉각적 | 최신 도구의 이점을 극대화하고 레거시 방해를 최소화합니다 |
| ... | |||
| 범용 권장 사항: 주력 IDE 선택과 관계없이, 팀이 ABAP MCP Server에 접근할 수 있도록 보장해야 합니다. 이는 두 환경 모두에서 개발자에게 도움이 되는 에이전트 워크플로우(agentic workflows)를 가능하게 하기 때문입니다. |
원문 출판: ayraix.com, 기업 구축자를 위한 실용 AI.
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기