HTML5가 웹 세계를 바꿀 것인가?
2010년 상반기에 일어난 큰 사건으로 인해 많은 사람들이 HTML5의 존재를 처음 알게 되었고 많은 사람들의 관심을 끌었습니다. HTML5를 처음 접하는 사람들은 매우 놀랄 수도 있습니다. HTML5 사양은 이미 6년 전에 공식화되었지만 HTML5의 초안 사양은 이미 매우 훌륭하지만 실제로 표준이 될지는 여전히 불확실합니다.
실제로 HTML5 사양 개발 위원회의 작업은 매우 느리게 진행되고 있습니다. 브라우저를 개선하고 웹 세계를 개선하는 방법에 대해 브라우저 공급업체 및 기타 업체로부터 너무 많은 아이디어가 있기 때문에 이러한 아이디어를 HTML5 사양에 통합하고 합의하는 데 시간이 걸립니다. 일부 브라우저에서는 많은 새로운 태그와 JavaScript 기능이 실험되었지만 상호 운용성 및 표준화 문제는 아직 해결되지 않았습니다. 예를 들어 Apple의 HTML5 데모는 인상적이지만 Safari에서만 잘 작동합니다. 이것이 바로 플래시 지지자들이 HTML5가 웹을 2000년의 브라우저 전쟁으로 되돌린다고 비웃는 이유입니다.
이런 조롱이 HTML5 지지자들을 슬프게 할 수도 있고, 오랜 기다림이 참으로 힘들더라도 HTML5를 무시하는 것은 잘못된 것입니다. 왜냐하면 HTML5 뒤에는 업계 거대 기업의 홍보뿐만 아니라 더 중요하게는 IT 기술 발전에 있어 표준화는 피할 수 없는 추세이기 때문입니다. 소프트웨어에 있어서는 브라우저든 관련 개발 도구든 계속해서 주변의 다양한 기술을 흡수해 표준화하게 되는 것이 기술 발전의 필연적 법칙이다.
확실히 HTML5는 인터넷의 모든 측면을 변화시킬 것입니다. 물론 Flash를 완전히 대체하지는 못하겠지만 HTML5는 브라우저가 플러그인의 도움 없이 위치 추적부터 데이터는 클라우드에 저장됩니다. HTML5 태그는 더 간단한 작업을 수행하는 플러그인을 대체하며 적어도 어느 정도는 더 많은 사용자를 위한 고급 기능을 개발할 수 있습니다. 궁극적으로 이는 인터넷을 더욱 안전하고 효율적이며 유연하게 만들 수 있습니다.
그럼 새로운 표준이 될 HTML5는 우리를 어디로 데려갈까요? 다음은 HTML5가 인터넷을 어떻게 변화시키고 있는지 배울 수 있는 개발자, 프로그래머, 디자이너의 의견입니다.
플러그인 중요성 감소
과거 웹 세계는 혁신적인 아이디어와 대담한 실험을 장려하고 사운드, 애니메이션 및 기타 매우 생생한 웹 페이지가 Sun, Adobe, RealAudio, Microsoft 등을 통해 개발되었기 때문에 브라우저 플러그인을 매우 환영했습니다. 개발된 플러그인은 처음으로 인터넷에 공개되었을 때 정말 신선했습니다. 그러나 곧 문제가 발생했습니다. 플러그인 인터페이스는 모든 사람에게 공개되었으며 모든 사람이 기존의 텍스트 기반 세계에 새로운 기능을 추가하려고 했습니다. 가장 유명한 플러그인은 Flash이며, 다른 유사한 플러그인도 셀 수 없이 많습니다.
다양한 이유로 Apple은 Adobe의 Flash가 자체 플랫폼에서 실행되는 것을 금지합니다. 이로 인해 대다수의 Apple 팬이 Apple 플랫폼에서 Flash를 볼 수 없게 되므로 상대적으로 폐쇄적인 개발 시스템에서는 이러한 충돌이 더 이상 발생하지 않게 됩니다. 단계적으로 폐지됨: JavaFX는 정말 강력할 수 있지만 JavaScript와 Canvas 객체가 동일한 작업을 수행할 수 있는데 왜 다른 구문을 배워야 합니까? 비디오 태그가 오디오와 비디오를 동기화할 수 있다면 Real의 생태계가 필요한 사람은 누구입니까?
그렇다면 정말 모든 플러그인이 사라질까요? 그럴 수도 있지만, 무엇을 하고 싶은지에 따라 다릅니다. 목표가 단지 이미지를 그리는 것이라면 Canvas 객체로 충분할 수 있습니다. 그러나 복잡한 Flash 및 Shockwave 게임에서 볼 수 있듯이 전문적인 3D 세계를 구축하려면 독점 플러그인 기술에 의존해야 할 수도 있습니다. 이러한 플러그인 기술은 비디오 하드웨어에 직접 액세스하여 3D 게임을 실행할 수 있기 때문입니다. .
동적으로 생성된 이미지 지원
예전에는 웹페이지에 표시되는 이미지가 직접 다운로드한 GIF나 JPG 이미지에서 나왔지만, HTML5에서는 이미지 파일에서 직접 이미지를 가져오지 않고 Canvas(캔버스) 객체에 의해 일시적으로 생성되는 경우가 있습니다. 아주 좋은 그래픽 라이브러리가 인터넷에 많이 등장했으며 이러한 그래픽 라이브러리가 있으면 이미지를 동적으로 생성하는 것이 더 쉬워졌습니다.
오늘날 JavaScript 레이어는 데이터를 기반으로 계산을 수행한 다음 그래픽을 그릴 수 있습니다. 소프트웨어 개발자에게 충분한 시간과 재능이 있다면 인터넷의 모든 것을 더욱 생생하게 만들고 일반 텍스트 콘텐츠의 양을 줄일 수 있습니다. Flash는 시작에 불과하며 HTML5 환경을 통해 웹 개발자는 복잡한 이미지를 보다 쉽게 개발할 수 있습니다. 일부 유사한 도구가 시장에 등장하여 웹 개발자의 이미지 제어 능력을 더욱 향상시키고 도구가 성숙해짐에 따라 개발자는 점점 더 전문적이고 복잡한 그래픽을 개발하게 될 것입니다.
여기서 가능한 문제 중 하나는 이러한 종류의 이미지 처리가 클라이언트 프로세서 처리 기능에 대한 특정 요구 사항과 같이 클라이언트 프로세서에 많은 부담을 줄 수 있다는 것입니다. 과거에는 일부 개발자가 Flash 플러그인을 전혀 사용하지 않았습니다. Flash 컨텐츠를 렌더링하고 표시하는 것이 프로세서에 많은 부담을 주고 사용자의 최종 경험에 큰 영향을 미칠 수 있었기 때문입니다. 이는 미래에는 문제가 되지 않으며 개발자는 성능에 영향을 미칠까 봐 사용자의 생생한 그래픽을 거부해서는 안 되지만 타협을 해야 합니다. Flash가 성능에 미치는 영향에 대해 불평하는 사람은 누구나 Flash가 기술 자체와는 아무런 관련이 없다는 사실을 알아야 합니다. 문제는 디자이너가 우리의 관심을 끌기 위해 Flash를 너무 많이 사용한다는 것입니다.
웹 프로그램이 로컬 저장소를 활용하도록 허용
웹 프로그래머는 실제로 브라우저의 로컬 저장 공간을 사용하여 많은 정보를 저장할 수 있었습니다. 예를 들어 IE는 최대 300개의 쿠키를 허용하고 최대 4096바이트의 콘텐츠를 저장합니다. 그러나 정말 유용한 웹 프로그램을 개발하려면 이보다 더 많은 저장 공간이 필요할 수 있습니다. 예를 들어 이전 Dojo 툴킷에서는 Flash 플러그인을 사용하여 사용자 하드 드라이브 공간의 일부를 할당하고 브라우저가 사용할 수 있도록 남겨두었지만 이제는 HTML5를 사용하여 매우 간단하고 동일한 목적을 달성할 수 있습니다.
프로그래머는 클라우드 서비스 애플리케이션 및 데이터를 로컬 하드 드라이브에 저장하는 등 필요에 따라 이 스토리지 부분을 사용할 수 있습니다. 또한 이는 클라우드 애플리케이션의 제공, 설치 및 배포를 기존 애플리케이션과 매우 유사하게 만듭니다. 예를 들어, HTML5 애플리케이션의 JavaScript 코드는 이전에 서버에서 다운로드되었고, 코드의 이 부분은 로컬에 저장되기 때문에 클라우드 애플리케이션은 인터넷 연결 여부에 관계없이 평소처럼 실행될 수 있습니다.
물론 이 기술의 적용은 클라우드 애플리케이션의 인기에 영향을 미치지 않습니다. 왜냐하면 현재의 운영 모드가 과거와 매우 다르고 로컬 데이터베이스가 실제로 지능형 캐싱 역할을 하기 때문입니다. 또한 게임 개발자는 일부 상황 정보와 장비 정보를 로컬에 저장할 수 있어 컴퓨터가 연결될 때마다 이 정보를 다운로드할 필요가 없고 데이터 다운로드 시간을 절약할 수 있습니다. 단점은 이러한 데이터베이스가 시스템 폴더에 깊이 묻혀 있어 데이터 백업이 매우 복잡해진다는 것입니다. 사용자가 한 시스템에서 다른 시스템으로 데이터를 마이그레이션하려는 경우 데이터 마이그레이션 작업이 더 복잡해질 수 있습니다.
아마도 하이브리드 클라우드의 등장이 이 문제를 해결할 수도 있을 것입니다. 하이브리드 클라우드를 사용하면 데이터를 클라우드와 로컬에 모두 저장할 수 있지만 로컬 컴퓨터에서는 데이터만 캐시하고 최종 버전은 클라우드에 저장되므로 모든 컴퓨터에서 액세스할 수 있습니다.
웹 개발 시 데이터 추출 단순화
웹 페이지에서 데이터를 추출해 본 웹 개발자는 기존 HTML 구조가 브라우저에 정보가 있는 위치를 알려주는 것 외에는 의미 있는 정보를 거의 제공할 수 없다는 것을 알고 있습니다. 개발자는 프로그래머가 데이터의 실제 의미를 이해하는 데 도움이 될 수 있는 데이터 자체에 대한 정보를 알아야 합니다. HTML5의 소위 마이크로포맷은 HTML에 몇 가지 새로운 특수 태그를 추가하는 새로운 메커니즘을 도입합니다. 이는 프로그래머가 태그에 있는 데이터의 실제 의미를 분석하는 데 도움이 될 수 있습니다.
마이크로포맷이 네트워크에 얼마나 많은 변화를 가져올지 예측할 수는 없지만 이 새로운 메커니즘이 프로그래머에게 큰 편의성을 제공하고 프로그래머가 보다 효율적인 웹 애플리케이션을 개발하는 데 도움이 될 것이라는 점은 쉽게 알 수 있습니다. 예를 들어, 날짜와 시간을 표시하는 좋은 표준 방법이 있다면 프로그래머가 웹 사이트용 시간 관련 웹 프로그램을 개발할 때 다른 사람들이 사용할 시간 형식을 분석하거나 추측하기 위해 추가 특수 코드를 작성할 필요가 없습니다. 이렇게 하면 여러 데이터 소스에서 시간 정보를 수집해야 하는 달력, 일정, 일정 등의 애플리케이션이 매우 간단한 작업이 됩니다.
위치 서비스 지원
과거에는 웹 세계에서 우리는 IP 주소만 알고 있었고 그 숫자가 어떤 현실 세계에 해당하는지 전혀 몰랐습니다. 예를 들어, 과거에는 특정 컴퓨터가 어디에 있는지 아는 것이 거의 불가능했지만 이제는 위치 서비스를 통해 이 문제를 해결할 수 있습니다. HTML5 표준을 사용하면 JavaScript가 위도 및 경도 정보와 같은 브라우저 사용자의 지리적 위치를 물어볼 수 있습니다. 일반적으로 데스크톱 시스템은 이 기능을 지원하지 않지만(GPS 또는 Wi-Fi가 필요하기 때문에), 단말기가 휴대용 스마트폰인 경우 이 기능이 작동될 수 있습니다.
오늘날 똑똑한 프로그래머가 이 위치 정보를 기반으로 어떤 애플리케이션을 만들지는 아무도 모르지만, 한 가지 확실한 것은 미래는 예측할 수 없는 놀라운 방식으로 가상 세계와 현실을 결합할 것이라는 점입니다.
웹 동영상 재생을 더욱 원활하게
HTML5의 비디오 태그를 사용하면 웹 개발자가 비디오 콘텐츠를 웹 페이지의 다른 콘텐츠와 쉽게 통합할 수 있으며 jQuery 및 PHP 개발에 종사하는 사람들이 웹 개발 팀에 합류할 수 있으므로 더 이상 웹 개발이 필요하지 않습니다. Flash, Silverlight 및 JavaFX 개발자에게만 해당됩니다.
이 아이디어는 유혹적이지만 HTML5 표준에 지정된 코덱이 없고 모두가 자신의 비디오 및 사운드 코덱을 게시하고 싶어하기 때문에 여전히 어려움이 많습니다. 이것이 의미하는 바는 혼란을 다른 혼란으로 대체한다는 것입니다. 과거에는 브라우저에 내장된 소프트웨어를 플러그인이라고 불렀으나 오늘날에는 코덱이라고 부릅니다. 따라서 오늘날 표준 비디오 태그가 있지만 브라우저는 비디오 콘텐츠를 해석하는 방법을 알 수도 있고 모를 수도 있습니다.
로스앤젤레스에서 강의하고 있는 HTML5 애플리케이션 개발 강사인 Erich Ocean은 코덱 전쟁이 여전히 진행 중이라고 믿습니다. 컴퓨터 개발자와 Mozilla 조직이 비디오 전문가를 위한 비디오 표준을 만들 수 있다고 생각한다면 슬프게도 착각입니다. 그는 Google의 새로운 비디오 형식이 YouTube와 같은 일부 장소에서 사용되는 것을 보게 될 것이지만 H.264만큼 보편적이지는 않을 것이라고 말했습니다.
모두가 동의할 수 없기 때문에 동영상 재생이 혼란스러운 상황에 직면할 수 있지만, 새로운 동영상 태그는 확실히 인터넷 동영상 콘텐츠를 더욱 풍부하게 만드는 동시에 웹페이지가 동영상 콘텐츠의 주요 게시 소스가 될 것입니다. 시간이 지나면 텍스트 내용이 점점 줄어들 것입니다. 단지 이것이 어린이 교육에 좋지 않을 수도 있습니다. 오늘날의 어린이들은 점점 애니메이션 시청에 익숙해지고 글쓰기는 커녕 책을 읽는 데 거의 시간을 보내지 않기 때문입니다.
위젯이 더욱 풍부해집니다
iframe에서 실행되는 위젯을 사용하면 웹 페이지에 다른 웹사이트의 콘텐츠(예: 일기 예보)를 삽입할 수 있는데, 이는 매우 실용적이고 인기가 높습니다. 그러나 보안상의 이유로 이러한 위젯은 항상 상대적으로 독립적인 환경에서 실행되어 왔습니다. , 웹페이지의 다른 콘텐츠와 크게 분리되어 있습니다.
HTML5는 이러한 위젯이 서로 통신할 수 있는 표준 메커니즘을 제공합니다. 아직 서로의 운영 환경에 들어갈 수는 없지만 이미 서로에게 메시지를 보내 함께 작업할 수 있습니다.
광고주들은 오랫동안 이를 기다려왔습니다. 그들은 동일한 웹 페이지의 여러 위치에 흩어져 있는 배너 광고를 통합하기를 매우 희망하고 있습니다. 개발 관점에서 볼 때 개발자는 분명히 다른 실용적인 용도를 찾을 것입니다. 예를 들어, 웹 페이지에서 재생되는 테니스 경기 화면은 HTML 1.0 시대에는 상상할 수 없었던 왼쪽과 오른쪽의 선수 정보와 동기화될 수 있습니다.
그러나 정보를 보내고 서로 통신하는 능력은 시작에 불과합니다. 다음으로 해결해야 할 문제는 통신 프로토콜 문제입니다. 이 분야에는 아직 표준이 없기 때문입니다. 정보 전달에 대한 표준을 확립해야만 서로 다른 두 개발팀이 개발한 위젯이 서로 통신할 수 있습니다. 즉, 통신 당사자 모두에게 더 많은 표준 어휘가 필요합니다.
브라우저 보안 강화
각 브라우저 플러그인은 별도의 애플리케이션입니다. 다양한 브라우저 플러그인은 다양한 표준에 따라 다양한 프로그래머에 의해 개발되고, 다양한 시기에 출시되며, 다양한 보안 모델을 갖습니다. 당연히 일부 플러그인은 다른 플러그인보다 더 안전합니다. 브라우저에 플러그인이 점점 더 많아짐에 따라 각 브라우저 플러그인에서 발생할 수 있는 보안 취약성을 추적하는 것이 점점 더 복잡해지고 있습니다. 예를 들어, 작년 말 회사의 보안 취약점이 플러그인이나 브라우저로 인해 발생했는지, 최종적으로 브라우저를 업그레이드하는 것이 아니라 브라우저를 업그레이드하여 해결되었는지 누군가가 명확하게 기억하기 어려울 수 있습니다. 플러그인 또는 그 반대.
플러그인을 사용하는 대신 HTML5에 많은 기능을 구축하면 보안 위험을 크게 줄일 수 있고, 플러그인 개발과 관련된 여러 측면에서 문제를 피할 수 있으며, 누군가 의도적으로 플러그인의 API를 사용하여 악성 코드를 설치하는 것을 방지할 수 있습니다. 상대적으로 말하자면, Firefox, Chrome 또는 IE 브라우저의 보안은 일반적으로 더 많은 사람들(보안 팀 포함)에 의해 감사됩니다. 보안 팀이 특정 브라우저가 안전하다고 생각하면 일반적으로 해당 브라우저의 보안 위험은 훨씬 낮아집니다. .
그러나 여기에 언급된 보안 개선 사항은 대부분 추측에 불과합니다. 이 세상에는 자신의 독창성을 사악한 목적으로 사용하는 사람들이 항상 있을 것이며, HTML5의 특정 기능을 이용하여 악의적인 행동에 가담할 수도 있습니다. 단지 HTML5의 새로운 기능에 어떤 위험이 숨겨져 있을지 누구도 예측할 수 없다는 것입니다.
웹 개발 단순화
웹 소프트웨어 개발 회사에서 일하는 개발자의 말은 HTML5가 가져올 변화를 간결하게 설명합니다. 그는 이렇게 말했습니다. 저는 HTML5를 선호합니다. 왜냐하면 HTML5를 사용하면 Flash 세계와 HTML5 세계 사이를 오갈 필요 없이 브라우저와 JavaScript, DOM이 결합된 통합 개발 환경에서 개발할 수 있기 때문입니다. 앞으로는 개발 언어와 도구 세트만 마스터하면 어떤 플러그인이든 개발할 수 있습니다.
이어 그는 “사용자를 위한 혜택도 분명한 것 같은데, 이제 플래시는 인터넷 세상에서 새로운 세상을 만들어낸 것 같다”고 덧붙였다.
실제로 HTML5는 통합 언어(JavaScript), 통합 데이터 모델(XML 및 DOM) 및 통합 프레젠테이션 규칙(CSS)을 사용하여 텍스트, 오디오, 비디오 및 그래픽을 표현합니다. 이상적입니다. 통일된 표준 개발 환경을 기반으로 하면 작업이 확실히 훨씬 간단해집니다. 그러나 모든 것을 현실로 만드는 것은 여전히 큰 문제입니다. 한 가지 뛰어난 문제는 아직 HTML5 관련 도구가 부족하다는 것입니다. Flash의 인기가 Adobe에서 Flash 개발을 위해 제공하는 매우 사용하기 쉬운 도구와 불가분의 관계에 있다는 것은 부인할 수 없습니다.
링크: HTML의 진화
HTML의 전체 이름은 Hypertext Markup Language로, 웹 페이지를 설명하는 데 사용되는 사양입니다. 오늘날의 웹을 구성하는 것은 꺾쇠 괄호로 묶인 간단한 태그입니다.
HTML의 첫 번째 공식 버전은 IETF(Internet Engineering Task Force)에서 출시한 HTML 2.0이었습니다. 이후 W3C는 IETF의 역할을 대신해 HTML 표준을 정하는 기구가 됐다. 1990년대 후반 HTML 버전은 1999년 HTML 4.01까지 자주 개정됐다. 이때 HTML은 첫 정점을 찍었다.
HTML 4.01 이후 처음으로 개정된 HTML 버전은 XHTML 1.0입니다. 여기서 X는 eXtensible을 의미합니다. XHTML 1.0은 HTML 4.01을 기반으로 하며 새로운 태그나 속성을 도입하지 않습니다. 유일한 차이점은 구문이 더 일반적인 반면 XHTML은 XML과 같은 엄격한 구문을 요구합니다. 나중에 W3C는 XHTML 1.1을 출시했습니다.
W3C의 경우 HTML 4는 이미 성공했습니다. 다음 단계는 웹에 XML의 밝은 미래를 가져오려는 XHTML 2.0입니다. 그러나 Opera, Apple, Mozilla의 대표자들은 W3C의 작업에 불만을 품고 WHATWG인 Hypertext Application Technology Working Group을 자발적으로 조직하고 설립했으며 HTML5 사양에 전념하고 있습니다.
WHATWG가 HTML5에 대해 작업하는 동안 W3C는 XHTML 2.0에 대한 작업을 계속합니다. 그러나 W3C의 XHTML 2.0 작업은 서서히 문제에 빠졌고 나중에 XHTML 2.0 작업을 종료했으며 2007년에 새로운 HTML 작업 그룹을 구성했습니다. 그들은 매우 현명하게 WHATWG의 결과를 HTML5 사양 개발의 기초로 선택했습니다.
수년간의 고민 끝에 2008년 HTML5 초안이 공개되었으며, W3C는 현재 이를 더욱 개선하고 있습니다. 현재 HTML5가 언제 공식적으로 표준이 될 것인지에 대한 명확한 설명은 없습니다. 좋은 소식은 HTML5가 2012년에 표준 후보로 채택될 수도 있다는 것입니다. 그러나 HTML5가 표준이 될 때마다 모든 브라우저 제공업체가 HTML5를 수용하는 것은 확실히 장기적인 프로세스가 될 것으로 예상할 수 있습니다.