Fiz o PHP falar: Lendo a newsletter do Filipe Deschamps | Dias de Dev
Será que dá pra ler e-mails com #PHP? E fazer o computador falar usando PHP? Nesse vídeo eu fiz um leitor de notícias 100% em PHP que lê determinados e-mails em voz alta pra mim.
Recentemente eu assisti um vídeo no canal @Refatorando que usando Python criou um leitor para a newsletter do @FilipeDeschamps e então eu pensei: Por que não fazer um com PHP?
Acho válido citar que há formas muito mais sofisticadas de "fazer o computador falar", mas eu preferi seguir pela abordagem mais simples possível. Se quiser ver algo mais completo e complexo, essa palestra é sensacional: https://www.youtube.com/watch?v=m050iDb5H2A
Esses foram os componentes usados: - phpimap/phpimap - cviniciussdias/php-text-to-speech
Para mais conteúdos sobre boas práticas de programação, testes, arquitetura de software e tudo que há de bom, não se esqueça de se inscrever e ativar o sininho para receber notificações.
No #PHP 8.3, que vai ser lançado em Dezembro de 2023, nós vamos poder usar uma variável para acessar uma constante de uma classe PHP.
Se quiser aprender mais sobre programação e tecnologia em geral, aqui tem 10% de desconto na Alura:
http://alura.tv/diasdedev
E se quiser apoiar o canal e me incentivar a continuar criando conteúdo gratuito, você pode considerar me dar um "Valeu Demais" aqui no YouTube ou se tornar um "sponsor" lá no GitHub:
https://github.com/sponsors/CViniciusSDias
----------------------------------
Para mais conteúdos sobre boas práticas de programação, testes, arquitetura de software e tudo que há de bom, não se esqueça de se inscrever e ativar o sininho para receber notificações.
Para entrar em contato:
Telegram: https://t.me/diasdedev
Twitter: https://twitter.com/cviniciussdias
LinkedIn: https://www.linkedin.com/in/cviniciussdias/
GitHub: https://github.com/CViniciusSDias/
...
https://www.youtube.com/watch?v=h3dZlJrpvi0
Já pensou em criar aplicações Desktop com PHP? Nesse vídeo eu vou te mostrar que é possível sim criar uma aplicação com interface gráfica nativa do sistema operacional usando somente código PHP.
Nós não vamos usar nenhum componente abandonado como PHP-GTK nem alguma extensão esquecida como o PHP UI. Vamos usar um componente recente e bastante ativo, rodando nas versões atuais do PHP (PHP 8.1, inclusive).
A possibilidade de criar aplicações para Windows ou qualquer outro sistema operacional se dá através do uso da extensão FFI que nos permite, através de código em PHP, chamar código em C. Com isso nós podemos usar bibliotecas de criação de janelas com PHP.
Nesse vídeo o pacote php-tkui é utilizado. Esse componente faz uso das bibliotecas Tcl/Tk para criação das janelas no sistema operacional.
Importante citar que nós não usamos técnicas como WebViews assim como o Electron e pacotes similares fazem. Nós estamos criando janelas nativas do sistema operacional com esse código.
0:00 - Introdução
0:29 - Como criar aplicações desktop com PHP
1:52 - Como o php-tkui cria janelas
2:26 - O que é e como instalar Tcl/Tk
3:40 - Como criar uma aplicação Windows com PHP
3:55 - Como criar uma aplicação Desktop com PHP
8:42 - Quando criar aplicações Desktop usando PHP
10:38 - Como apoiar o projeto php-tkui
11:46 - Conclusão
Se quiser aprender mais sobre programação e tecnologia em geral, aqui tem 10% de desconto na Alura:
https://alura.com.br/promocao/diasdedev
E se quiser apoiar o canal e me incentivar a continuar criando conteúdo gratuito, você pode considerar me dar um "Valeu Demais" aqui no YouTube ou se tornar um "sponsor" lá no GitHub:
https://github.com/sponsors/CViniciusSDias
----------------------------------
Para mais conteúdos sobre boas práticas de programação, testes, arquitetura de software e tudo que há de bom, não se esqueça de se inscrever e ativar o sininho para receber notificações.
Para entrar em contato:
Telegram: https://t.me/diasdedev
Twitter: https://twitter.com/cviniciussdias
LinkedIn: https://www.linkedin.com/in/cviniciussdias/
GitHub: https://github.com/CViniciusSDias/
...
https://www.youtube.com/watch?v=5yhJMcCVNSI
As tags de abertura e fechamento do PHP precisam ser usadas corretamente para evitar erros bem chatos de encontrar em nossas aplicações. Nesse vídeo eu te mostro o erro e explico o motivo dele acontecer.
Se quiser aprender mais sobre programação e tecnologia em geral, aqui tem 10% de desconto na Alura:
http://alura.tv/diasdedev
E se quiser apoiar o canal e me incentivar a continuar criando conteúdo gratuito, você pode considerar me dar um "Valeu Demais" aqui no YouTube ou se tornar um "sponsor" lá no GitHub:
https://github.com/sponsors/CViniciusSDias
----------------------------------
Para mais conteúdos sobre boas práticas de programação, testes, arquitetura de software e tudo que há de bom, não se esqueça de se inscrever e ativar o sininho para receber notificações.
Para entrar em contato:
Telegram: https://t.me/diasdedev
Twitter: https://twitter.com/cviniciussdias
LinkedIn: https://www.linkedin.com/in/cviniciussdias/
GitHub: https://github.com/CViniciusSDias/
0:00 - Introdução
0:23 - Como a Web funciona
1:28 - Como o PHP funciona na Web
2:30 - Como o PHP funciona com HTML
2:55 - Conhecendo o problema com as tags PHP
5:21 - Por que o erro acontece?
7:11 - Por que não fechar a tag do PHP?
7:51 - Configuração de mimetype padrão do PHP
9:17 - Revisão do conteúdo
10:00 - Conclusão
...
https://www.youtube.com/watch?v=KXu8RnGynPk
Existe muita confusão sobre o que de fato é Domain-Driven Design, o famoso DDD. Nesse vídeo a gente vai explicar o que é e o que não é Domain-Driven Design. Nós vamos entender que DDD não é um padrão arquitetural e que embora arquitetura de software auxilie nessa área de estudo, são coisas diferentes.
Se você ainda não conhece bem sobre DDD, com certeza vão ficar bastantes dúvidas. Isso é perfeitamente normal. Aproveite a sessão de comentários para tirá-las e aqui fica uma dica: Na Alura eu tenho treinamentos tanto de DDD quanto de arquitetura, falando de Clean Architecture (Arquitetura Limpa), Arquitetura Hexagonal, etc. Recomendo dar uma olhada. Aqui tem 10% de desconto para você assinar a plataforma:
https://www.alura.com.br/promocao/diasdedev
0:00 - Introdução
0:55 - O que não é DDD (Domain-Driven Design)
1:30 - O que é DDD (Dromain-Driven Design)
3:24 - Origem do termo DDD: Livro do Eric Evans
4:29 - Padrões táticos vs Padrões estratégicos
5:43 - Linguagem Ubíqua (Linguagem onipresente)
6:40 - Bounded Contexts (contextos delimitados)
8:00 - DDD e Arquiteturas de Software
11:34 - Resumo do que é Domain-Driven Design
12:41 - DDD não é sobre Arquiteura
13:30 - Conclusão
----------------------------------
Para mais conteúdos sobre boas práticas de programação, testes, arquitetura de software e tudo que há de bom, não se esqueça de se inscrever e ativar o sininho para receber notificações.
Para entrar em contato:
Telegram: https://t.me/diasdedev
Twitter: https://twitter.com/cviniciussdias
LinkedIn: https://www.linkedin.com/in/cviniciussdias/
GitHub: https://github.com/CViniciusSDias/
...
https://www.youtube.com/watch?v=SNdGV0c40yo
System Design (ou Arquitetura de Sistemas) é um tema que tem estado muito em alta ultimamente. Nesse vídeo eu vou bater um papo com vocês sobre o que é System design e explicar que esse assunto não é somente para entrevistas de emprego.
Se quiser aprender mais sobre system design, arquitetura, programação e tecnologia em geral, aqui tem 10% de desconto na Alura:
http://alura.tv/diasdedev
E se quiser apoiar o canal e me incentivar a continuar criando conteúdo gratuito, você pode considerar me dar um "Valeu Demais" aqui no YouTube ou se tornar um "sponsor" lá no GitHub:
https://github.com/sponsors/CViniciusSDias
----------------------------------
Para mais conteúdos sobre boas práticas de programação, testes, arquitetura de software e tudo que há de bom, não se esqueça de se inscrever e ativar o sininho para receber notificações.
Para entrar em contato:
Telegram: https://t.me/diasdedev
Twitter: https://twitter.com/cviniciussdias
LinkedIn: https://www.linkedin.com/in/cviniciussdias/
GitHub: https://github.com/CViniciusSDias/
0:00 - Introdução
0:17 - O que é System design ou arquitetura de sistemas?
1:14 - System design vs Design system
1:43 - Exemplos de decisões de arquitetura
7:58 - System design é só para entrevistas?
11:02 - Revisão do conceito
11:44 - Conclusão
...
https://www.youtube.com/watch?v=mkEd5OP-oKA
Você já pensou em ajudar de alguma forma a linguagem de programação com a qual trabalha? Eu mesmo já me perguntei várias vezes como contribuir com o PHP. Neste vídeo nós vamos ver como podemos ajudar na tradução da documentação do PHP.
Traduzir a documentação do PHP é uma tarefa surpreendentemente fácil e não exige nenhum conhecimento avançado nem de programação nem de inglês. Você vai ver neste vídeo que o processo é bastante amigável para iniciantes também.
0:00 - Introdução
0:28 - Problema ao compilar o PHP
0:47 - Vendo documentação desatualizada
1:46 - GitHub da tradução brasileira da documentação do PHP
3:11 - Estatísticas de tradução da documentação do PHP
4:14 - Entendendo a lista de traduções desatualizadas
5:32 - Como encontrar um arquivo de tradução no GitHub da documentação
7:44 - Black week da Alura
8:33 - Abrindo o projeto da documentação do PHP no editor do GitHub
9:40 - Realizando as alterações no arquivo desatualizado
10:02 - Atualizando a tag de revisão da tradução
11:08 - Enviando o Pull Request para a tradução do PHP
12:37 - Conclusão
Se quiser aprender mais sobre programação e tecnologia em geral, aqui tem 10% de desconto na Alura:
https://alura.com.br/promocao/diasdedev
E se quiser apoiar o canal e me incentivar a continuar criando conteúdo gratuito, você pode considerar me dar um "Valeu Demais" aqui no YouTube ou se tornar um "sponsor" lá no GitHub:
https://github.com/sponsors/CViniciusSDias
----------------------------------
Para mais conteúdos sobre boas práticas de programação, testes, arquitetura de software e tudo que há de bom, não se esqueça de se inscrever e ativar o sininho para receber notificações.
Para entrar em contato:
Telegram: https://t.me/diasdedev
Twitter: https://twitter.com/cviniciussdias
LinkedIn: https://www.linkedin.com/in/cviniciussdias/
GitHub: https://github.com/CViniciusSDias/
...
https://www.youtube.com/watch?v=ocsjfkfmLk0
Mais uma das novidades do #PHP8 que trazem mudanças na sintaxe: Named arguments, ou em português, parâmetros nomeados.
Com essa nova funcionalidade do PHP nós podemos, nas chamadas das funções, explicitar o nome do parâmetro que estamos informando. Isso traz algumas vantagens e algumas particularidades.
Nesse vídeo eu mostro na prática esses detalhes.
(0:00) - Introdução
(1:05) - RFC de Named Arguments
(2:20) - Quando a RFC é mais útil?
(2:48) - Aviso sobre Design de Código
(3:25) - Ignorando parâmetros opcionais
(4:12) - Particularidade da RFC
(4:54) - Mão na massa
(8:56) - PHPStorm
(9:44) - Conclusão
----------------------------------
Para mais conteúdos sobre boas práticas de programação, testes, arquitetura de software e tudo que há de bom, não se esqueça de se inscrever e ativar o sininho para receber notificações.
Para entrar em contato:
Telegram: https://t.me/cviniciussdias
Twitter: https://twitter.com/cviniciussdias
LinkedIn: https://www.linkedin.com/in/vinícius-dias/
GitHub: https://github.com/CViniciusSDias/
...
https://www.youtube.com/watch?v=epla4NyobjU
Entenda nesse vídeo o que são delimitadores de uma expressão regular.
Se quiser aprender mais sobre programação e tecnologia em geral, aqui tem 10% de desconto na Alura:
http://alura.tv/diasdedev
E se quiser apoiar o canal e me incentivar a continuar criando conteúdo gratuito, você pode considerar me dar um "Valeu Demais" aqui no YouTube ou se tornar um "sponsor" lá no GitHub:
https://github.com/sponsors/CViniciusSDias
----------------------------------
Para mais conteúdos sobre boas práticas de programação, testes, arquitetura de software e tudo que há de bom, não se esqueça de se inscrever e ativar o sininho para receber notificações.
Para entrar em contato:
Telegram: https://t.me/diasdedev
Twitter: https://twitter.com/cviniciussdias
LinkedIn: https://www.linkedin.com/in/cviniciussdias/
GitHub: https://github.com/CViniciusSDias/
...
https://www.youtube.com/watch?v=b0evQsA-PFQ
O termo TDD (Test-Driven Development) significa desenvolvimento guiado a testes. Neste vídeo vamos entender o que é #TDD e como aplicar na prática.
É uma técnica relativamente simples mas que pode trazer inúmeras vantagens para nossa base de códigos, como:
1. Garantir que estamos testando tudo que é necessário;
2. Nos fazer pensar nas APIs públicas de nosso código;
3. Permitir refatorações com segurança, e muito mais.
Vou deixar aqui alguns links sobre #testes onde o conceito de #TestesDeUnidade é explicado de forma bem mais detalhada:
- https://amzn.to/39qMRe4 (Testes de Software: Um guia prático)
- https://amzn.to/3wfX4Uc (Test-Driven Development: Teste e Design no Mundo Real com PHP)
- https://amzn.to/3djdd2K (Diversos livros do Mauricio Aniche, grande referência em testes)
- https://amzn.to/2PeC0gq (xUnit Test Patterns: Refactoring Test Code [Livro clássico sobre testes])
- https://amzn.to/3fuoYpt (Test Driven Development: By Example [Livro do famoso Kent Beck])
----------------------------------
Para mais conteúdos sobre boas práticas de programação, testes, arquitetura de software e tudo que há de bom, não se esqueça de se inscrever e ativar o sininho para receber notificações.
Para entrar em contato:
Telegram: https://t.me/cviniciussdias
Twitter: https://twitter.com/cviniciussdias
LinkedIn: https://www.linkedin.com/in/vinícius-dias/
GitHub: https://github.com/CViniciusSDias/
...
https://www.youtube.com/watch?v=o_C_qxhPws4