블로그 목록
SW 개발 연대기

2002년 개발 연대기: 새 플랫폼은 정식 제품이 되고 웹은 구독되기 시작했다

.NET Framework 1.0과 Java 1.4, Mozilla 1.0, Eclipse 2.0, RSS 2.0이 함께 등장한 2002년의 개발 흐름을 살펴봅니다.

2026년 7월 24일약 21분
#2002#.NET#Java#Mozilla#Eclipse#RSS#웹 서비스#국내 인터넷

2002년은 앞선 몇 년 동안 예고되거나 실험되던 기술이 개발자가 실제로 선택할 수 있는 제품과 도구로 정착한 해였다. 마이크로소프트는 .NET Framework와 Visual Studio .NET을 정식 출시했고, Java는 1.4 버전에서 서버와 데스크톱 개발에 필요한 표준 기능을 넓혔다.

웹의 바깥에서도 변화는 분명했다. Mozilla 1.0은 오픈소스 브라우저 프로젝트의 첫 완성판이 되었고, Eclipse 2.0은 플러그인 기반 개발 환경의 가능성을 보여주었다. RSS 2.0은 웹사이트의 새 글을 직접 찾아다니지 않고 구독하는 방식을 구체화했다.

국내에서는 초고속인터넷 가입자가 1천만 명을 넘어섰고, 전자정부 사업이 대규모 정보화 프로젝트를 통해 모습을 드러냈다. 개발의 중심은 단독 프로그램보다 네트워크에 연결된 서비스와 기업 시스템으로 더욱 빠르게 이동하고 있었다.

2002년을 보여주는 장면

분야주요 변화개발자에게 생긴 의미
애플리케이션 플랫폼.NET Framework 1.0과 Visual Studio .NET 정식 출시공통 실행 환경과 클래스 라이브러리 위에서 여러 언어를 사용하는 개발 방식이 제품화됨
JavaJ2SE 1.4 출시NIO, 정규표현식, 로깅, XML 처리 등 실무 기능이 표준 플랫폼에 포함됨
웹 서비스SOAP·WSDL·XML을 둘러싼 플랫폼 경쟁서로 다른 시스템을 표준 메시지로 연결하려는 시도가 기업 개발의 주요 의제가 됨
브라우저Mozilla 1.0 출시Gecko 엔진과 웹 표준을 중심에 둔 오픈소스 브라우저가 완성 단계에 도달함
개발 도구Eclipse 2.0 출시플러그인으로 확장하는 오픈소스 IDE가 본격적인 개발 도구로 성장함
콘텐츠 유통RSS 2.0 공개웹 콘텐츠를 피드로 발행하고 구독하는 구조가 단순한 형식으로 정리됨
국내 환경초고속인터넷 1천만 가입자와 전자정부 사업대규모 웹 서비스와 공공 정보시스템의 수요가 함께 확대됨

.NET이 약속에서 정식 개발 플랫폼으로

마이크로소프트는 2000년에 .NET 전략을 발표하고 시험판을 공개한 뒤, 2002년 2월 13일 Visual Studio .NET과 .NET Framework를 정식 출시했다. 따라서 .NET을 2002년에 처음 발표된 기술로 보는 것은 정확하지 않다. 2002년의 핵심은 그 구상이 개발자가 사용할 수 있는 완성된 제품으로 출하되었다는 데 있다.

.NET Framework 1.0의 중심에는 **공용 언어 런타임(Common Language Runtime, CLR)**이 있었다. C#이나 Visual Basic .NET으로 작성한 코드는 중간 언어로 컴파일되고, CLR 위에서 실행되었다. 메모리 관리, 예외 처리, 형식 안전성 같은 공통 기능을 런타임이 담당하는 관리 코드 모델이었다.

또 하나의 축은 방대한 기본 클래스 라이브러리였다. 파일과 네트워크 입출력, 데이터 접근, XML 처리, 사용자 인터페이스 같은 기능을 언어마다 따로 마련하는 대신 공통 API로 제공했다. 언어가 달라도 같은 런타임과 라이브러리를 공유한다는 점은 당시 윈도우 개발 방식의 큰 변화였다.

Visual Studio .NET은 C#, Visual Basic .NET 등 여러 언어를 하나의 통합 개발 환경에서 다루었다. 기존 Visual Basic 6와 Visual Basic .NET 사이에는 문법과 실행 모델의 차이가 컸기 때문에 전환이 단순하지 않았지만, 마이크로소프트가 윈도우 애플리케이션과 웹 개발의 중심을 .NET으로 옮기려 한다는 방향은 명확했다.

웹 개발에서는 ASP.NET이 기존 ASP를 대체할 새 선택지로 등장했다. 서버 컨트롤, 이벤트 기반 프로그래밍, 코드와 화면의 분리 같은 기능을 내세웠고, ADO.NET은 연결을 계속 유지하지 않는 데이터 처리 모델을 강조했다. C# 역시 .NET과 함께 실무 개발 언어로 본격적인 출발점에 섰다.

Java 1.4, 실무 기능을 표준 플랫폼 안으로

Java 진영에서는 2002년 2월 J2SE 1.4가 공개되었다. Java가 이미 서버 애플리케이션과 기업 시스템에서 널리 사용되고 있던 시점이었기 때문에, 이번 변화는 완전히 새로운 플랫폼의 등장보다 개발 현장에서 필요로 하던 기능을 표준 안으로 흡수하는 성격이 강했다.

대표적인 추가 기능은 다음과 같다.

  • NIO(New I/O): 버퍼와 채널, 문자 집합, 파일 잠금 등 기존 입출력 API보다 세밀한 제어 수단을 제공했다.
  • 정규표현식: 문자열 검색과 치환에 필요한 기능이 java.util.regex 패키지로 들어왔다.
  • 로깅 API: 애플리케이션의 실행 상태와 오류를 일정한 방식으로 기록할 수 있게 했다.
  • XML 처리: 파서와 변환 API가 표준 플랫폼에 포함되어 XML 중심의 시스템 연동을 뒷받침했다.
  • assert 문: 개발 중 전제 조건을 검사하는 언어 기능이 추가되었다.
  • 암호화 기능: JCE가 플랫폼에 통합되면서 보안 관련 API를 더 일관되게 사용할 수 있게 되었다.

기업용 Java에서는 J2EE를 중심으로 웹 애플리케이션 서버, 서블릿, JSP, EJB를 조합하는 개발이 활발했다. 반대편에는 막 정식 출시된 .NET이 있었다. 두 진영 모두 실행 환경, 언어, 서버 기술, 개발 도구를 하나의 플랫폼으로 제시하면서 기업 개발자를 확보하려 했다.

이 경쟁은 단순히 Java와 C# 중 어느 언어를 선택할 것인가의 문제가 아니었다. 운영체제와 서버 제품, 개발 도구, 기존 시스템, 개발 인력까지 함께 고려해야 하는 플랫폼 선택의 문제였다.

XML 웹 서비스가 기업 개발의 공통 언어를 꿈꾸다

2002년의 기술 기사와 제품 발표에서 빠지지 않던 표현이 **웹 서비스(Web Services)**였다. 이때의 웹 서비스는 브라우저에서 사용하는 웹사이트만을 뜻하지 않았다. 서로 다른 언어와 운영체제로 만든 프로그램이 XML 메시지를 주고받으며 기능을 호출하는 시스템 연동 방식에 가까웠다.

SOAP은 메시지 형식을, WSDL은 서비스가 제공하는 기능과 호출 방법을 기술했다. UDDI는 서비스를 등록하고 찾는 체계를 표방했다. 기업 안팎에 흩어진 시스템을 특정 제품의 전용 통신 규약에만 의존하지 않고 연결하겠다는 구상이었다.

마이크로소프트는 .NET을 XML 웹 서비스 개발 플랫폼으로 강하게 내세웠다. Java 진영의 업체들도 J2EE 서버와 개발 도구에 SOAP·WSDL 지원을 추가했다. 국내에서도 2002년 당시 보도는 .NET과 J2EE의 경쟁을 웹 서비스 플랫폼과 개발 도구 시장의 대결로 다루었다.

다만 표준 형식을 사용한다고 해서 시스템 통합이 저절로 단순해지는 것은 아니었다. 복잡한 명세, 제품별 상호운용성, 보안과 트랜잭션 같은 문제가 남아 있었다. 그럼에도 네트워크 너머의 기능을 명시적인 인터페이스로 호출한다는 생각은 기업 소프트웨어 설계의 중요한 흐름이 되었다.

Mozilla 1.0, 오픈소스 브라우저의 첫 완성판

넷스케이프가 브라우저 소스 공개 계획을 발표한 것은 1998년이었다. 그로부터 약 4년이 지난 2002년 6월 5일, Mozilla 프로젝트는 Mozilla 1.0을 공개했다. 오랜 개발 끝에 브라우저, 이메일, 뉴스그룹, 웹 편집 도구를 묶은 애플리케이션 모음이 첫 안정판에 도달한 것이다.

Mozilla 1.0의 핵심에는 Gecko 레이아웃 엔진이 있었다. HTML과 CSS, DOM, XML 같은 웹 표준을 지원하고 여러 운영체제에서 동작하는 엔진이었다. 사용자 인터페이스를 XML 기반으로 기술하는 XUL과 확장 가능한 구조도 Mozilla만의 특징이었다.

이 출시는 브라우저 시장 점유율을 단번에 뒤집은 사건은 아니었다. 그러나 특정 회사 내부에서만 개발되던 브라우저와 달리, 소스 코드와 버그 추적 과정이 공개된 프로젝트가 완성도 있는 브라우저를 내놓았다는 점에서 의미가 컸다.

같은 해 9월에는 훗날 Firefox로 이어지는 가벼운 브라우저 프로젝트 Phoenix 0.1도 공개되었다. 이 시점의 Phoenix를 곧바로 Firefox 1.0으로 표현해서는 안 된다. 이름 변경과 추가 개발을 거쳐 Firefox 1.0이 출시되는 것은 2004년의 일이다.

Eclipse 2.0, IDE를 플러그인의 무대로 만들다

IBM이 Eclipse 소스 코드를 공개하고 프로젝트를 출범시킨 것은 2001년이었다. 이어 2002년 6월 27일 Eclipse 2.0이 출시되면서 프로젝트는 초기 공개 단계를 넘어 실제 개발에 사용할 수 있는 환경으로 빠르게 성장했다.

Eclipse의 중요한 특징은 개발 환경의 기능을 플러그인으로 구성한다는 점이었다. 편집기, 디버거, 버전 관리 연동, 언어 지원을 확장할 수 있었고, 기본으로 제공된 Java 개발 도구는 코드 작성과 탐색, 리팩터링, 디버깅을 하나의 작업 공간에 묶었다.

개발 도구가 특정 제품의 부속품에 머무르지 않고 여러 업체와 개발자가 기능을 보태는 공통 플랫폼이 될 수 있다는 생각도 힘을 얻었다. 다만 독립 비영리 조직인 Eclipse Foundation이 설립되는 시점은 2004년이므로, 2002년의 Eclipse를 현재의 재단 체제와 동일하게 설명하는 것은 시기상 맞지 않는다.

RSS 2.0, 웹사이트를 방문하는 대신 새 글을 구독하다

웹에 게시되는 글이 늘어나자 새로운 내용을 확인하는 방법도 필요해졌다. RSS는 여러 계보와 버전이 얽힌 형식이었고, 2002년 8월 19일 UserLand가 RSS 2.0 규격을 공개했다.

RSS 피드는 대체로 사이트 정보를 담는 channel과 개별 글을 나타내는 item으로 구성되었다. 글의 제목, 링크, 설명, 발행 시각, 고유 식별자 등을 XML 문서에 담으면, 구독 프로그램이 여러 사이트의 새 항목을 한곳에 모아 보여줄 수 있었다.

이 방식은 웹의 이용 흐름을 바꾸었다. 사용자가 사이트마다 직접 방문해 갱신 여부를 확인하는 대신, 사이트가 기계가 읽을 수 있는 목록을 발행하고 사용자가 이를 구독할 수 있게 된 것이다. 개인 웹로그와 뉴스 사이트가 늘어나던 환경에 특히 잘 맞았다.

RSS 2.0에는 미디어 파일의 위치를 나타낼 수 있는 enclosure 요소도 포함되었다. 이후 오디오 콘텐츠 배포에 활용되지만, 2002년의 규격 공개 자체를 팟캐스트 대중화와 같은 사건으로 보는 것은 이르다. 이 시기의 핵심은 웹 콘텐츠 구독을 위한 간단한 배포 형식이 자리를 잡아갔다는 데 있었다.

국내: 초고속인터넷 1천만과 전자정부

2002년 10월 국내 초고속인터넷 가입자는 1천만 명을 넘어섰다. 전화선을 통한 접속이 일상적이던 시기에서 불과 몇 년 만에 상시 접속 가능한 고속망이 대중적인 기반 시설로 바뀐 것이다.

접속 환경의 변화는 서비스와 개발 수요를 함께 키웠다. 포털, 온라인 게임, 전자상거래처럼 많은 사용자가 동시에 접속하는 서비스가 성장했고, 서버 성능과 데이터베이스 운영, 네트워크 장애 대응의 중요성도 커졌다. 웹은 일부 이용자를 위한 별도 채널이 아니라 대규모 서비스를 제공하는 중심 창구가 되어가고 있었다.

공공 부문에서는 전자정부 11대 중점 과제가 추진되었다. 여러 부처의 행정 정보를 연계하고 민원과 조달, 세금 등 공공 서비스를 온라인화하는 작업이 진행되었으며, 2002년 11월에는 관련 사업의 완성을 알리는 행사가 열렸다.

이러한 사업은 단순한 홈페이지 제작보다 훨씬 넓은 범위의 개발을 요구했다. 기존 행정 시스템과 데이터베이스를 연결하고, 사용자 인증과 보안을 적용하며, 많은 이용자가 안정적으로 접근할 수 있는 서비스를 운영해야 했다. 웹 애플리케이션 서버와 기업용 Java, 데이터 연계 기술, 시스템 통합 역량이 중요해진 배경이다.

국내 개발 도구와 서버 시장에서도 J2EE와 .NET의 경쟁이 본격적으로 거론되었다. 새 프로젝트에서 어느 플랫폼을 채택할지뿐 아니라 이미 구축된 시스템을 어떻게 연결할지, 개발자와 운영 인력을 어떻게 확보할지가 함께 판단 기준이 되었다.

2002년의 의미

2002년은 새로운 이름이 많이 등장한 해라기보다, 지난 몇 년간 준비된 변화가 실제 개발 환경을 재편하기 시작한 해였다.

.NET은 발표와 시험판을 지나 정식 제품이 되었고, Java는 실무 기능을 표준 플랫폼에 더했다. 두 진영의 경쟁 속에서 XML 웹 서비스는 시스템 연동의 공통 해법으로 주목받았다. Mozilla와 Eclipse는 공개된 소스와 확장 가능한 구조가 브라우저와 개발 도구에서도 지속 가능한 방식이 될 수 있음을 보여주었다. RSS는 계속 늘어나는 웹 콘텐츠를 사람이 찾아가는 대신 소프트웨어가 가져오게 했다.

국내에서는 1천만 초고속인터넷 가입자와 전자정부 사업이 네트워크 기반 서비스를 일상의 기반으로 밀어 올렸다. 개발자는 이제 한 대의 컴퓨터에서 실행되는 프로그램뿐 아니라, 수많은 사용자와 기관의 시스템이 연결되는 환경을 설계하고 운영해야 했다.

다음 해인 2003년에는 Safari와 WebKit, WordPress, Skype 같은 새로운 제품과 프로젝트가 등장한다. 웹 브라우저와 개인 출판, 인터넷 통신의 지형은 다시 한번 넓어질 준비를 하고 있었다.

참고 자료