Mesmo com a popularidade do GraphQL, dúvidas sobre o que ele é, e o que resolve são comuns. Neste artigo pretendo explicar a partir de exemplos o que é GraphQL e qual o seu objetivo.
Talvez este não seja o tópico que você esperava encontrar, e algumas das coisas aqui pareçam absurdas, mas acredite há pessoas que pensam ou já pensaram isso sobre GraphQL.
GraphQL não tem nenhuma relação com o banco de dados, e não é um ORM. Ele nem precisa de um banco de dados para funcionar. …
Código limpo (clean code) é um tópico recorrente e importante. Infelizmente não há uma adoção tão grande quanto se imagina ou espera.
Entre as motivações estão a falta de aprofundamento do tópico e suas nuances, bem como uma boa contextualização e a realidade dos projetos ou empresas onde os profissionais de desenvolvimento de software trabalham.
O caos, a cobrança e demanda, muitos líderes ou gerentes não conseguem, ou simplesmente não veem valor nessas práticas, o bom e velho “o importante é funcionar”.
Talvez algumas pessoas fiquem chocadas ou surpresas ao saber que ainda há muitas empresas e profissionais não sigam práticas e conceitos consideradas por muitos básicas. …
Injeção de Dependências (Dependency Injection) ou simplesmente DI é um tópico relativamente comum, disponível em várias linguagens/frameworks. Sua definição e objetivo são simples: injetar/passar uma dependência (valor/instância) para um objeto/função, a fim de diminuir o acoplamento de código e facilitar testes de unidade.
Mesmo sendo algo comum, muitos confundem DI com Inversão de Controle (Inversion of Control) ou simplesmente IoC. IoC é uma forma de usar DI sem ser explicito, deixando o próprio código/framework responsável por injetar as dependências.
IoC não anda sozinho, ele depende do Container de Injeção de Dependências (Dependency Injection Container) ou simplesmente DI Container. DI Container é responsável por armazenar as receitas/instâncias/valores que precisam ser executadas para se recuperar determinada dependência. …
Não precisa estar muito tempo envolvido direta ou indiretamente com o mercado de desenvolvimento de software para que o termo Full Stack faça parte do seu vocabulário.
A coisa fica ainda mais séria se você esta buscando uma colocação no mercado. Algumas vagas procuram abertamente profissionais full stack, outras deixam isso implícito com a quantidade de requisitos. Porém, mesmo sendo um termo comum, a definição de full stack não é.
Muitos resumem full Stack como um profissional que “faz back-end e front-end”, porém há muita divergência e coisas implícitas nessa afirmação.
Aqui na Decision6 estamos completando um ano de adoção do GraphQL, para comemorar, vou escrever alguns artigos falando sobre o que nos levou a usar GraphQL, como foi o processo de implementação e como estamos um ano depois de iniciada esta jornada.
GraphQL é uma Query Language. Em miúdos é uma especificação, com propósito similar a linguagens de query como SQL. GraphQL é agnóstico a linguagem de programação e a bancos de dados.
Dentro do seu contexto (linguagem de programação) vão haver maneiras de implementar o GraphQL, que se resume a definir e mapear seus recursos. Uma vez que este processo (definição e mapeamento) esteja feito, quem for consumir (client) tem em mãos todas as informações necessárias para fazer inúmeras combinações entre os recursos disponíveis. …
Este artigo tem o propósito de instigar você a pensar um pouco mais sobre críticas e na qualidade do código que você produz.
Antes de começar, preciso contextualizar o título, ele não remete exatamente o conteúdo deste artigo, porém foi a gíria mais próxima que consegui, entendedores entenderam. Aos demais, deixo este vídeo relaxante.
Estou com este artigo na gaveta faz alguns meses, na época recebi a seguinte mensagem no meu Telegram.
Vinicius eu fiz uma pergunta no grupo de javascript não pedi uma critica de cada linha de código que eu escrevo e nem a bosta de uma critica do jeito que eu faço minha pergunta até porque não entrei em um grupo de…
Este título é uma piada muito engraçada, preciso concordar. Porém, será mesmo que ele representa a verdade?
Focando mais em desenvolvimento Web, setor que abraça praticamente todos os outros setores e tem cada vez mais recursos (humanos, financeiros e tecnológicos). A Web é um monstro, há quem classifique o navegador como um sistema operacional, o que é uma realidade no caso do Chrome OS
Há muitos anos o foco era, e de certa forma ainda é, mobile. …
Automatizar tarefas é uma das coisas que mais fazemos no desenvolvimento de projetos. Há um mantra que diz: “toda tarefa repetitiva será automatizada, sempre, sem exceção”. Essa afirmação é verdadeira, porém toda automação precisa ser feita pensando nos impactos futuros dela.
Neste artigo vou descrever algumas técnicas para carregar de modo automático arquivos de rotas, usarei Restify como http-router, porém estas técnicas são agnósticas o suficiente para serem utilizada em outras ferramentas como Koa, Express e Hapi.
Importar e registrar manualmente arquivos de rota é uma tarefa repetitiva e chata. …
Comecei a explorar o uso de serviços em outro artigo, falei também de como usar serviços com o Vue.js. Neste artigo vou abordar uma técnica extremamente útil para se trabalhar com serviços em middlewares HTTP no Node.js.
Vou usar o Restify como referencia, porém esta técnica é válida para outras bibliotecas de rotas como Express, hapi ou koa. Pois a mecânica de middlewares é agnóstica.
É muito comum importar as dependências que vamos usar em um determinado middleware.
Esta é uma operação extremamente simples, porém seu teste dificilmente é simples. …
About