Quando crio sites para pequenas empresas, enfrento dois extremos. Mas só eu, como programador. Os usuários não se chocam, porque você não pode enfrentar algo que não existe para você. O primeiro extremo é quando um cliente compra outra hospedagem para Wordpress por US $ 50 por mês. Uma pessoa não sabe que hospedagem especial não é necessária para o Wordpress, que essa hospedagem especial geralmente é pior do que a hospedagem regular e contém um monte de restrições e é mais cara. O segundo extremo é ao usar a pilha JAM por uma questão de economia. Mas isso é economia no mau sentido da palavra, quando você economiza em fósforos, usando um gerador para alimentar o ferro de soldar com o qual você acende um cigarro.
Oficialmente falando, o JAM-stack- Javsacript, API, Markup, em geral, um template estático preenchido com dados no cliente via API usando Javascript. Em termos simples, uma pilha JAM é um monte de muletas, cujo uso será ruim para todos, especialmente para o desenvolvedor. Tecnicamente falando, uma pilha JAM é um sistema de muletas integradas para construir sites estáticos, usando SAAS para hidratação e persistência de dados e muita renderização do lado do cliente. Como os avôs fizeram sites estáticos na juventude? Eles escreveram arquivos HTML e CSS simples e os colocaram em hospedagem FTP. Como nossos pais fizeram sites estáticos durante sua juventude selvagem? Eles usaram Jekyll / Octopress, ou qualquer uma das centenas de geradores de sites estáticos, e os arquivos HTML e CSS resultantes foram carregados nas páginas do github por meio de um commit e vincularam o domínio desejado.Alguns, então, ainda organizaram jogos com o Disqus, porque não posso nomeá-lo de outra forma que não seja jogos, porque um usuário com uma conta Disqus para deixar comentários em seu site é cada vez mais raro.
Em termos de preço / custo de tempo / complexidade de manutenção / restrições de desenvolvimento, tudo isso foi uma boa opção. Quando deixou de ser uma boa opção, a hospedagem com php foi comprada por alguns dólares ao mês. As páginas estáticas foram simuladas e adquiriram uma funcionalidade sólida de um site completo. E estava tudo bem, mas Yenisei era feito de cerveja light. Mas nossos grandes ancestrais encontraram um emprego normal e não sofrem mais com esse lixo. Agora sofremos, e o que a indústria pode nos oferecer, jovens, engraçados, para quem tudo é fácil? Ela orgulhosamente tosse sangue em nosso rosto com uma pilha de JAM e diz: "Você não vai esperar!"
A pilha JAM é a abordagem mais recente para a construção de sites estáticos e o Gatsby.JS é um de seus profetas. Gatsby é o representante mais brilhante do gênero, elevando ao absoluto o ridículo da ideia de sites estáticos, traduzindo-o assim na categoria de pós-ironia. Para começar, Gatsby é construído sobre React. O mesmo React que foi criado para sites que precisam de uma abordagem de componente, ou seja, existem algumas interfaces de usuário, ou seja, há manipulação de dados. Mas temos um site estático, certo? Não? Resposta retrógrada! Agora, isso não é um problema, temos serviços como Netlify e Contentful. Eles fornecem a você uma API para fazer solicitações AJAX a seus servidores e receber ou gravar conteúdo. Essa. o banco de dados usual acessível pelo trigésimo traseiro. Mas é grátis. As primeiras N solicitações, ou usuários, mais o limite de tamanho do blob.Promoção: cumpra todas as restrições e seja pago pelo cliente * (* o número de tentativas é limitado).
Por que, à primeira vista, parece atraente para os negócios? Porque React está na boca de todos, e Reacto-macacos, que ontem conseguiram entrar em Aichi e estão prontos para trabalhar por um centavo são muitos. Para Reacto-macacos, isso é atraente porque há pelo menos alguma maneira de arrecadar dinheiro e preencher um portfólio. E sentado no pescoço da sua mãe você literalmente não pode pagar pela hospedagem ou pela base. Pelo mesmo motivo, um cliente hesitante pode, depois de ver o resultado, descobrir se ele realmente precisa dele e parar de responder às mensagens do candidato a freelancer. Além disso, o cliente e o empreiteiro estão unidos por uma competência bastante pequena, onde o primeiro não entende como tudo funciona, e o segundo não entende que os sites podem ser feitos de outra maneira.
Como resultado, com raras exceções, sobre as quais, mais tarde, todos perdem. React e seus derivados são uma ferramenta complexa com um grande ecossistema e enormes desafios que geralmente são enfrentados apenas por programadores React, não por macacos React. 10 anos atrás, houve um ato de circo popular chamado "puxar um menu com todos os submenus em uma consulta SQL". Agora temos seu sucessor ideológico - extrair todos os dados do serviço necessário por meio de uma solicitação GraphQL. Gatsby extrai mais de 500 dependências e, conhecendo a velocidade da atualização do ecossistema JS, podemos dizer com segurança que em seis meses algo vai quebrar se você precisar de um novo widget de terceiros. Após 2 anos, você estará trapaceando as versões apenas para reconstruir este milagre em um novo lançamento. Estou brincando, estou brincando! Não pode ser recolhido pela primeira vez de acordo com as instruções do site.Se Roskomnadzor, em outra explosão de preocupação com os cidadãos, bloqueia seu servidor de banco de dados sem servidor ou simplesmente altera a tarifa, então você tem que se divertir com tudo isso novamente. A propósito, ao contrário dos sites estáticos tradicionais, construa um site no Gatsby! == fontes do site. Portanto, a estratégia de fazer backup e implantar esse milagre, incluindo o banco de dados, e mesmo sem ele, é muito interessante. Mas a própria polpa começará se a aberração criada por crianças em idade escolar em tecnologias tortuosas precisar ser desenvolvida. Acredite em mim, o PHP tem um limite superior muito inferior para bastardos de código legado, não importa o que digam sobre isso!Portanto, a estratégia de fazer backup e implantar esse milagre, incluindo o banco de dados, e mesmo sem ele, é muito interessante. Mas a própria polpa começará se a aberração criada por crianças em idade escolar em tecnologias tortuosas precisar ser desenvolvida. Acredite em mim, o PHP tem um limite superior muito inferior para bastardos de código legado, não importa o que digam sobre isso!Portanto, a estratégia de fazer backup e implantar esse milagre, incluindo o banco de dados, e mesmo sem ele, é muito interessante. Mas a própria polpa começará se a aberração criada por crianças em idade escolar em tecnologias tortas precisar ser desenvolvida. Acredite em mim, o PHP tem um limite superior muito inferior para bastardos de código legado, não importa o que digam sobre isso!
Para você, como um desenvolvedor novato, não é lucrativo usar a pilha JAM para projetos comerciais. Em primeiro lugar, os sites estáticos com funcionalidade mínima são a base do freelancer com tudo o que vem com ele e cheira mal. Em segundo lugar, a pilha JAM é uma economia de custo direta para o desenvolvedor. Você desperdiçará seu tempo para compensar a curvatura de ferramentas e serviços, que não dependem de você e para lidar com os quais você tem pouca experiência. O que você conseguir aqui não será mais útil para você, porque clientes solventes poderão pagar pelo menos por hospedagem normal.
Então, qual é o caso de uso correto para a pilha JAM como está hoje? Em minha opinião, esta é uma situação em que um conhecido ou parente razoavelmente adequado pede a você, um programador React que tem um emprego normal bem remunerado em seu perfil, para criar um site relativamente simples em seu tempo livre. E você pode usar as habilidades existentes para fazer isso rapidamente, ao mesmo tempo em que explica à pessoa todas as desvantagens dessa abordagem. E se ele concordar, vá em frente. Caso contrário, apenas conte a ele sobre o Wordpress e wp2static.
Críticas e objeções são bem-vindas. Mas, por favor, indique o custo e o número de projetos que você fez Gatsby, Avançar.