Blog do WebDevBr

Conheça os cursos gratuitos do WebDevBr! - Inscreva-se!

Blog do WebDevBr

5+5 temas premium e gratuitos para paineis administrativos

5+5 temas premium e gratuitos para paineis administrativos Separei aqui 5 templates pagos e 5 temas gratuitos, vários que rolaram em uma discussão rescente no Slack aqui do WebDevBr, então acredito que vai agradar muito gente. Temas premium Sing Web App Valor: $ 21,00 Minovate - Angular Admin Dashboard Valor: $ 24,00 SlickLab - Responsive Admin Dashboard Template Valor: $ 22,00 Pap…

AngularJs - Dicas para melhorar sua estrutura de projeto e código

Uma novidade que me fez repensar toda a organização dos meus projetos com AngularJs foi o novo recurso components da versão 1.5, na verdade eu sempre sentia uma coceirinha no cérebro quando olhava a antiga organização dos meus arquivos. Eu já usei várias formas de organização de diretórios e arquivos no AngularJs, uma delas era separando em controllers, factories, services e arquivos html, mas e…


Abrindo Git Bash direto no Sublime Text 3 com SideBarEnhancement

Se você usa Sublime Text com certeza deve conhecer o plugin SideBarEnhancement, ele adiciona recursos ao clique direito na Side Bar padrão do Sublime, é realmente um recurso impressindível pra mim aqui no WebDevBr. Só que ele não tem integração nativa com o GitBash (outro recurso do qual eu não sei mais viver sem), a solução para mim até então era: Clicar com o botão direito sobre o diretório …

Slim Framework 3 para quem não conhece - Entendendo o padrão MVC na prática

Slim Framework é um microframework PHP que ajuda você a escrever rapidamente aplicações web simples mas poderosas e APIs. Extremamente simples de se usar o Slim Framework oferece uma rápida e poderosa maneira de criar aplicações web com flexibilidade e a possibilidade de expansão de uma forma que frameworks como Laravel, CakePHP ou outros frameworks full stack não poderiam, claro que não é p…


Login com Lembra de mim no CakePHP 3

Um recurso básico, mas ao mesmo tempo extremamento delicado e longe de ser simples, a não ser do ponto de visto de um tolo, o famoso checkbox "lembrar de mim" nos formulários de login merece uma atenção dedicada e constante. Neste artigo quero mostrar como implementar um "lembrar de mim" na autenticação do CakePHP 3. Não vamos usar a senha do usuário, em vez disso vou usar um token aleatório qu…

Strategy - Padrões de Projeto no PHP

Uma das minhas soluções favoritas, o Strategy é um padrão de projeto comportamental que muita gente já usou sem saber! Este padrão de projeto é usado para encapsular seus códigos de forma a facilitar a expanção de recursos de forma organizada e eficiente, a grande diferença entre ele e outros padrões de projeto comportamentais é a forma simples como ele se apresenta. Imagine que você tem uma lo…


Conectando no banco de dados com o Eloquent - Entendendo o padrão MVC na prática

Continuando nossa série, desta vez quero mostrar como unir Illuminate/Database (vulgo Eloquent) e Slim Framework e assim prover-nos de uma sólida e eficiente camada de Model com ORM, Query Builder, multiplas conexões, tudo o que você tem direito e mais. Migrations Antes de configurar o Eloquent eu preciso de uma tabela no banco de dados (!!!), eu prezo muito a facilidade futura do deploy (publi…

Paginação no AngularJs

Neste artigo quero ilustrar como criar um sistema de paginação com AngularJs, mas mais que isso, quero ilustrar como você pode chegar no resultado final de forma organizada. Uma coisa que aprendi com orientação a objetos organizar minhas aplicações de forma a facilitar a expansão e a manutenção do código, isso quer dizer que eu gasto um tempo a mais durante a~s etapas iniciais para que possa eco…


Introdução ao Sass

Eu não tenho muito material de front-end aqui no WebDevBr, mas o que muitos não sabem é que eu comecei minha carreira como dev front-end e até hoje me atualizo nesta área e uma das melhores coisas que fiz foi aprender Sass para gerar meu CSS. É simples, você escreve em arquivos scss e com um comando já gera o css da forma que precisa, o começo é leve e sem dor, já que o scss aceita qualquer css …

Comece agora mesmo a utilizar o bower em seus projetos

Artigo por Frederico Ferreira; Web sites e sistemas WEB em geral utilizam, na maioria das vezes, alguns frameworks, bibliotecas, utilitários entro outros componentes. E o Bower pode administrar tudo isso para você. Pense bem, em vez de ter que entrar no site de cada framework que você quer e baixar os arquivos necessários, você pode automatizar este processo e baixar tudo de uma vez através do …


Push Notification no Android - Enviando notificações do seu servidor

A algumas semanas eu escrevi um artigo sobre local notifications aqui no WebDevBr, e prometi que traria sobre push notification também, pois bem, promessa cumprida. Para quem não leu o artigo passado, notifications são aquelas notificações que você recebe no celular quando alguma coisa acontece ou quando tem alguma promoção naquele joguinho que atrapalha sua vida de tão divertido. Por exemplo, q…

Padrão PSR-4 de desenvolvimento PHP - Criar um autoloader

A exatamente 2 anos, 8 meses, 1 semana e 2 dias atrás eu escrevi um artigo sobre a PSR-0, desde então muita coisa mudou na comunidade PHP e, infelizmente, eu aprendo e me atualizo num ritmo muito superior ao que consigo escrever, bem, o que quero dizer é: desculpem a demora. A PSR-4 veio para (como eu havia previso na época) atualizar a PSR-0 e deixar o autoload "mais flexível", a PSR-0 foi marc…


Backup automático de bancos de dados MySql em repositórios Git no Ubuntu

Eu tenho um cloud na Digital Ocean com Ubuntu e (obviamente) faço backup dos bancos de dados, o grande problema é que eu fazia o backup localmente (no cloud) e desta forma não abrangia todas as possibilidades de segurança, já que se algo der errado com o sistema operacional eu posso não conseguir recuperar meus backups. Pra ser completo eu preciso enviar para um local totalmente não relacionado …

Template Method - Padrões de Projeto no PHP

Template Method é um padrão de projeto comportamental e um dos meus preferidos já que ele define os métodos a serem usados na classe abstrata e a concreta apenas segue a regra, ou seja, eu tenho uma estrutura fixa e bem definida. O resultado é uma api mais simples e uma organização de código nas classes muito mais elaborada. É muito comum (comum != sempre) as classes concretas que adotam o Templ…


Local notification no Android - Agendando notificações a partir do celular do usuário

Muita gente me consulta sobre como fazer para o aplicativo Android mostrar aquelas notificações no estilo que WhatsApp, Facebook e muitos outros aplicativos e jogos fazem. Vamos ver se consigo ajudar! Em primeiro lugar você precisa entender que existem dois tipos diferentes de notificação, Local Notification e Push Notification. Local Notification parte do próprio celular, sem intervensão exter…

Orientação a objetos - Conceitos essenciais [exemplos em PHP]

Orientação a objetos é essencial para qualquer programador PHP (e de qualquer outra linguagem) que leve sua vida profissional a sério, mas muito do que abrange OO precisa de teoria, o que é horrível na realidade do ensino de programação nos dias de hoje, o público quer prática e mais prática e nem sempre isso é possível. Acredite em mim, as vezes a prática atrapalha um pouco. Este artigo terá si…


Interfaces - Manual TypeScript

Um dos principios fundamentais do TypeScript é o tipo de verificação focada na "forma" dos dados. Este tipo de checagem é chamado de "duck typing" ou "structural subtyping". No TypeScript, interfaces são usadas para ocupar o papel de "dar forma" aos dados e são uma maneira poderosa de definir contratos dentro do seu código, bem como contratos com código fora do seu projeto. Em algumas linguag…

SQLite no Ionic com ngCordova

SQLite é um banco de dados leve, simples e muito usado no mundo backend e também pode ser usado no Ionic. A grande questão é que o Ionic já nos da acesso a LocalStorage que é muitas vezes mais simples de usar do que SQL, além de não precisar configurar nada. Mas ele tem um limite de 5mb de espaço, confesso que não é fácil escrever 5mb de texto e em muitos casos isso vai ser suficiente, porém ape…


A escolha das ferramentas - Entendendo o padrão MVC na prática

Seguindo com nossa série de artigos sobre MVC, desta vez, vamos instalar e configurar a estrutura do nosso projeto, quero falar um pouco do motivo da escolha de cada ferramenta e se possível, algumas alternativas, neste artigo vou falar um pouco sobre cada componente e também já criar os arquivos iniciais, responsáveis por retornar os dados de configuração. Os outros artigos desta série. O Comp…

Tipos básicos - Manual do TypeScript

Como era de se esperar, TypeScript suporta todos os tipos básicos de dados que o JavaScript, assim como um adicional para enumeração. TypeScript também suporta tipagem da variável, forçando que ela aceite apenas o especificado, para isso seguimos a seguinte regra: var nomeDaVariavel: tipo = valor; Embora eu tenha usado a palavra-chave var, ela não é obrigatória, tem o conceito apenas de infor…


Página 1 de 5, mostrando 20 artigos de um total de 96, começando em 1, terminando em 20

* Parcelamento apenas cartão de crédito! Pode haver uma pequena variação no parcelamento em relação a simulações apresentadas!