Outsider's Dev Story

Stay Hungry. Stay Foolish. Don't Be Satisfied.
RetroTech 팟캐스트 44BITS 팟캐스트

웹표준에 대한 개인적인 생각들....

블로고스피어를 보니까 구글크롬의 등장으로 웹표준에 대한 부분이 살짝 또 이슈가 된 것 같다. 흠.. 포스팅 생각이 좀 있긴 했지만 생각난 김에... 별 내용은 아니지만....


일단 난 코더는 아니고 개발자이다. 즉 퍼블리싱 작업이 주업무가 아니라는 얘기이다. 하지만 개발을 1년정도 하면서 난 열렬한 웹표준 옹호론자가 되었다. 현실을 무시하자는게 아니다. IE가 70%대로 점유율이 추락했다지만 국내에서는 아무리 적~~~게 쳐준다고 해도 95%이상이다. 하지만 현실과 약간 괴리감이 있더라도... 노력한다고 해도 완전한 웹표준 구현은 현실상 쉽지 않다는 점을 감안하더라도 웹표준 준수를 위해서 노력해야 한다고 믿는 사람중에 하나이다.

웹표준에 대해서 포스팅된 글들을 많이 보는 편인데 웹표준하면 기본적으로 생각할 수 있는 table로 레이아웃 잡는게 아닌 div+css조합이 있다. 그리고 보통 얘기를 하면 이 방법이 더 쉽다고 얘기를 하는 글을 많이 본다. 그런 얘기를 하는 사람들이 어떤 의도인지는 어느정도 이해하지만 이건 좀 잘못된 얘기가 아닌가 싶다.





어떻게 테이블보다 쉬울수가 있는가.. 이건 말도 안되는 얘기다. div+css사용이 더 쉽다는 말 보다는 더 좋다는 말이 더 어울리지 않는가 하는 생각이 든다. 일단 둘이 목표하는 바 자체가 완전히 다르다. 테이블로 레이아웃을 잡으면 소위말해 줄간격 맞추기위해서 8px짜리 공백 이미지까지도 잘라져 맞춰낸다. 테이블안에 테이블넣는 식을 계속 반복하면 인쇄물 찍어내듯이 그 페이지만 원하는대로 찍어내는 것이 목표이다. 그외에는 아무것도 생각안한다. 하지만 div+css방식은 좀 다르다. 이건 훨씬 유연하고 css를 여러페이지에서 공통적으로 사용하고 수정작업이 생겼을때 훨씬 간단한 작업으로 할 수 있다.

테이블 방식이 만들어내는 데만 초점이 있다면 div+css방식은 유지보수, 재사용성까지도 생각하고 있고 웹표준의 개념에 따라 더 나아간다면 구조와 표현의 분리, 의미를 가진 구조를 통한 시맨틱에 대한 기반, 웹접근성 확보, 크로스브라우징 까지 생각하고 있다. 둘의 목표가 완전히 다르다는 얘기다. 그럼 이 많은 이점을 다 얻을수 있으면서 만들기는 훨씬 쉽다?????

그런건 말도 안된다. div+css는 솔직히 말해서 테이블처럼 html태그 좀 이해한다고 원하는 대로 찍어낼 수 있는 것도 아니고 레이아웃좀 잡을라치면 IE의 박스모델이 발광을하고 이미지를 한 5px만 움직였으면 좋겠는데 그거할라니까 통째로 왔다갔다 하고 처음에 하면 죽을맛이다. 그 많은 장점을 얻기 위해서 노력이 필요하다는 얘기다.

개발얘기에 비유하자면 왜 우리는 ASP에서 처럼 각 페이지에서 DB커넥션 다 만들어서 쿼리날리고 결과값받아와서 하지 않는가? 그렇게 만들면 얼마나 직관적인데... 다른 파일 찾아볼 필요도 없고 특별히 구조를 공부하거나 어떤식으로 클래스를 만들고 어떻게 구조화할까 고민하지 않아도 됐다. 그런데 왜 우린 클래스를 만들고 MVC를 하고 상속을 하고 그러는가... 쉬워서??? 그럴리가 없다... 이게 더 좋기때문이다...(모든 상황에서 다 좋다는건 아니고....)





웹표준을 반드시 지키자라고 얘기하는건 아니다. 현실적인 어려움은 분명히 존재하니까.... 하지만 기술의 흐름이란 건 매우 중요하다고 생각하고 소비자에서는 모르겠지만 시장에서는 분명히 수요가 생기고 있다. 할 줄 아는데 상황에 따라서 적용하는 거랑 할줄 몰라서 하던 방식만 고집하는 것 하고는 얘기가 다르다. (원래 무슨 목적으로 쓸라고 그랬드라? 다같이 웹표준을 지키자!!라고 말할라던건 아니었는데... ㅡ..ㅡ)

위에도 말했듯이 웹표준은 상당히 어렵다. 일단 개념자체도 어렵고 웹표준을 W3G 유효성체크를 기준이라고 할 수도 없고 의미적 네이밍, 접근성, 크로스브라우징 등등... 아직 다 정립되지도 않았고 갈길이 멀다... 하지만 난 웹표준이 웹이 더 쾌적하게 발전하는데 중요한 밑거름이라고 믿기 때문에 최대한 웹표준을 따르려고 한다. 웹2.0을 넘어서 시맨틱으로 가기위한 준비작업이라면 좀 거창한가? 불과 5년 전만해도 웹으로 이 많은 것을 할 수 있을꺼라고는 생각도 못하고 있었는데 웹사이트가 단순히 표현만을 위한 테이블레이아웃이 아닌 의미를 가진 구조적인 모습을 가지게 로봇들이 분석을 통해 더 많은 정보를 얻어갈 수 있다면 앞으로 다시 5년뒤에는 또 얼마나 재미난 것들을 이용할 수 있게 될까.... 하는 기대감 정도?

그냥 이용자라면 모르겠지만 웹개발을 하는 입장에서 그런 웹의 방향에 대해서 더 빨리 발전할 수 있도록 미약하나마 도울수 있다면 그정도 노력정도야..... 머 한편으론 table의 태그짝도 맞지 않는 html소스에다 작업을 하는게 너무 짜증나서 그런부분도 없잖아 있다고 생각은 한다. 드림위버에 완젼 의존해서 드림위버없으면 간단한 페이지도 못찍어내고 드림위버가 이미지에 width, height를 다 주어서 이미지 바뀌면 늘어나고 줄어들어서 일일이 다 찾아가서 크기 바꿔주고 하는것도 왕짜증이고...... 무엇보다 서버작업이든 뭐든 웹의 최종결과물인 html이 아무나 할 수 있는(공부안하고도 할 수 있는...) 별 것도 아닌 것으로 취급받는 것이 제일 싫다!!!






덧) 얘기가 완전히 산으로 가긴 했지만 그냥 머 그렇다는 말... ㅋㅋ
최근에 리뉴얼하느라고 html작업도 좀 많이 했고 어제 한밤중에 갑자기 html페이지 좀 찍어내 달라는 알바가 들어와서 밤샘 작업하고 환급받겠다고 학원에 왔더니만 실버라이트는 안가르쳐주고 닷넷개발자들이(난 자바개발자 ㅜ..ㅜ) 자바스크립트를 거의 몰라서 수업이 갑자기 Ajax개론으로 바뀌어서 좀 맛간 상태에서 정신없이 포스팅중.... (그나저나 쉽게 수락했는데 페이지 12개 찍어내는데 10시간이나 걸리다니... 시간정해놓고 제대로 찍어내 본적은 없지만 내 예상보다 작업시간이 훨 넘어가버린.. ㅡ..ㅡ)

덧2) 그나저나 나한테도 아직 그런 마인드가 맘속에 있었나보다. 테이블작업이 더 빠르다는 생각.... 호환성을 유지하는게 아니라서 테이블작업이 더 빠를것도 전혀 없었는데 급하다는 말에 그렇게 대답을 해버렸다. 실제 작업은 div+css로 했지만.... 이렇게 하길 잘했지.. 테이블로 했으면 포토샵으로 이미지 잘라내는데 시간이 더 걸렸을지도... 아~ 졸려~~

2008/09/06 17:39 2008/09/06 17:39