티스토리 툴바



2008/09/18 09:59

훈스 닷넷에 올라온 asp.ajax 의 강의 내용

사용자들의 Ajax 방식의 웹 환경에 경험이 많아지면서 일부분이라도 Ajax 방식의 애플리 케이션을 제작 해야 합니다.
하지만 시간도 없고 당장 구현도 해야 하니 다른 사이트나 강좌를 통해 코드 카피를 통해 구현 하는 것을 많이 봐 왔습니다.
웹 애플리케이션에 대한 Ajax를 적용한다는건 제가 경험 하기로는 단순한 사용자 UI의 변경을 의미 하는건 아니였습니다.
Ajax 애플리케이션은 시스템 전체에 영향을 주며, 아키텍처적 변경 부터 구현 알고리즘까지 모든 개발 과정과 사고에 영향을 주는 막대한 작업 이였습니다.
그렇다고 Ajax를 구현하기가 심히 어렵거나 비용이 많이 들어가는건 아닙니다.
다만 모든 기술이 그렇듯 사용하기 위해 그 기술에 대한 깊은 이해를 바탕으로 이용을 해야 합니다. 그렇지 못한 경우 그 기술이 양날의 검이 되어서 내게로 다시 돌아와 돌이킬수 없는 큰 상처를 남기기도 하지요 그래서 다음과 같은 Ajax의 개론에 대한 강좌를 팀 블로거로 가져 와 봤습니다.
물론 개론적인 것이지만 실무적으로 또는 더 깊이가 있는 내용을 원한다면, 지금은 서적및 Ajax에 대한 자료들이 넘쳐나니 개인적으로 충분이 구하실수 있다고 생각하고 아래 내용만 올려 드립니다.




작성자
네오비스

금주 Microsoft는 ASP.NET에서의 AJAX 개발을 위한 프레임워크였던 Atlas를 ASP.NET AJAX라는 이름으로 변경하고, 그 베타버전을 출시하였다. 단순히 웹 개발을 위한 프레임워크의 출시로 볼 수 있지만, 새로운 변화를 준비하는 Microsoft의 웹 개발의 관점에서다시 한번 생각해 보도록 하자. Microsoft는 2007년 1월 Windows Vista와 Office의 새로운 버전을준비하고 있다. 더불어 윈도우 라이브 닷컴을 통해 인터넷 서비스 기업으로의 영역 확대를 시도하고 있다. 얼마 전 국내에서는 Microsoft DevDays2006 행사를통해 윈도우 라이브 닷컴 가젯(플러그인 또는 작은 응용 프로그램) 콘테스트의 시상식을 가졌다. 일반 개발자들을 대상으로 한콘테스트의 의미도 있지만, Microsoft는 전세계 웹 개발자들에게 윈도우 라이브 닷컴의 존재와 매시업(mash-up) 형태의개방된 가젯 구조를 지원하고 있다는 것을 알리는데 더 큰 의미를 두었을 것이다. 다른 나라 개발자들의 작품을 살펴보고 싶다면 윈도우 라이브 닷컴 가젯 갤러리를 한번 방문해 보자.

ASP.NET AJAX로의 프레임워크 이름을 변경하다.
이번 프레임워크에서의 표면적인 큰 변화는 바로 ASP.NET AJAX로의 이름 변경이다. 지금까지 Atlas라는 이름보다는 보다직관적인 이름을 사용하여 개발자들이 쉽게 프레임워크의 기능을 이해하도록 배려하였다. 진작 이런 이름을 사용하였으면 더 좋았을것이지만 지금이라도 이렇게 변경해주니 그나마 바른 선택이라 생각한다.

더불어 기존 Atlas CTP 버전을 통해제공하던 프레임워크의 기능을 크게 3가지로 나누어 배포하고 있다. ASP.NET AJAX Core에 해당하는 ASP.NETAJAX 1.0 Beta, 기존 CTP 버전에서 제공하였지만 Core에 포함되지 않은 부가기능에 해당하는 ASP.NET AJAXCTP, 마지막으로 공개적으로 개발되고 있는 다양한 컨트롤을 제공하는 ASP.NET AJAX Control Toolkit이 이에해당한다. 여기서 한가지 주목할 부분이 바로 Control Toolkit이다. 지금까지 Microsoft는 모든 개발 툴 및컴포넌트를 자사에서 개발하였다. 그러나 이번 ASP.NET AJAX Control Toolkit은 외부로 공개하여 다른개발자들도 참여할 수 있도록 유도하고 있다. 이전에 비해 사뭇 달라진 그들의 모습을 볼 수 있는 대목이라 생각된다. 국내개발자들도 프로젝트 사이트를 통해 참여할 수 있으니 한번 살펴보도록 하자.

개발자들에게 선택의 폭을 넓혀주는 ASP.NET AJAX
AJAX기반의 웹 페이지를 만든다는 것은 개발자들에게 있어 더 많은 코드작업을 요구한다고 이해하면 된다. 보다 멋진 화면을 위해비동기처리니 클라이언트에서의 자바스크립트 코드 작업에 지금도 고생하고 있는 그들이다. 그러나 ASP.NET AJAX는 기본적으로AJAX 기반의 웹 페이지 개발에 있어 서버상의 ASP.NET의 특징과 클라이언트의 스크립트 특징을 통합하여 제공하려는 목적이있다. 즉 ASP.NET 서버 사이드 개발과 함께 클라이언트 스크립팅을 통합하여 제공하고 있다. 대부분의 AJAX 기반의 웹개발이 클라이언트 또는 서버 중 하나에 집중되어 있는데 반해 ASP.NET AJAX는 개발자들이 사용하기 편한 방식을 선택하여응용 프로그램을 제어할 수 있도록 클라이언트/서버 모두를 위한 툴을 지원하고 있다.

그러므로 개발자들은 보다쉬운 코딩 방식을 선택하여 ASP.NET 기반의 AJAX 웹 페이지를 구축할 수 있는 것이다. 예를 들어 AJAX 서버 컨트롤을이용하면, ASP.NET 웹 페이지(*.aspx)에서의 어떠한 자바스크립트 코드 작업 없이 단순한 컨트롤의 추가만으로 페이지의일부가 렌더링되는 AJAX 스타일의 페이지를 만들 수가 있다. 바로 서버 컨트롤과 ASP.NET AJAX 프레임워크가 페이지실행을 위한 클라이언트 스크립트를 자동으로 만들어주기 때문에 가능한 코딩 방법인 것이다. AJAX 스타일의 웹 개발에서 큰문제로 대두되고 있는 개발 생산성 문제를 어느 정도 해결해 줄 것으로 기대되는 부분으로 가장 큰 매력이 될 것이다.

[그림 1] 서버 중심의 응용 프로그램 모델


[그림 2] 클라이언트 중심의 응용 프로그램 모델



Microsoft는 윈도우 라이브 닷컴에서 보듯이 서비스 시장으로의 확대를 준비하고 있다. 이런 준비와 함께 웹 개발자들을 위한 새로운프레임워크와 프로그램을 제공할 예정이다. 또한 그들이 제작하는 웹 페이지에 이런 기술들을 사용하여 개발자들에게 신뢰를 주고,개발자들에게 보다 쉬운 개발환경과 생산성을 제공하여 입지를 굳건히 하려고 노력하고 있다. 이와 함께 자신들과 동일한 개발플랫폼을 사용하는 사이트를 확대하기 위한 노력도 ASP.NET AJAX를 통해 알 수 있다. 

웹 2.0 시대로넘어오면서 PHP, Ruby 같은 언어들이 보다 더 많이 주목을 받고 있다. 국내 시장만 들여다보더라도 과히 PHP의 전성시대인것 같다. 서버 점유율로만 보더라도 이전에도 PHP가 국내 웹 개발 시장의 대세였다. 이런 국내 환경에서 Microsoft가지금까지의 부진을 만회할 수 있을지 앞으로의 행보가 궁금하다. 모든 개발은 주어진 환경과 상황에 맞게 그 플랫폼이 선택되고,구현되어야 한다고 필자는 믿고 있다. 잠시 자신의 개발 플랫폼 이외의 다른 개발 플랫폼을 들여다 보는 여유를 가져보는 것은어떻겠는가? 더불어 국내에서 보다 활발하게 웹 2.0스러운 사이트가 개발되기를 바라며, ASP.NET AJAX를 이용한 좋은사이트들이 많이 생겨 ASP.NET AJAX 공식 사이트에서 소개되기를 기대해본다.

'Sumer > .NET' 카테고리의 다른 글

훈스 닷넷에 올라온 asp.ajax 의 강의 내용  (0) 2008/09/18
변수  (1) 2008/03/31
Visual Studio 2005 sp1 설치시 디지털 서명 확인 오류  (0) 2008/03/26
Visual Studio 2005 sp1 설치 시간 단축하기  (0) 2008/03/26
닷넷의 형  (3) 2008/02/15
Trackback 0 Comment 0
2008/09/05 02:24

녹색 성장과 소프트웨어

녹색 성장과 소프트웨어


마전의 우리 정부는 연 7% 의 고속 성장 목표에서 환경을 생각하는 녹색성장 정책으로 국가의 정책을 변경하였습니다.

녹색성장이란 저탄소 산업을 육성하여 경제와 산업 성장에 있어서 탄소 연료 소비를 최소화하고 이산화 탄소 등 환경 공해 물질을 억제하여 지구를 환경 파괴로 부터 지키기 위한 산업 성장을 말합니다.

물론 현 정부가 녹색성장의 동력으로 원자력에 의존하는 부분 등 미숙한 부분도 있지만, 심각한 수준에 있는 지구의 환경 파괴 상태를 본다면, 정말 기쁘고 반가운 소식이 아닐 수 없습니다.

TV,인터넷, 라디오, 신문, 잡지, 영화 등 모든 미디어들은 현재의 지구 상태를 매우 심각한 상태로 보고 하며, 우리에게 경고를 주고 있습니다.

하바드, 캠브리지 등 세계의 대학과 그곳의 석학들도 우리에게 심각하게 경고합니다.

하지만 아직 아무도 지구 환경에 대한 긍정적인 영향을 소프트웨어가 큰 부분에 있어 작용한다는 것에 대해서 이야기하지 않는 것 같습니다.

물론 제가 업으로 삼고 있는 것이 소프트웨어 개발이라 좁은 관점에서 사고한 이론인지 모르겠습니다.

하지만 지구의 심각한 문제가 인류가 그동안 사용한 화석 연료로 인한 것이였다면, 현 위기를 벗어날 길은 소프트웨어의 극단적 사용이라고 생각합니다.


류는 산업 혁명 이후 양적 성장과 크기의 확장에만 매달려 왔습니다. 더 많이, 그리고 더 빠르고, 더 높고, 더 무겁고, 더 크고 등 팽창 위주의 성장이였습니다.

아인슈타인의 진리적 이론인 E=MC^2 에 따르면 질량이 무거우면 에너지의 양이 크다, 즉 인류가 그동한 추구한 확장적 성장에 따라 계속 발전한다면 점점 사용하는 에너지의 양은 늘어나며, 지구의 파괴는 더욱 빨리 질 것입니다.

결국 우리는 지금까지의 관습을 모두 버리고 더욱 작고, 더욱 느리고, 더욱 가벼운 축소의 성장을 이루어야 지금의 위기에서 벗어 날 수 있을 것입니다.

축소의 성장에는 너무나 많은 난관이 있습니다. 크게 만드는 것 보다 작게 만드는 것은 너무나 많은 노력이 들어 갑니다. 또 한 물리적으로 사물을 축소한다는 것은 한계가 있습니다.

자동차를 생각해보십시오. 가끔 모토 쇼에 1인승 미래 자동차가 나옵니다. 실제 오토바이 크기 만큼 작은 차들이지요. 그럼 자동차를 그이상 작게 만들려면 가능할까요?

사람도 타야 하고, 엔지도 있어야 하고, 짐도 실어야 하니까 아마 힘들것 같습니다.

그럼 어떻게 탈것을 더욱 축소 시키면서 발전 시킬 수 있을까요?

여기서 우리는 확장적성장의 패러다임을 버려야 합니다. 자동차를 가볍고 작게 만들것이 아니라 자동차의 목적인 이동을 작고 가볍게 만들어야 한다는 생각을 해야 합니다.


10년 사이에 홈쇼핑, 인터넷 쇼핑이 몇 백배 성장하며, 우리의 생활 양식마저 바꿔 놓고 있습니다.

모든게 It기술과 소프트웨어의 눈부신 발전 때문이지요. 그런데 그런점 생각해보셨습니까? 홈쇼핑과 인터넷 쇼핑 때문에 차량 운행량이 얼마나 줄었을까?

과거 홈쇼핑, 인터넷 쇼핑이 아예 없던 시절 우리는 물건을 사기 위해 시장이나, 백화점 등 물건을 판매하는 곳까지 직접 이동하여야 했습니다.

심지어 지역 특삼물이나, 특별한 물건을 사기 위해 몇십 몇백 킬로미터를 이동해야 할때도 있었습니다.

하지만 지금은 어떻습니까? 저의집에서 제주도의 옥돔을 구매할 수 있습니다.

얼마 전에는 수천 킬로미터가 떨어진 미국의 상점에서 책을 주문 했습니다.

만약 그 책을 사기 위해 비행기를 타고 차를 타고 직접 이동했다면 어마어마한 에너지를 사용하여 그 책을 구매한 것이 될 것입니다.

위에서 말한 아인슈타인의 E=MC^2의 법칙으로 생각 해보면 제가 몸무게가 90kg 정도나가고, 위 법칙에 적용받을 수 있는 속도로 이동한다면 에너지의 양은 음....상상을 초월 하는 (참고로 답을 구할 수 있는 분은 구해 보세요 공식은 : E = 90 kg * (3 * 10^8 m/s) ^2) 에너지 양이 나옵니다.

그럼 집에서 그 책을 인터넷을 통해 구매했다고 한다면, 실제 이동한 것은 저희 집에서 미국의 그 상점의 서버까지 연결된 라인을 통해 이동한 전자들 뿐 일 것입니다. 물론 초당 몇 MB 이상씩 이동을 시켜겠지만, 전자의 개당 무게는1 kg * (3 * 10^8 m/s) ^2 이 정도이니 아무리 수많은 전자를 이동시켜 이용했다고 하더라도 사용에너지의 양은 비교가 되지 않습니다.

물론 지금의 말은 검증된 것도 아니고 또 현실적이지도 않습니다. 단순히 아인슈타인의 E=MC^2 이라는 이론을 이용하여 극단적으로 이야기 한 것 뿐입니다.

하지만 우리는 소프트웨어를 사용하므로 기존에 비효율적이었고 낭비의 요소가 많았던 이동을 개선한 것은 사실입니다.

우리 주변에는 이런 것 뿐 아니라 소프트웨어를 이용하여 에너지를 훨씬 작게 사용하여 기존의 방식과 동일한 효과를 보는 일들이 많을 것입니다.


구가 위기에 처해진 것은 분명한 사실 인 것 같습니다. 작년에 충격적이었던 엘고어의 “불편한 진실” 이라는 영화가 생각납니다.

우리에게 불편한 진실이지만, 진실은 진실 입니다. 인류 모두가 힘을 모아 지금의 위기를 슬기롭게 해결 해야 합니다.

여기에 소프트웨어 개발을 담당하고 있는 우리도 역시 동참하여 우리의 힘으로 지구를 구할 수 있는 길을 연구하고 고민하여 위기에 처한 지구를 구하는 일에 힘을 보태어야 할 것 입니다.

'Sumer' 카테고리의 다른 글

녹색 성장과 소프트웨어  (0) 2008/09/05
개발자가 비행기 만드는 법  (1) 2008/08/28
MS SQL 의 데이터에 대한 대소문자 구분  (0) 2008/07/25
Trackback 0 Comment 0
2008/08/28 09:53

개발자가 비행기 만드는 법


ㅋㅋ 200% 동감

'Sumer' 카테고리의 다른 글

녹색 성장과 소프트웨어  (0) 2008/09/05
개발자가 비행기 만드는 법  (1) 2008/08/28
MS SQL 의 데이터에 대한 대소문자 구분  (0) 2008/07/25
Trackback 0 Comment 1