유닛테이블 – 02.페이지툴의 필요성

PHP 코드와 HTML 태그를 분리하면???

서버사이드 스크립트로 작성된 소스코드를 보면 스크립트 문장하고 HTML 태그가 혼재되어 있어 매우 혼란스럽기도 하며, 또한 도무지 전체 흐름이 파악하기가 쉽지 않습니다. 그 외에도 웹사이트가 복잡해 지다보면 이러한 방식으로는 관리하기도 어렵고, 향후 홈페이지를 수정하는 작업도 보통문제가 아니라고 생각하였습니다.

그래서 서버사이드 스크립트에서 작업한 PHP 코드와 방문자 인터페이스를 담당하게 될 HTML 태그를 분리하면 이러한 문제를 다소나마 해결할 수 있을 것으로 판단되어 “PHP코드와 HTML태그의 분리” 방법으로 템플릿과 레이아웃 기술을 제 홈페이지에 적용하기 시작했고, 적용하기 전에 템플릿과 레이아웃 기술을 구현할 수 있는 툴을 개발하게 되었죠.

개발하기 전에 “FastTemplate”와 같은 좋은(?) 툴이 있다는 것을 알았다면 개발을 좀 더 쉽게 할 수도 있었을 텐데, 그러지 못해 좀 투박한 상태로 사용해 오다가 보름 전부터 “FastTemplate”와 “VH layout”을 참조하여 유닛테이블의 인터페이스 부분을 대폭 수정하였고, 이제 여러분과 정보를 공유하고자 유닛테이블의 소스코드를 공개합니다.

템플릿툴 또는 레이아웃툴을 사용하여 얻게 되는 이점을 보면 우선 개발속도를 높일 수 있고, 소스 코드의 가독성을 높일 수 있으며, 웹사이트 전체에 걸쳐 반복되는 부분을 재 사용할 수 있어 툴에 따라서는 사용자가 직접 작성해야 할 코드의 양을 상당히 줄일 수 있고, 아울러 관리 및 향후 수정을 용이하게 해줍니다.

장점이 있으면 단점도 있겠지요. 새로운 기술을 적용하다보니 처음 보는 사람은 오히려 복잡해 보입니다. 이해하기도 어렵고요. 또한 스크립트 수행속도가 느려집니다. 그러나 뒤에서 언급될 각 페이지툴에 대한 예제를 실행해보면 알겠지만 인터넷상에서는 페이지툴을 사용할 때나 안 할 때나 속도차이를 별로 느낄 수 없습니다. 이는 서버의 수행속도보다 네트워크의 전송속도가 훨씬 느리기 때문이죠. 페이지툴을 사용한다고 해서 전송되는 데이터 양이 늘어나는 것은 아니며, 단지 서버에서 처리해야 할 데이터 양이 많아지는 것입니다.

어쨌든 페이지툴을 적용하면 단점도 따르기 때문에 모든 페이지에 페이지툴을 적용하기보다는 간단한 개인 홈페이지는 기존에 하던 대로 “HTML 태그 내에 PHP 코드를 삽입하는 방식”을 사용하는 것이 효율적일 수도 있을 겁니다. 반면에 대부분의 상용 홈페이지와 같이 레이아웃 또는 디자인 구조가 다소 복잡한 코드에서는 가능한 한 페이지툴을 적용할 필요가 있을 것 같습니다.

즉, 좀더 정돈된 페이지를 구성하기 위해서는 레이아웃을 위해 TABLE 태그를 여러 층으로 중첩하여 사용하게 되는데, 이렇게 다층으로 구성된 페이지에서 시작 태그와 종료태그 짝을 실수하지 않고 맞추기가 쉽지 않고 전체의 구조를 한 눈에 파악하기도 쉽지 않죠. 또한 웹사이트 내에 있는 여러 페이지의 일부분을 동일한 형태(레이아웃 또는 데이터)로 반복되는 부분이 많을 경우 매 페이지마다 동일한 부분을 매번 별도로 작성한다는 것은 문서를 작성하기도 불편하고 관리하기도 쉽지 않습니다.

답글 남기기