Yesod e Haskell Aplicações web com Programação Funcional pura
Alexandre Garcia de Oliveira, Patrick Augusto da Silva, Felipe Cannarozzo LourençoConteúdo
Yesod é um framework de alta produtividade, com o qual a maioria da implementação do código se concentra nos Handlers, sendo extremamente modular. Combinado a ele, a linguagem Haskell favorece muito devido ao conceito de type-safety, que delega ao compilador a checagem da consistência do código, o que permite que a pessoa programadora foque no que é realmente importante: desenvolver.
Neste livro, os autores apresentam todas as ferramentas necessárias que o Yesod disponibiliza para a construção de uma aplicação web do zero. Você vai aprender como fazer aplicações web e APIs REST, com exemplos minimalistas até chegar ao acesso ao banco de dados com a API persistent. Seu trajeto passará pelos Shakespearean Templates e você verá como eles facilitam o desenvolvimento do front-end com seus templates: Hamlet, Julius, Cassius e Lucius. Fazendo uso dos interpoladores dentro dos templates, o Yesod tomará conta parcialmente do seu front-end e facilitará muito a comunicação com o back-end, evitando-se muitos erros que aconteceriam em tempo de execução. Isso lhe poupará custo de produção e manutenção.
Sumário
- 1 Introdução — Configurando o ambiente & primeiros passos
- 1.1 O que é o Stack
- 1.2 Instalando o Stack
- 1.3 Criando um exemplo mínimo monolítico — Main.hs (pragmas e imports)
- 1.4 Typeclass Yesod — uma instância para o tipo Aplicacao
- 1.5 mkYesod e parseroutes — Introdução ao sistema de rotas
- 1.6 Introdução aos Handlers e Widgets
- 1.7 A função main — a responsável por iniciar a execução da aplicação
- 1.8 Executando o projeto
- 2 Scaffold & Templates: Configuração do ambiente com Stack
- 2.1 Bem-vindo ao scaffold — os andaimes do Yesod!
- 2.2 Os templates
- 2.3 A ferramenta stack
- 2.4 A fundo no snapshot do Haskell — LTS e Nightly
- 3 Estrutura de projeto Yesod com template yesod-minimal
- 3.1 Estrutura de pastas e arquivos de um projeto Yesod
- 3.2 Roteamento — as rotas do projeto
- 3.3 O arquivo main.hs
- 3.4 Foundation.hs e Application.hs
- 3.5 Handlers para todos os lados
- 4 Shakespearean Templates — ser ou não ser, eis a questão
- 4.1 Hamlet — template específico para HTML
- 4.2 Interpolador de código puro
- 4.3 Interpolador de tipos de rota
- 4.4 Julius — a linguagem específica para JavaScript
- 4.5 Lucius e Cassius — as liguagens específicas para CSS
- 5 Montando o front-end com blocos
- 5.1 Widgets e Handlers
- 5.2 Estruturas de controle dos Shakespearean Templates
- 6 Persistência de dados
- 6.1 Introdução ao módulo de persistência
- 6.2 Persistência de dados com Handlers — Leitura
- 6.3 Persistência de dados com Handlers — Escrita
- 6.4 Consultas avançadas
- 7 Projeto Livraria
- 7.1 Criando os formulários para seu livro
- 7.2 O outro lado da moeda — camada de apresentação
- 8 Manipulando credenciais e arquivos estáticos
- 8.1 Autenticação e autorização
- 8.2 Yesod static — Subsite para arquivos estáticos
- 8.3 Upload de arquivos ao servidor
- 9 Criando WebService RESTful
- 9.1 Configurações iniciais
- 9.2 API Livraria
- 9.3 Handlers multitarefa
- 10 Uma conclusão inevitável
Autores
Alexandre Garcia de Oliveira
Alexandre Garcia de Oliveira é formado Tecnólogo em Processamento de Dados na Faculdade de Tecnologia da Baixada Santista Rubens Lara (FATEC-RL) em 2004, e Bacharel em Matemática pelo Instituto de Matemática e Estatística da Universidade de São Paulo em 2012, onde também se formou Mestre em Matemática Aplicada em 2015. Leciona há 9 anos no Centro Estadual de Educação Tecnológica Paula Souza (CEETEPS), sendo há 8 anos pelas Fatecs, onde passou pelos campos de Santos, Praia Grande e São Caetano do Sul. Programa em Haskell há cerca de 6 anos. Ele também é apaixonado pelo Santos Futebol Clube, Álgebra, Final Fantasy 7, viagens de navio e algumas séries e animes.
Patrick Augusto da Silva
Patrick Augusto da Silva é aluno do curso de Sistemas para Internet na Faculdade de Tecnologia da Baixada Santista Rubens Lara, descobriu o Haskell e Yesod há cerca de 4 anos através do Alexandre, desde então vem programando em Haskell como se não houvesse amanhã.
Felipe Cannarozzo Lourenço
Felipe Cannarozzo Lourenço é formado no curso de tecnologia de Sistemas para Internet e cursista em Analise e Desenvolvimento de Sistemas, ambos da Faculdade de Tecnologia Baixada Santista Rubens Lara, conheceu a linguagem de programação Haskell e o framework Yesod em meados do ano de 2015 através do Alexandre. Leciona no Centro Estadual de Educação Tecnológica Paula Souza (CEETEPS) desde 2016 pela Etec, tendo como sede a Etec Adolpho Berezin, atuando também na Etec Praia Grande e Cubatão. Apaixonado por viagens, jogos de estratégia, séries e animes.
Dados do produto
- Número de páginas:
- 143
- ISBN:
- 978-85-7254-039-1
- Data publicação:
- 12/2019