function startMethod() { Event.observe("gu","change",function() {
createXHR();
var url = "http://127.0.0.1:8080/ajaxTest2/DynamicList?"+getParameterValues(); xhrObject.onreadystatechange = resultProcess(); xhrObject.open("Get",url,"true"); xhrObject.send(null);
}); } 이런 소스가 있다고 치고 디버깅을 해보자.
. . .
캐막막하다;
그래서 나만의 노가다 디버깅 방법. 바로 alert("하하");
-_-... 암튼.. Event.observe부분이 이벤트 처리 구문이니깐, 그부분에서 이제 한줄 한줄씩 삽입을 해보는 것이다. 그러다보면 결국 xhrObject.onreadystatechange = resultProcess(); 이거 아래서 안되는 걸 알 수 있고.. resultProcess()가 아니라 resultProcess인걸.. 알 수 있다.
이런 노가다 디버깅;; 흠... 아직 초보라.. 더 편한 기술이 분명 있을터인데... ㅜㅜ 덧, Googlipse 이거 개발도 안되는거 같은데 이 책에선 이걸로 설명하고 있다 아놔; 최신버전 이클립스에선 버그 투성인데..
그런데 우연히 발견한 이클립스 사이트에서의 ajax 툴인가?... 이건 써보고.. 또 포스팅하것다;;
프로젝트상에서, 오른쪽 클릭하고,[Run As]→[Run...](을)를 선택합니다.
표시된 설정 화면에서,[Gwt Hosted Mode Application]를 선택하고, 오른쪽 클릭해,[New]를 선택합니다.
아래와 같은 에러 메세지가 표시되고, 설정할 수 없습니다.
An error has occurred. See error log for more details.
com.googlipse.gwt.launch.MainTab.createMainTypeEditor(Lorg/eclipse/swt/widgets/Composite;Ljava/lang/String;[Lorg/eclipse/swt/widgets/Button;)V
Eclipse 3.3의 환경을 포기해Eclipse 3.2으로 하면 이 문제는 발생하지 않았습니다.
약 4시간여에 걸친 첫 아작스의 경험이었다. 무엇보다 DOM구조가 기본이 된다는 점과 생각지도 못한 prototype.js를 이용한 자바스크립트의 클래스 비스무리한(거의 같다.) 구조(물론 코딩은 다르다.) 덧, 리치 클라이언트 개발이 가능하다니.. 생각보다 아작스에게는 다양한 기능들이 존재하는 것 같다.
그러나 아쉬운건(이건 개인적인것) 시간분배를 잘 못해가지고 오늘 하루종일 한게 아작스 공부밖에 없다. DB설계 관련해서도 공부해야 하는데…
신기술이란 끊임없이 발전하고, 개발하는 자가 있는가 하면 사용하는 자가 있기 마련이다. 그런 종속 관계에서 무한히 발전하는 것이 기술이라는 게 아닐까 싶다.
2006년, 마지막으로 Direct 3D 9+VS2005로 게임을 개발하고(그것도 100% 개발한 것도 아니다.) STL에 대해 찔끔 공부하다가 아마 나는 "사업을 명분으로 프로그래머는 접겠다." 라는 이야기를 했었고, 결국 이도 저도 아닌 지금은 듣보잡에 불과한 2년정도를 보내게 된 것이다. 사업도 마케팅도 다 좋지만 내가 정말 하면서 제일 재미있다고 생각한 것을 가만히 생각해 보니 역시나 프로그래밍이었다.. 사업? 쉽게 할 수 없다. 마케팅? 이건 기술이 아니다.. 나는 기술이 필요하고, 기술을 알아갈 때마다 희열을 느낀다. 콘솔 프로그래머로써 중학교 시절을 보낼 때는 지겨웠다. 그놈의 알고리즘이 뭐길래.. 그러다 DX를 접하고 나서 얼마나 재미있었던지.. 그러면서 프로그래밍에 대한 여러가지 테크닉을 접할 때마다 나는 정말 즐거웠다. 시간가는 것을 전혀 몰랐다. 그 어떤 내가 관심있어 하는 분야도, 피아노도 음악도 나를 이렇게 만들어 놓지는 못했다.
본론으로 들어가서, 그래서 지금 한달 넘게 여러 프로그래밍 언어 및 테크닉들을 접해보고 있다. 학원도 다니고, 개인적으로 공부도 하면서. Visual Studio가 벌써 2008이 나왔더라.. VS 2005를 별로 써보지도 못했는데 2008이 한글판까지 나왔다. 그럼 내가 가장 애용하던 6.0은 이제 완전 듣보잡이 된 것인가..
그래서 VS2008에서 제공하는 언어들과 기술들을 중점으로 보고 있었다. 그러면서 내가 정말 놀라지 않을 수 없던 것은...
WPF? Silverlight? LINQ? 뭐야 이런 것들? 사실 나는 C#도 제대로 본적도 없다. 내가 아는 것은 C와 씨쁠, MFC API Direct X, jsp,php,java정도가 다이다. 그런데 지금은 신기술이 너무나도 많아졋다. 에자일? 루비? 뭐지...
사실 오피스 2007까지는 내가 빨리 접했었다. 그런데 오피스 2007을 수없이 쓰면서도 몰랐던 것, VS 2008에서 오피스를 프로그래밍 할 수 있다는 것이다.. 물론 아직 자세한 것은 모르지만 다양한 컴포넌트를 개발할 수 있지 않을까? 아직 어느정도까지 개발이 가능한지는 모르지만.. 살짝 보았는데 상당히 구조적이라 쉽게 개발할 수 있을 것처럼 보였다.
그나저나.. 오피스 2007 시스템은 왜이리 복잡해 졌다냐.. 장난 없다. 쪼개져도 나는 이렇게까지 쪼개질 줄은 몰랐다.. 아무리 유저의 커스터마이징을 고려해서 판매한다고 하지만 이건 아무리봐도 거의 장난 급으로밖에 보이지 않는다.. 아니면 자신들의 기술에 따른 철저한 마케팅적인 제품 세분화인가.. 아무리 그래도 너무 복잡하다..
사실 이클립스를 볼 때만 해도 자바 이외에 엄청나게 다양한 언어들이 돌아간다는 사실에, 게다가 이클립스가 무료라는 사실에 정말 놀랐었다. 그런데 이 웹 프로그래밍의 세계도 엄청나게 바뀌고 있었다. AJAX니 Flex니 Silverlight와 jsp2.0 등등.. 정말 손뗀 지난 2년 동안 이 세계는 달라져도 너무 달라져 있었다. 너무나도..
하지만 분명한 것은, 확실히 예전에 "내가 알고 있고 고급 기술이다" 라고 싶은 것은 이제 기본적인 것들로 변해 있다는 것이다. 거기에 신기술의 엄청난 발전과 Web 2.0의 발전(구지 웹2.0으로 묶고 싶지도 않다. 웹 뿐만 아니라 이미 실생활에 웹 2.0의 개념이 속속히 들어오고 있다.) 이러한 요소들이 지금 이 프로그래밍 세계를 무궁무진하게 만들고 있다.
그렇게 보니깐 언젠가 친구가 내게 해준 말이 생각난다. 내가 "요즘 프로그래머에게 유망한 언어는 무었이냐?" 라고 물었을 때 "요즘엔 다재다방면으로 많이 알아야 살아남는 세상이다." 라고 답변해 줬는데 이 말이 틀린 것이 아니라는 게 실감난다..
중요한 것은 다양한 방면으로 아는 것도 중요하지만 어떻게 되었든 프로그래밍 세계는 세분화 되고 다양화 되었어도 분명 주요 카테고리들은 남아 있다. 점차적으로 통합 플렛폼을 강조해 나가며 조금씩 이에 따른 신기술들이 나오고 있긴 하지만 내게 맞고, 내가 나아가고 싶어 하는 그런 카테고리를 확실히 정해야 한다는 것이다. 거기에 부가적으로 친구가 언급한 다재다방면을 언급할 자격이 되지 않을까 싶다.
그래서 나는 지금 개인 홈페이지를 만들고 있다. 나의 이 프로그래밍&디자인&피아노 의 시작인 홈페이지, 거기서 나는 답을 찾을 것이다. 분명 이전에 내가 해왔던 것처럼, 꾸준히 나의 개인홈페이지들을 제작하면서 php를 접하고 asp를 접하고 jsp를 접하면서 성장해 온 것처럼, 거기에는 분명 나에게 맞는 길이 기다리고 있을 것이다. 그 길을 찾기 위해 앞으로도 끝없이 나의 온갖 열정을 이곳에 쏟아야 할 필요가 있는 것이다.... 뭐 이렇게 생각해 보아도 내게 맞는 건 웹이나 DB쪽이라 생각하긴 하지만 말이다.. ㅎㅎ
댓글을 달아 주세요