Os frameworks de desenvolvimento foram criados com o objetivo de facilitar a construção da base destes projetos: oferecem uma arquitetura pronta de HTML, CSS e javascript, com algumas automações e componentes inclusos, respeitando as práticas corretas de semântica e responsividade. Fazendo uma analogia com a construção civil, os frameworks são equivalentes à estrutura pré-moldada. Ela já está pronta para utilizar, basta juntar as peças e customizar.

Dentre os frameworks mais utilizados, podemos destacar dois principais: o Bootstrap e o Foundation, criados pelas equipes de desenvolvimento do Twitter e da Zurb, respectivamente.

Ambos os frameworks são mobile-first, que priorizam o desenvolvimento para dispositivos móveis, otimizando para limitações de hardware, tamanho de tela, navegação touch, para então adaptar a interface para dispositivos com possibilidades mais livres e o mínimo de alterações na marcação possíveis.

Muitos designers e desenvolvedores não veem com bons olhos a utilização destas estruturas por acharem que não se pode alcançar o resultado esperado, ou então que isso vá limitar as possibilidades de criação. Porém, os frameworks de desenvolvimento possuem diversos benefícios:

Documentação

Na Nextt, projetamos sempre tendo em vista dois tipos de usuário: o usuário final que navegará no site e também o usuário que representa o desenvolvedor que cuidará de sua manutenção. Frameworks normalmente são acompanhados de uma documentação bastante completa. Manter os componentes fiéis à documentação do framework e cuidar para que as marcações, estilos e scripts adicionados estejam devidamente comentados e conversem bem com o que é padrão são práticas essenciais para que o projeto proporcione uma experiência ótima em possiveis novas versões.

Padronização

A definição e utilização de padrões facilita o desenvolvimento e gera consistência. Ao optar por utilizar um framework os padrões estabelecidos mesmo nas suas versões mais básicas pavimentam o caminho para que o projeto se construa de maneira estruturada, orgânica e permita uma fácil atualização ou adaptação. Seguir a linha de raciocinio dos padrões já existentes na criação de novas funcionalidades também acelera e facilita muito o desenvolvimento. Em diversos projetos, a Nextt utiliza outras bibliotecas e componentes já desenvolvidos anteriormente, compatíveis com frameworks de desenvolvimento, elevando rapidamente as bases do projeto a um nível ainda mais completo. O importante nesses casos é tentar manter estes padrões intactos para que a base do framework não se perca.

Limitações

Muitos imaginam que com um framework, designers precisam ficar presos ao comportamento dos componentes ou soluções visuais que ele oferece. Porém, sabendo trabalhar com as tecnologias corretas, qualquer um desses frameworks pode ser adaptado visual e funcionalmente, para se encaixar nas necessidades do usuário final do projeto.. A utilização de pré-compiladores de CSS como LESS e SASS possibilitam a utilização de variáveis que, por si só, personalizam diversos estilos dos frameworks sem alterar o código base. A oferta de bibliotecas prontas com APIs feitas em tecnologias como jQuery conversam diretamente com os padrões dos frameworks mais usados, abrindo assim o leque de possibilidades de projeto.

Peso

Uma das críticas que desenvolvedores mais conservadores têm sobre frameworks é que eles contêm funcionalidades e estilos desnecessários, que acabam gerando “lixo” - linhas de código que não serão utilizadas no funcionamento do site. Isso não é totalmente mentira, já que frameworks são criados visando contemplar os possíveis casos de interação que uma página ou aplicação necessitem.

No entanto, nossa experiência provou que é mais eficiente e mais rápido remover componentes e funcionalidades desnecessárias do Bootstrap ou do Foundation do que escrever uma nova estrutura do zero. Um pouco de esforço e planejamento no momento da instalação do framework possibilita transformar todos componentes, bibliotecas e scripts em estruturas modulares e opcionais, fazendo com que o código final utilize apenas o necessário e fiquei mais limpo e leve.

Para ampliar o leque de possibilidades da utilização de frameworks pode-se combinar sua utilização com outras tecnologias. Na Nextt é normal utilizarmos os frameworks de desenvolvimento aliados a aplicações como o Jekyll para facilitar a montagem e testes de softwares web com automatizações básicas. Além disso, pode-se utilizar da praticidade de repositórios como o Grunt, Bower, NPM e Ruby Gems para instalar e gerenciar pacotes e aplicações que ofereçam novas funcionalidades compativeis com o framework.

Saiba mais sobre o Foundation e o Bootstrap nos seguintes links:
http://foundation.zurb.com/
http://getbootstrap.com/