Desenvolvimento

28 mar, 2018

Será que o Bootstrap ainda é relevante?

Publicidade

O Bootstrap, uma das bibliotecas de desenvolvimento web mais famosas e bem avaliadas do mundo – com mais de 123 mil estrelas no seu repositório no GitHub – recentemente lançou a versão V4.0.0 (que esteve em fase alpha durante muito tempo). Esta versão conta com uma série de funcionalidades novas e todo o sistema de grade e a maioria dos componentes totalmente reescritos utilizando o Flexbox por padrão.

No entanto, apesar de ser uma grande novidade o lançamento desta nova versão, fica a questão se a biblioteca realmente ainda se mantém relevante ao ponto de valer a pena estudá-la e implementá-la em nossos projetos. Para entender este questionamento, precisamos entender um pouco da evolução da web nos últimos anos.

Uma época de dor e sofrimento

Há um tempo atrás, poucas coisas neste mundo causavam tanto desespero e dor aos desenvolvedores(as) web quanto a sigla IE. A sigla, que representa o legado navegador da Microsoft, Internet Explorer, era um problema constante.

A sua falta de compatibilidade com os demais navegadores nos forçaram a escrever aplicações customizadas (gambiarras) somente para funcionar no navegador. Como na época ele era o navegador padrão da Microsoft no Windows, o número de usuários era muito grande, não tínhamos escolha.

Na mesma época, dava-se início a era dos smartphones. Os primeiros celulares capazes de renderizar sites de forma agradável e consistente começavam a aparecer graças aos sistemas operacionais do Google (Android) e da Apple (iOS). Sendo assim, os sites que antes eram totalmente desktop, começaram a ganhar forma nestes aparelhos.

Foi então que em 19 de agosto de 2011 surgiu o Bootstrap como projeto open source. O projeto foi originalmente desenvolvido para o site Twitter, chamado de Twitter Blueprint, e foi desenvolvido inicialmente por Mark Otto e Jacó Thornton como um instrumento para incentivar a consistência através de ferramentas internas da empresa. De acordo com eles, antes de Bootstrap, várias bibliotecas eram utilizadas para o desenvolvimento de interfaces, gerando inconsistências e um elevado peso de manutenção.

O projeto cresceu com o tempo e se tornou a opção número um dos desenvolvedores para criação de sites. E esse reinado continuou por muito tempo.

Uma luz no fim do túnel

O tempo passou e ingressamos na quarta revolução industrial. Todas as mídias, soluções e negócios migraram para o mundo digital (se não totalmente, parte de suas operações). Isso aconteceu porque a internet se tornou uma tecnologia acessível não somente nas nossas casas e nossos trabalhos, mas principalmente nos nossos celulares. Afinal, quem hoje não acessa a internet através do seu smartphone?

Mas não foi somente a internet que evoluiu; a tecnologia também. Enquanto o Bootstrap continuava facilitando a nossa vida, novas alternativas CSS começaram a surgir para resolver os problemas de responsividade e compatibilidade.

Dentre elas, os famosos Flexbox e CSS Grid. Essas especificações se tornaram extremamente populares e amadas pelos programadores(as) front-end pelo fato de que agora tratamos os componentes de nossos layouts de forma flexível, e por meio de um sistema de grid, ideia que se popularizou com o próprio Bootstrap (e que casa com a tendência de webcomponents, popularizada por tecnologias com o React e Vue.js) de forma muito fácil e nativa.

Dada popularidade, os navegadores atuais (aqui entenda Safari, Google Chrome, Firefox e Edge) começaram a dar suporte a eles. Resultado: começamos a desenvolver layouts responsivos de forma muito mais fácil, intuitiva e sem a adição de nenhuma biblioteca e/ou framework.

O Bootstrap não é a única solução

A tecnologia, como sempre, evoluiu drasticamente e a maneira como desenvolvemos sites e aplicações para a web, mudou. Mesmo nos tempos de ouro do Bootstrap, muitas outras bibliotecas excelentes surgiram com o propósito de resolver os mesmos problemas. Para citar algumas: Bulma, Foundation e Semantic UI.

Da mesma forma que o jQuery revolucionou o jeito de utilizar JavaScript no front-end, o Bootstrap fez o mesmo para o CSS. Ambos tornaram o desenvolvimento extremamente rápido, mas a um custo péssimo: depender da tecnologia.

Quantas vezes você já não viu (ou participou) de uma discussão sobre a necessidade de se utilizar o jQuery? No final das contas, ele nada mais é do que puro JavaScript. Acredito que no caso do Bootstrap x Flexbox x CSS Grid, a linha de raciocínio é a mesma.

Não é preciso dizer adeus

Eu sempre levantei a bandeira a favor do aprendizado dos fundamentos em primeiro lugar, seja para qualquer tecnologia e/ou área do conhecimento. Quer aprender React, Vue.js ou Angular? Ótimo, mas aprenda JavaScript primeiro. O mesmo para o Bootstrap, aprenda CSS primeiro.

Acho fantástico o movimento da comunidade de criar soluções de código aberto que tornam o desenvolvimento mais rápido, entretanto, passamos a utilizar bibliotecas sem mesmo saber como elas funcionam por debaixo dos panos. Isso nos torna desenvolvedores acomodados.

Não me entenda errado, acho que há lugar, sim, para tecnologias como o Bootstrap e tantas por aí. Situações como desenvolvimento de um MVP de uma startup, projetos pessoais ou mesmo para a universidade são exemplos perfeitos, pois requerem um desenvolvimento rápido e sem grande compromisso.

Entretanto, quando começamos a falar sobre projetos empresariais para produção, trabalhar sem depender de ferramentas de terceiros é sempre melhor. Isso nos dá muito mais flexibilidade e independência para projetar o que quisermos. Quem nunca identificou que um site foi desenvolvido em Bootstrap somente de olhar para ele, não é mesmo?

É por isso que o meu voto é este: estude e utilize os fundamentos das tecnologias que são nativas. Se você já os domina e o framework/biblioteca traz algumas facilidades e se adequa ao seu projeto, então a utilize, caso contrário, não. Bibliotecas vêm e vão, fundamentos não. E isso se aplica ao Bootstrap.

De qualquer maneira, acredito que assim como o jQuery deixou saudade, o Bootstrap também sempre terá um espacinho em nossos corações de programadores(as).