http://blog.urbantastic.com/post/81336210/tech-tuesday-the-fiddly-bits정적 HTML을 제공하고 AJAX/JSON으로 콘텐츠를 생성하면 어떤 이점이 있습니까? Urbantastic에서
히스는 자신의 HTML 생성 시스템에 대한 기록 : Urbantastic에서
모든 HTML이 완전히 정적이다. 모든 동적 데이터는 AJAX를 통해 JSON 형식으로 전송 된 다음 Javascript를 사용하여 HTML과 결합됩니다. 다시 말하면, Urbantastic 용 서버 소프트웨어는 JSON 만 생산하고 소비합니다. HTML, CSS, Javascript 및 이미지는 모두 다른 서비스 (바닐라 Nginx 서버)를 통해 전송됩니다.
데이터를 물리적으로 분리하여 표시하는 흥미로운 모델이라고 생각합니다. 나는 건축 전문가는 아니지만 효율성과 안정성이 급격히 상승한 것처럼 보입니다. 그러나
, 다음과 같은 문제 나 :
[주관] Clojure에 매우 강력하다; 자바 스크립트가 아닙니다. 모든 콘텐츠 생성을 다른 목표로 작성된 언어로 작성하면 고통이 생길 것입니다 (CSS에 자바 스크립트 유형 코드 작성). Javascript를 생성하는 매크로 시스템이 없다면 Heath는 JavaScript와 Clojure 사이를 끊임없이 전환 할 수 있습니다. 그는 또한 많은 JS 코드를 갖습니다. 아마도 Clojure보다 훨씬 많을 것이다. 권력, 빠른 개발, 간결함 및 LISP 기반 언어로 전환 할 때 우리가 바라는 모든면에서 좋지 않을 수 있습니다.
[성능] 잘 모르겠지만 사용자 컴퓨터의 모든 부분이 지연 될 수 있습니다.
[접근성] JS가 비활성화 된 경우 사이트를 전혀 사용할 수 없습니다.
[접근성 # 2] JavaScript로 채워지는 많은 동적 데이터로 인해 브라우저 간 문제가 발생할 것으로 생각됩니다.
누구든지 댓글을 달 수 있습니까? 이 건축물에 대한 당신의 의견을 읽는 데 관심이 있습니다.
참고 : HN에 대한 논의
자바 스크립트는 매우 강력합니다. Javascript를 정말로 이해해서는 안된다는 뜻입니다. C++이나 Lisp보다 더 많은 패러다임과 옵션을 제공합니다. 그것은 약간의 속도가 부족하지만, 부적합한 작업량에 대해서는 그렇지 않습니다. –
속도 부족으로 인해 전체 페이지 전송시 데이터 오버 헤드가 생깁니다. (적어도 대부분의 시간). Javascript는 0 번 노력으로 거대한 클러스터를 만드는 능력을 제공합니다 (시청자가 작업을 수행합니다.) –
인식과 관련된 속도는 실제로 문제가 아닙니다. 여전히 문제가되는 IO 경계입니다. – annakata