Eclipse ADT와 VS Code는 경쟁 관계가 아니라 역할 분리 관계입니다. ADT는 SAP 공식 ABAP 개발 표준 도구로, BTP ABAP, RAP, CDS, ABAP Cloud 개발에 필수입니다. VS Code는 Git 협업, AI 보조, 멀티 언어 개발에 강점을 가진 보조 도구입니다. OnPremise 환경에서는 ADT + VS Code 병행이 현실적이며, BTP ABAP 환경에서는 ADT 중심 전략이 가장 안정적입니다. 현재 프로젝트 환경에 맞는 개발 표준을 먼저 정의하고 도구를 선택해야 합니다.
도입부
ABAP 개발을 시작하거나, 익숙한 SE80에서 벗어나려는 순간 가장 먼저 마주하는 선택지가 있습니다. 바로 Eclipse ADT와 VS Code입니다. “어떤 도구로 개발해야 할까?” 이 질문은 단순히 편집기 선호도 문제가 아닙니다. 특히 S/4HANA 전환, Clean Core 전략, BTP ABAP 환경이 확산되면서 개발 도구 선택이 곧 생산성 차이로 직결되는 상황이 되었습니다.
실제 프로젝트 현장에서 이런 질문을 자주 받습니다. “VS Code로 BTP 개발이 가능한가요?”, “ADT를 꼭 써야 하나요?”, “Git을 쓰면 Transport는 필요 없나요?” 이런 분들께 특히 이 글이 도움이 될 겁니다. SE80에서 Eclipse ADT로 넘어갈지 고민하는 개발자, VS Code 기반 개발 환경을 도입하려는 팀, OnPremise와 BTP ABAP 환경 차이를 명확히 이해하고 싶은 ABAP 개발자분들이죠.
이 글에서는 ABAP 개발 비교 관점에서 Eclipse ADT vs VS Code를 구조적으로 분석하고, 어떤 상황에서 어떤 선택이 맞는지 실무 기준으로 정리해드리겠습니다.

ABAP 개발 환경의 진화와 기술 배경
Classic ABAP부터 ABAP Cloud까지
ABAP 개발 환경은 지난 30년간 큰 변화를 겪었습니다. Classic ABAP(ECC) 시대에는 SAP GUI와 SE80이 개발의 중심이었습니다. 트랜잭션 중심, 단일 시스템 안에서 개발·수정·전송이 이루어지는 구조였죠. 화면 기반 개발 비중이 높았고, 리포트, 함수모듈, Dynpro, 전통적 enhancement가 주된 업무였습니다.
S/4HANA 시대로 접어들면서 Eclipse 기반 ABAP Development Tools(ADT)가 사실상 표준으로 자리 잡았습니다. 객체 중심 개발이 강화되고, ABAP OO, CDS, AMDP 같은 현대적 개발 방식이 도입되면서 SAP는 신규 ABAP 개발 방식에서 ADT를 공식 주력 도구로 제시했습니다.
지금은 ABAP Cloud와 SAP BTP ABAP Environment 시대입니다. 이 환경에서는 ADT가 필수입니다. Clean Core 전략에 따라 Released API만 사용하고, RAP(RESTful ABAP Programming Model) 중심 서비스 개발이 이루어지며, Cloud-ready 개발 제약과 품질 규칙이 엄격하게 적용됩니다.

Eclipse ADT란 무엇인가
ABAP Development Tools for Eclipse(ADT) 는 SAP가 제공하는 공식 ABAP 개발 도구입니다. 단순한 플러그인이 아니라 ABAP 객체 탐색, 패키지 관리, 활성화(Activation), Transport 연계, CDS/RAP 개발, 디버깅, ATC 구문 검사 등을 포함하는 ABAP 개발의 표준 작업 환경입니다.
ADT의 가장 큰 강점은 SAP Repository와 직접 연결된다는 점입니다. Where-used, navigation, quick fix, syntax check가 강력하고, CDS Data Definition, Metadata Extension, Behavior Definition, Service Binding 같은 최신 ABAP 아티팩트를 완벽하게 지원합니다. OnPremise와 BTP ABAP 모두 대응하며, SAP가 제공하는 모든 문서, 튜토리얼, 학습 자료가 ADT 기준으로 제공됩니다.
특히 ABAP Cloud, RAP, BTP ABAP 관련 개발 문서는 대부분 ADT 기준입니다. 즉, 해당 영역을 하려면 ADT를 “선택”하는 게 아니라 전제로 두는 편이 정확합니다.
VS Code는 어떤 위치인가
Visual Studio Code는 Microsoft의 범용 경량 IDE이며, 확장(extension) 기반으로 기능을 확대합니다. ABAP 영역에서는 주로 ABAP 코드 편집, 원격 시스템 연결, abapGit 기반 소스 관리, 멀티 스택 프로젝트(ABAP + UI5 + CAP + Node.js), GitHub Copilot 같은 AI 보조 개발에 강점을 보입니다.
다만 중요한 구분이 있습니다. VS Code는 SAP 공식 ABAP 주력 IDE가 아닙니다. ADT처럼 모든 ABAP 아티팩트에 대한 공식·완전한 지원을 제공하는 구조가 아니고, 확장 도구 조합에 따라 활용 범위가 달라집니다.
가장 현실적인 해석은 이렇습니다. ADT는 SAP 내부 구조를 이해하고 개발·분석·활성화·전송하는 메인 도구이고, VS Code는 Git 협업, 빠른 편집, AI 보조, 혼합 기술 스택 작업에 유리한 보조 도구입니다.
SE80 vs ADT: 단순 UI 차이가 아니다
SE80은 SAP GUI 기반으로 오래된 방식에 익숙한 개발자에게 친숙합니다. 전통적인 리포트, 펑션, 스크린 개발에는 익숙하지만 최신 객체 탐색성과 생산성은 제한적입니다.
반면 ADT는 객체 중심 개발 환경입니다. 패키지, dependency, where-used 탐색이 훨씬 직관적이고, 코드 템플릿, quick assist, 리팩토링을 지원합니다. CDS, RAP, ABAP Cloud 개발에는 사실상 표준입니다.
SE80에서 ADT로 넘어갈 때 가장 큰 차이는 사고방식의 전환입니다. “트랜잭션 실행 중심”에서 “객체 모델 중심”으로, “GUI에서 이것저것 열기”에서 “패키지·오브젝트·의존성 탐색 기반 작업”으로, “고전적 개발”에서 “클라우드·서비스·API 중심 개발”로 전환되는 겁니다. ADT 전환은 단순한 생산성 향상이 아니라 개발 방법론 업그레이드에 가깝습니다.
OnPremise vs BTP ABAP: 개발 방식이 다른 이유
OnPremise ABAP은 전통적으로 SAP 시스템 내 개발, Package + Transport Request 기반 변경 관리, 개발·품질·운영 시스템 간 이관, 전통적 enhancement 및 수정 구조 활용이 기본입니다. Transport 중심 운영 모델이 핵심입니다.
BTP ABAP Environment와 ABAP Cloud는 다릅니다. Cloud 환경 제약을 준수하고, Released object와 API만 사용하며, RAP 기반 서비스 개발 비중이 높습니다. Cloud Transport Management, 소프트웨어 컴포넌트, 배포 파이프라인을 고려해야 하고, ABAP language version 및 엄격한 규칙이 적용됩니다. BTP ABAP은 서버 위치가 클라우드라는 뜻이 아니라 개발 규칙 자체가 Cloud-ready 방식으로 바뀌는 환경입니다.

Transport vs Git: 자주 헷갈리는 개념
이 부분은 실무에서 가장 많이 헷갈려하는 지점입니다. Transport는 SAP 표준 변경 이력 및 이관 메커니즘입니다. 개발 시스템에서 변경한 객체를 요청(Request)에 담아 상위 시스템으로 이동하는 구조로, SAP landscape 운영과 강하게 결합되어 있습니다. 브랜치 전략이나 분산 협업보다는 시스템 이동 통제에 초점이 있습니다.
Git은 분산 버전 관리 도구입니다. 브랜치, 머지, PR, 코드 리뷰, CI/CD와 자연스럽게 연결되며, 소스 중심 협업에 강합니다. 하지만 SAP 내부 오브젝트 활성화·전송 개념과는 다릅니다.
핵심 차이를 정리하면, Transport는 SAP 시스템 변경 배포 체계이고, Git은 소스 코드 협업 및 버전 관리 체계입니다. 둘은 완전히 같은 문제를 해결하는 도구가 아닙니다. “Transport를 Git으로 완전히 대체할 수 있나?”라는 질문을 자주 받지만, 일부 영역은 보완 가능해도 완전 대체는 환경과 아키텍처에 따라 제한적입니다.

환경별 개발 구현 단계
S/4HANA 변경사항: 이 글은 Classic ABAP(ECC) 및 S/4HANA OnPremise, 그리고 BTP ABAP Environment 기준으로 작성되었습니다. ABAP Cloud 제약이 있는 BTP 환경에서는 Released API만 사용 가능하며, 일부 전통적 개발 방식이 제한됩니다.
Eclipse ADT 환경 구성 (OnPremise 기준)
Eclipse ADT를 활용한 개발 흐름은 다음과 같습니다.
- Eclipse IDE 설치
- ABAP Development Tools 플러그인 설치
- SAP 시스템 연결 설정 (SAP Logon 엔트리 기반)
- ABAP Project 생성
- Package 연결 및 Transport Layer 자동 연계
- 오브젝트 생성 또는 수정
- Activation
- Transport Request 기록
- 상위 시스템으로 이관
ADT가 특히 강한 영역은 ABAP class/interface 개발, CDS view entity, RAP business object, Behavior implementation, Service exposure, ATC 기반 품질 검사, Object navigation 및 where-used 분석입니다.

Eclipse ADT 환경 구성 (BTP ABAP 기준)
BTP ABAP Environment에서는 구성 방식이 약간 다릅니다.
- Eclipse + ADT 설치
- BTP ABAP Environment 연결 (클라우드 인스턴스 URL 및 인증)
- Package/Software Component 컨텍스트 설정
- CDS, Behavior Definition, Service Definition, Service Binding 개발
- Activation 및 ATC 검사
- 테스트 및 배포 흐름 연결
BTP에서는 CDS, RAP, Service Binding 같은 최신 아티팩트가 주된 개발 대상이며, ADT 없이는 사실상 개발이 불가능합니다.
VS Code 환경 구성
VS Code를 ABAP 개발에 활용하는 방식은 환경별로 다소 다릅니다. OnPremise에서 주로 쓰는 방식은 다음과 같습니다.
- VS Code 설치
- 관련 ABAP extension 설치 (abapFS, ABAP Language 등)
- 시스템 연결 설정 (RFC 또는 HTTP 기반)
- abapGit 또는 파일 기반 소스 연계
- 로컬에서 편집
- Git commit / push
- 시스템 반영 및 검증
VS Code가 빛나는 상황은 ABAP + UI5 + CAP + Node.js를 같은 워크스페이스에서 관리하거나, Copilot·AI assistant를 활용하거나, Pull Request 기반 리뷰를 진행하거나, 다수 저장소를 동시 관리할 때입니다. 경량 편집과 빠른 검색도 강점입니다.
다만 한계도 명확합니다. ADT 수준의 SAP 오브젝트 라이프사이클 통합 경험은 제한적이고, CDS, RAP, ABAP Cloud 최신 아티팩트 지원은 ADT가 훨씬 안정적입니다. 공식 교육, 튜토리얼, 문서가 VS Code 중심으로 제공되지는 않습니다.

개발 흐름 비교표
| 구분 | Eclipse ADT | VS Code |
|---|---|---|
| 주 개발 대상 | ABAP Class, CDS, RAP, Behavior Definition | 텍스트 편집, 멀티 언어, Git 협업 |
| SAP 시스템 연결 | ABAP Project 기반 직접 연결 | Extension 기반 연결 (제한적) |
| Transport 연계 | 자동 연계 및 관리 | 수동 또는 별도 도구 필요 |
| CDS/RAP 지원 | 완벽 지원 | 제한적 또는 미지원 |
| Git 통합 | 기본 제공 | 강력한 네이티브 통합 |
| AI 보조 개발 | 제한적 | Copilot 등 강력한 지원 |
| 멀티 언어 개발 | ABAP 중심 | 범용 지원 |
| 공식 SAP 지원 | 공식 표준 도구 | 비공식 보조 도구 |
위 표에서 확인할 수 있듯, ADT는 SAP 내부 개발 구조와 깊이 통합된 도구이고, VS Code는 유연성과 확장성에 강점이 있는 범용 도구입니다.
주요 포인트 및 개발 팁
Eclipse ADT vs VS Code 선택 기준
실무에서 가장 많이 받는 질문이 “어떤 도구를 써야 하나요?”입니다. 다음 기준으로 판단하시면 됩니다.
ADT가 필수인 경우
- BTP ABAP 개발
- RAP, CDS 중심 개발
- ABAP Cloud 개발
- SAP 표준 Enhancement (BAdi, Enhancement Spot 등)
- Clean Core 전략에 맞춘 확장 개발
- 심화 SAP 오브젝트 탐색·분석·디버깅
VS Code가 유리한 경우
- Git 기반 협업 문화가 강한 팀
- 다중 언어 개발 (ABAP + UI5 + CAP + Node.js 등)
- AI 코파일럿 활용 (Copilot, Claude 등)
- 빠른 텍스트 편집·검색 중심 작업
- 대규모 문자열 수정 및 저장소 간 탐색
생산성 관점 비교
ADT는 SAP Object Navigation이 강력합니다. Debugging, Where-used, Package 구조 분석이 최적화되어 있고, ABAP 개발자가 시스템 내부를 이해하는 데 필요한 모든 도구가 통합되어 있습니다.
VS Code는 빠른 편집, 멀티 프로젝트 관리, AI 기반 코드 자동 생성 및 리팩토링에 강점이 있습니다. 특히 여러 저장소를 동시에 열고, 문서·설정 파일·코드를 한 화면에서 관리하는 데는 ADT보다 훨씬 유리합니다.
Clean Core 전략의 영향
SAP의 Clean Core 전략은 개발 도구 선택에도 영향을 미칩니다. SAP는 ADT + ABAP Cloud 모델을 중심으로 유도하고 있으며, VS Code는 보조 도구로 활용되는 구조입니다. 향후 SAP 확장 개발의 주류는 ADT 기반이 될 가능성이 큽니다.
실무에서 자주 하는 실수
현장에서 다음과 같은 실수를 자주 봅니다.
- ADT 없이 VS Code만으로 BTP 개발 시도 → 대부분 막힙니다
- Transport와 Git 개념 혼용 → 둘은 목적이 다른 도구입니다
- OnPremise 시스템에 Git 전략을 무리하게 적용 → Transport 체계 우선 고려 필요
- SE80 경험만으로 ADT 학습을 건너뛰려는 시도 → S/4 이후 환경에서는 ADT 역량이 점점 필수입니다
추천 조합
실무에서 가장 현실적인 조합은 다음과 같습니다.
- OnPremise: ADT + abapGit + VS Code 병행
- BTP ABAP: ADT 중심 + VS Code는 문서·설정·보조 작업용
프로젝트 초반에 개발 표준을 먼저 정의하는 것이 가장 중요합니다. 도구 선택은 그 다음입니다.
에러 및 연동 오류 해결
ABAP Cloud 제약: BTP ABAP Environment에서는 일부 전통적 개발 오브젝트(예: Classical Dynpro, Function Module 직접 호출 등)가 사용 불가합니다. Released API 및 RAP 기반 대안을 사용해야 합니다.
주요 연결 오류 및 해결 방법
| 오류 유형 | 발생 원인 | 해결 방법 |
|---|---|---|
| Eclipse ADT 연결 실패 | SAP GUI 미설치, SNC 설정 문제, 인증서 문제 | SAP Logon 설정 확인, HTTPS 인증 구성 점검, 관련 SAP Note 확인 |
| VS Code ABAP Extension 연결 실패 | RFC 권한 부족, SICF 서비스 비활성화 | SICF 서비스 활성화, 사용자 권한(S_DEVELOP 등) 확인 |
| Transport 충돌 문제 | 동일 오브젝트 동시 수정 | Transport Lock 확인, 패키지 구조 정리, 개발자 간 조율 |
| Git 충돌 | 브랜치 병합 충돌 | Rebase 전략 사용, 코드 리뷰 프로세스 강화, 충돌 구간 수동 병합 |
| BTP ABAP 인증 오류 | OAuth 토큰 만료, 권한 미부여 | BTP Cockpit에서 권한 재확인, 토큰 갱신 |
Eclipse ADT 연결 오류 상세 대응
ADT 연결 오류는 대부분 백엔드 서비스 활성화 미흡이나 인증 설정 문제입니다. 다음 순서로 점검하세요.
- SAP GUI 및 SAP Logon 엔트리 정상 동작 확인
- 관련 ICF/SICF 서비스 활성화 여부 점검 (특히
/sap/bc/adt경로) - 인증서 체인 및 TLS 설정 검토
- 개발 사용자 권한 확인 (S_DEVELOP, S_RFC 등)
- 네트워크·VPN 이슈 점검
- SAP Note 및 공식 가이드 확인
VS Code 연계 오류 상세 대응
VS Code는 확장 도구에 따라 요구사항이 다르므로, 사용하는 extension의 공식 가이드를 우선 확인하는 것이 중요합니다.
- 확장별 공식 문서 우선 확인
- HTTP/RFC/OData 등 필요한 접속 방식 점검
- 권한 오브젝트 확인 (특히 RFC 권한)
- abapGit 저장소 구조와 패키지 매핑 점검
- SICF 서비스 활성화 상태 확인
SAP 버전 및 환경에 따라 동작이 다를 수 있으니 공식 문서 확인을 권장합니다.
마무리
지금까지 Eclipse ADT와 VS Code를 ABAP 개발 환경 관점에서 비교해봤습니다. 핵심 내용을 세 줄로 정리하면 이렇습니다.
- Eclipse ADT와 VS Code는 경쟁 관계가 아니라 역할 분리 관계입니다.
- OnPremise 환경에서는 ADT + VS Code 병행이 현실적이고, BTP ABAP 환경에서는 ADT 중심 전략이 가장 안정적입니다.
- SAP 공식 방향은 ADT + ABAP Cloud 중심이며, VS Code는 강력한 보조 도구로 활용 가치가 큽니다.
한 줄로 정리하면, “SAP 내부 개발은 ADT, 협업과 확장은 VS Code”입니다.
현재 프로젝트 환경(OnPremise / S/4HANA / BTP)에 맞춰 개발 표준을 먼저 정의하는 것이 우선입니다. 도구는 그 다음입니다. 여러분은 현재 어떤 환경에서 개발하고 계신가요? 도구 선택 고민이 있으시다면 댓글로 공유해주세요. 함께 이야기 나누면 더 나은 방향을 찾을 수 있을 겁니다.
다음 글에서는 “ABAP Cloud에서 RAP 개발이 필수가 되는 이유”와 “abapGit 실무 적용 – Transport를 대체할 수 있을까?”를 다룰 예정입니다.
참고 출처
- SAP Help Portal: ABAP Development Tools (ADT) 공식 문서
- SAP Help Portal: ABAP Cloud / SAP BTP ABAP Environment 공식 문서
- SAP Help Portal: RAP(RESTful ABAP Programming Model) 공식 가이드
- SAP Community: ADT, RAP, ABAP Cloud 학습 자료
- developers.sap.com: ABAP Development 튜토리얼
- abapGit 공식 사이트
- Microsoft VS Code 공식 문서