2012-03-29 5 views
1

내 친구가 웹 페이지를 프로그래밍하고 있습니다. .html 파일에 HTML을 작성하는 대신 그는 자바 스크립트로 전체 웹 사이트를 출력합니다. SEO를 제외하고, 또는 디버깅하는 것이 고통 스러울 것이라는 사실을 제외하면, 이것에 대한 단점은 무엇입니까? 또한, 거꾸로 있다면, 무엇이 더 좋을까요?전체 웹 페이지를 작성하기 위해 자바 스크립트를 사용할 때의 단점은 무엇입니까?

+1

[Atwood 's Law?] (http://www.codinghorror.com/blog/2009/08/all-programming-is-web-programming.html) – BoltClock

+0

느리게 ........? – you786

+0

@BoltClock 그래서 "작동하는 한 그것이 효과가있다"고 말하는거야? – ddan

답변

1

하나의 큰 단점은 모바일 일 수 있습니다.

기능에 따라 자바 스크립트 전용 페이지가 모바일 장치에서 느려질 수 있습니다.

하나 이상의 라이브러리를 사용하거나 많은 정보에 액세스하는 경우 페이지가 리소스가 많이 소모 될 수 있습니다. 또한 휴대 기기 사용자에게도 상당한 비용이 발생할 수 있습니다.

또 다른 단점은 접근성 일 수 있습니다. 시력이 좋지 않은 사용자를위한 소프트웨어를 사용하는 것이 js 사이트에서만 어떻게 작동하는지 확신 할 수 없습니다.

2

이미 알고 계시 겠지만 SEO는 큰 문제입니다. 서재응은 일반적으로 자바 스크립트 기반 웹 사이트에 대한 방 (예 : 큰 거래)에 코끼리이며 당신도 SEO를 용서하거나 어떻게 든 검색 엔진이 당신을 통해 색인을 생성 할 수있는 대안 경로를 설계해야하고 그것이 실행되지 않습니다 검색 엔진에 다양한 콘텐츠를 게재하는 규칙

일부 잠재적 인 단점 :

  • 접근성 - 페이지 HTML을 대상으로 할 수있다 화면 판독기 및 기타 도구를 통해 액세스 할 수 있습니다.
  • 모바일 - 때로는 페이지를 렌더링 할 때 더 간단한 자바 스크립트 렌더링 페이지보다 큰 다운로드, 더 많은 자바 스크립트 코드 및 더 많은 데이터와 더 많은 CPU가 필요합니다. 이것은 많은 대역폭이나 마력없이 작은 장치에 손상을 줄 수 있습니다.
  • 성능 - 모든 데이터와 코드를 다운로드하여 실행할 때까지는 아무 것도 렌더링 할 수 없으므로 초기 페이지 표시 시간이 느려질 수 있습니다. 이후 페이지 시간은 앱 작성 방법에 따라 더 빠르거나 느릴 수 있습니다. 때로는 클라이언트 쪽 렌더링을 수행하여 서버 트립을 절약 할 수 있지만 (때로는 빠름) 클라이언트에서 일을 더 느리게하는 경우가 있습니다.
  • 보안 - 일부는 서버 측과 같은 방식으로 클라이언트 측에서 보안 설정 될 수 없습니다.
  • 코드 비밀 - 브라우저의 코드는 전세계에 공개됩니다. 서버상의 코드는 비밀로 유지 될 수 있습니다.
  • 동일한 출처 제한 - 브라우저는 동일한 출처 제한으로 인해 서버보다 더 많이 연결할 수 있습니다.
  • 메모리 - 많은 코드와 많은 데이터가 서버에서 생성 된 HTML 페이지보다 앱에 더 많은 메모리를 소비 할 수 있습니다. 이것은 아마 데스크탑에서는 의미가 없지만 더 작은 장치에있을 수 있습니다.

그나 중 일부 :

  • 내용은 동적으로 사용자의 유형에 따라 영리를 많이 렌더링 할 수 있으며, 화면 크기, 장치의 기능, 등 ...이 로컬 렌더링은 일반적으로 서버에서 수행하는 것보다 효과적으로 수행 할 수 있습니다.
  • 자주 페이지를 다시로드하지 않고도 서버에서 데이터를 가져 오거나 서버에 아약스로 명령을 보내고 결코 페이지를 다시로드하지 않고도 앱의 많은 기능을 수행 할 수 있습니다.
+0

로봇을 감지하고 맞춤 콘텐츠를 제공함으로써 주위를 둘러 쌀 수 있지만 가장 큰 문제입니다 (위험한 경우, 잡히면 매우 가혹하게 처벌받는다고 믿습니다). 전체 #! hashbang 것은보다 합법적 인 방법으로도 도움이 될 것입니다. – david

+0

질문은 SEO 이외의 이유를 원한다고 구체적으로 말합니다. –

+0

@MartinHansen - 알아. 나는 그들이 JS 페이지 렌더링과 관련하여 일반적으로 살인자 문제라는 점을 SEO를 넘어서는 것에 대해 묻고 있다고 말했지만, 그리고 나서 질문에 관련된 몇 가지 다른 문제를 추가했습니다. – jfriend00

0

이러한 종류의 코딩은 회원 전용 영역에 더 적합하며 물론 검색 엔진에서는 접근 할 수 없다고 생각합니다.

당신이 ExtJS와 같은 레이아웃을 할 수있는 좋은 라이브러리를 사용한다면, 그것은 흥미로운 코딩입니다. 데스크톱 응용 프로그램과 비슷한 모양의 웹 응용 프로그램을 만들 수 있습니다.브라우저의 차이점은 라이브러리에 의해 매끄럽게 처리되며 문제가있을 것으로 예상됩니다.

공개 웹 사이트의 경우 일반적으로 SEO 인수는 꽤 큰 것입니다. 아무도 당신을 찾을 수 없으면 ...