Por que os fóruns do Discourse exigem JS?

Isso merece uma elaboração.

Para começar:

:thinking: :eyes: GitHub - discourse/discourse: A platform for community discussion. Free, open, simple.

O Discourse é na verdade, em sua maioria, Ruby on Rails, e (de acordo com o GitHub) apenas um quarto dele é JavaScript, embora seja um quarto extremamente crítico e domine o lado do cliente.

As razões pelas quais o Discourse e outros sites/aplicativos web modernos usam JavaScript são:

  • Carga de trabalho: alivia o servidor de muito trabalho, ajudando o site a escalar melhor (ei, faça a máquina do usuário compartilhar parte do trabalho, por que não?!)
  • Largura de banda: embora o carregamento inicial possa ser um pouco mais longo para baixar esse JavaScript, o carregamento intermitente de dados a partir daí é MUITO mais rápido, usando MUITO menos largura de banda (se o mundo perdesse o JavaScript amanhã, a internet possivelmente pararia?), porque você só precisa transferir os dados e não toda a marcação e layout de toda a interface do usuário. Assim, as coisas são feitas pela web muito mais rapidamente e permitem conexões de baixa largura de banda, como conexões móveis ruins.
  • Interface do usuário: melhora a natureza dinâmica da interface do usuário, tornando a experiência do usuário melhor (por exemplo, clicar em um botão para atualizar apenas uma parte da tela - sem grandes repinturas do navegador).
  • É um padrão: JavaScript é um padrão em todos os navegadores modernos, incluindo os móveis, então é “escreva uma vez e traga qualidades de aplicativo para a maioria dos dispositivos”.
  • Separação de responsabilidades: desacopla os processos do servidor de ter que se preocupar em renderizar a interface do usuário (geralmente), tornando mais fácil migrar ou dar suporte a outros front-ends que podem não ser baseados em JavaScript (ou mesmo HTML). Aplicativo iOS, alguém?

Tenho certeza de que há muitas outras vantagens, mas essas são as básicas.

12 curtidas