Quasar Framework - Front end de alto desempenho

PatrickMonteiro3 213 views 59 slides Feb 15, 2020
Slide 1
Slide 1 of 59
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35
Slide 36
36
Slide 37
37
Slide 38
38
Slide 39
39
Slide 40
40
Slide 41
41
Slide 42
42
Slide 43
43
Slide 44
44
Slide 45
45
Slide 46
46
Slide 47
47
Slide 48
48
Slide 49
49
Slide 50
50
Slide 51
51
Slide 52
52
Slide 53
53
Slide 54
54
Slide 55
55
Slide 56
56
Slide 57
57
Slide 58
58
Slide 59
59

About This Presentation

Palestra apresentada no evento Data Tech Day em Belém do Pará. Evento promovido pela comunidade SQL Norte.


Slide Content

Quasar Framework FRONT-END DE ALTO DESEMPENHO

Nome: Patrick Monteiro Idade: 26 anos Engenheiro da Computação Especialista em desenvolvimento Web Certificado UX-PM Level 1 Organizador da comunidade Vue Norte Desenvolvedor / Arquiteto Front-end na W3 Automação e Sistemas(W3AS) Autor no Vila do Silício e Imasters

A Evolução da Web

Criada pelo britânico Tim Berners-Lee, com 3 ferramentas importantes: um protocolo de transmissão de dados - HTTP ; um sistema de endereçamento próprio - URL ; uma linguagem de marcação, para transmitir documentos formatados através da rede - HTML ; A World Wide Web

1.0 - Basicamente uma plataforma para Leitura(HTML); A Evolução da Web

2.0 - Tanto Leitura quanto escrita eram características. A Evolução da Web

3.0 - Web Semântica A Evolução da Web

Fonte: http://www.evolutionoftheweb.com/ O Crescimento da Web

Fonte: http://www.evolutionoftheweb.com/ O Crescimento da Web

Framework x Biblioteca

Single Page Applications

É uma abordagem moderna de construção de aplicações Web; A aplicação interage com o servidor por requisições AJAX trocando dados no formato JSON ou XML; Single Page Applications

Não podemos levar ao pé da letra! Single Page Applications

Single Page Applications

Single Page Applications

Single Page Applications

Single Page Applications Algumas das vantagens no uso de Frameworks: Eficiência - projetos que costumavam levar meses e centenas de linhas de código agora podem ser lançados muitos mais rápido com padrões e funções bem estruturadas Custo - a maior parte dos frameworks são de código aberto e gratuitos Comunidades - ajudam na identificação de bugs muito rapidamente

Quasar Framework

Quasar Framework O lema do quasar é: “ escrever código uma vez e simultaneamente implantá-lo. ” Uma única base de código, ajudando você a desenvolver uma aplicação em tempo recorde, usando um CLI de última geração.

Quasar Framework O Quasar é um Framework baseado em Vue.js de código aberto licenciado pelo MIT. Ele permite que um desenvolvedor Web crie rapidamente sites/aplicativos responsivos em vários formatos: Single Page Application(SPA) Server Side Render Apps(SSR) Progressive Web Apps(PWA) Hybrid Mobile Apps (Mobile) Electron Apps (Desktop)

Quasar Framework Outra vantagem do Quasar é que você não precisará de bibliotecas pesadas adicionais como Hammerjs , Momentjs ou Bootstrap . Todas essas necessidades são cobertas pelo quasar e todas com uma pegada pequena.

Quasar Framework O Quasar está olhando para o futuro e define seus próprios padrões elevados e modernos. E para isso é necessário algumas vezes percorrer caminhos diferentes da maioria. “O que queremos alcançar com a Quasar é elevar o nível do desenvolvimento web como um todo. Faça isso ir em frente, evolua. Mude as mentes. Indique quando há uma alternativa melhor.”

Características

Características Todas as plataformas em um só lugar Uma fonte autoritária de código para todas as plataformas, resultando simultaneamente em : Sites responsivos(SPA, SSR) Progressive Web Apps (PWAs) Aplicativos móveis híbridos(através do cordova: Android e iOS) Aplicativos Desktop Multiplataforma

Características Os maiores conjuntos de componentes rápidos e responsivos da Web. Praticamente 1 componente para cada necessidade da web.

Características Tema e compatibilidade O quasar possui suporte ao tema: Material Design 2.0 Suporte a diversos browsers do mercado: Google Chrome Firefox IE11/Edge Safari Android Windows Phone Blackberry Opera iOS

Características Pacotes de Idiomas Quasar O Quasar vem equipado com mais de 40 pacotes de idiomas prontos para uso. Além disso, se seu pacote de idiomas estiver ausente, levará apenas 5 minutos para adicioná-lo.

Características Migre progressivamente seu projeto existente A Quasar oferece uma versão UMD (Unified Module Definition), o que significa que os desenvolvedores podem adicionar uma tag CSS e JS HTML em seu projeto existente e eles estão prontos para usá-la. Nenhuma etapa de compilação é necessária.

Características Teste automatizado e auditoria O Quasar permite adicionar testes unitários e de ponta a ponta através de sua extensão de testes. Assim como um conjunto cada vez maior de ferramentas de qualidade e segurança de produtos.

Características Segurança O time é paranóico com a segurança dos aplicativos do Quasar. Então estão sempre atentos para informar sobre quaisquer ameaças de segurança.

Características Ótima documentação A documentação do Quasar teve um esforço especial para garantir que não haja nenhum tipo de confusão ou dúvida do desenvolvedor.

Características Comunidade sempre crescente Se o desenvolvedor encontrar um problema que não consegue resolver, pode visitar o fórum do Quasar ou o servidor de bate papo Discord . A comunidade está lá para ajudá-lo.

Quasar CLI

Quasar CLI O Quasar CLI permite que você crie novos projetos em pouco tempo, gerando um aplicativo base, preenchido com tudo o que você precisa para começar a trabalhar em seu aplicativo. O trabalho pesado é feito por ele, então você não precisa se preocupar com tarefas redundantes.

Quasar CLI O Quasar Cli é o orgulho do Quasar Framework. Você pode construir facilmente: SPA (Single Page Application/Website), SSR (Server-side Rendered App/Website), PWA (Progressive Web App), Mobile App (through Cordova), Electron App

Quasar CLI O que vem incluído no Quasar CLI ? (quasar dev) Babel, então você pode escrever código ES6 Webpack + vue-loader Estado preservado em hot-reload Estado preservado em erro de compilação Lint-on-save com ESLint Possibilita desenvolver diretamente em um emulador de dispositivo ou um telefone real conectado à sua máquina Desenvolver diretamente numa janela Electron com as ferramentas de desenvolvedor incluídas

Quasar CLI E desenvolvendo para produção (quasar build) Javascript minificado com o UglifyJS HTML reduzido com o html-minifier CSS em todos os componentes extraídos (e prefixados automaticamente) em um único arquivo e minimizado com o cssnano Todos os ativos estáticos são compilados com hashes de versão para um eficiente armazenamento em cache de longo prazo, e um índice de produção.html é gerado automaticamente com URLs adequadas para esses ativos gerados muitos mais...

Quasar CLI Para instalar o Quasar CLI precisamos do Node >= 8 e npm >=5. E no seu terminal favorito, rodar o comando: npm install -g @quasar/cli

Iniciando um projeto com Quasar CLI

Criando um projeto Para criarmos uma pasta de projeto com Quasar CLI basta utilizar o comando : quasar create <nome_da_pasta> Note que você não precisa de projetos separados para criar todas as opções descritas inicialmente(PWA, SPA, SSR, Apps Mobile, etc). Após a criação do projeto, acessamos nossa pasta e rodamos o seguinte comando para iniciar nosso ambiente de desenvolvimento: cd <nome_da_pasta> quasar dev

Estrutura de uma aplicação Quasar

Estrutura Se você é um iniciante, tudo o que você precisa se preocupar é com: /quasar.conf.js Arquivo de configuração App Quasar /src/router Arquivos de rotas do App /src/layouts Arquivos de layouts do App /src/pages Páginas da aplicação /src/components Componentes reutilizáveis

Configurações no quasar.conf.js

quasar.conf.js O que é possível configurar através do /quasar.conf.js ? Componentes, diretivas e plugins do Quasar que você usará no seu site/aplicativo Pacotes de idiomas padrão do Quasar I18n Pacote de ícones que você deseja usar Ícone padrão definido para componentes Quasar Porta do servidor de desenvolvimento, modo HTTPS, hostname, etc.. Animações CSS se desejar usar Plugins de aplicativos Opções do manifesto do PWA e Workbox Empacotador do Electron Suporte ao IE11+ Estender o objeto de configuração do webpack

quasar.conf.js O quasar exporta uma função que usa um ctx parâmetro(context) e retorna um Object. Isso permite que você mude dinamicamente seu website/aplicativo e suas configurações, com base nesse contexto.

quasar.conf.js Exemplo de utilização do ctx :

Comandos do Quasar CLI

Comandos CLI quasar create dev build clean new mode info serve help Cria o projeto inicial Inicia um servidor de desenvolvimento para seu App Gera uma build do seu aplicativo para produção Limpa todas as builds e artefatos Nova estrutura de uma page / layout / component/ … Adiciona/Remove os “modos” do quasar no seu App Exibe as informações sobre sua máquina e seu App Cria um servidor pronto para simular a build de produção Exibe ajuda de comandos do quasar

Vamos ver na prática!

Marcador

Novidades no Quasar

Novidades Quasar Proton um novo olhar sobre a criação de aplicativos multiplataforma. A Proton traz um modo para construir o Quasar Apps, que cria binários rápidos e minúsculos para todas as principais plataformas de desktop. É uma alternativa ao Electron, com ênfase em desempenho e segurança. Utiliza a linguagem RUST como base, mas será expansível para outras.

5 Razões para considerar o Proton

Novidades O TAMANHO DO PACOTE de um aplicativo Proton é inferior a 3 MB - cerca de 140 MB menor do que o obtido com o Electron. PEGADA DE MEMÓRIA é menos da metade do tamanho de um aplicativo Electron criado a partir da mesma base de código. SEGURANÇA é a maior prioridade da Proton e levamos isso tão a sério que inovamos para manter os hackers fora de seus aplicativos. CONFIABILIDADE da base de código subjacente é a razão pela qual as bibliotecas críticas foram bifurcadas e serão perpetuamente mantidas. O licenciamento de software livre é lamentavelmente impossível com os consumidores de Chromium, como a Electron.

Novidades

Novidades Para mais informações: https://github.com/quasarframework/proton

Patrick Monteiro Linkedin : https://www.linkedin.com/in/engpatrickmonteiro/ Twitter : https://twitter.com/monteiropatrick Email : [email protected]