Este documento fornece dicas para juniores construírem suas carreiras em PHP, incluindo: 1) como produzir códigos profissionais desde o início, 2) como não ser desrespeitado em fóruns, 3) como conseguir ajuda da comunidade PHP.
O documento discute as vantagens e desvantagens de duas tecnologias populares para desenvolvimento web Java: Java EE e Spring Framework. Defensores de ambos os lados fazem argumentos sobre qual tecnologia é melhor ou mais apropriada para diferentes casos de uso. A discussão também aborda preocupações sobre a direção futura e manutenção de cada tecnologia.
Nesta palestra, vemos como é a carreira de um desenvolvedor Java, falamos um pouco sobre o mercado, sobre o desenvolvimento de um profissional e damos algumas dicas de como se tornar um ninja.
Este documento fornece várias estratégias para implementar soluções improvisadas de forma permanente, conhecidas como "Programação Orientada a Gambiarras" (POG). Algumas dessas estratégias incluem: comentar código para "resolver problemas", usar exceções para controle de fluxo, e ignorar boas práticas de programação como testes e versionamento. O objetivo é fazer com que sistemas "funcionem" da maneira mais rápida possível, mesmo que isso gere problemas a longo prazo.
Este documento fornece técnicas e dicas para desenvolvimento em PHP sem o uso de "Programação Orientada a Gambiarras" (POG). Ele discute o que é POG, exemplos comuns, causas e ferramentas para evitá-la, incluindo técnicas de programação inspiradas por Chuck Norris.
Pequena apresentação sobre Coding Dojo, para o primeiro Coding Dojo Sankhya.
Essa apresentação é um resumo de muitas outras, dentre as quais:
http://pt.slideshare.net/serge_rehem/coding-dojo-em-5-minutos
http://pt.slideshare.net/alextercete/coding-dojo-e-tdd
http://pt.slideshare.net/marloncarvalho/coding-dojo-5328510
http://pt.slideshare.net/williansdepaula/coding-dojo-10208494
Ela foi usada para uma apresentação de 10 min.
1) O documento apresenta dicas para se tornar um programador pragmático, focando em princípios como simplicidade, reutilização de código, manutenibilidade e adaptabilidade.
2) É destacada a importância de ter um portfólio de conhecimento atualizado com novas linguagens, livros e cursos para se manter relevante no mercado.
3) Ferramentas básicas como controle de versão, editores de texto e debuggers são apresentadas como essenciais para o trabalho do programador pragmático.
O documento fornece 12 dicas para se tornar um melhor desenvolvedor de software: 1) Aprenda lógica de programação antes de linguagens específicas, 2) Planeje projetos antes de começar a codificar, 3) Experimente novas tecnologias e tendências da área.
O documento discute sobre a linguagem de programação PHP, destacando que é uma linguagem amplamente utilizada, com grande comunidade e ferramentas, porém com falta de profissionais qualificados. O autor também enfatiza a importância da evolução contínua através do estudo e da prática, sem se preocupar demais com a perfeição.
O documento discute as vantagens e desvantagens de duas tecnologias populares para desenvolvimento web Java: Java EE e Spring Framework. Defensores de ambos os lados fazem argumentos sobre qual tecnologia é melhor ou mais apropriada para diferentes casos de uso. A discussão também aborda preocupações sobre a direção futura e manutenção de cada tecnologia.
Nesta palestra, vemos como é a carreira de um desenvolvedor Java, falamos um pouco sobre o mercado, sobre o desenvolvimento de um profissional e damos algumas dicas de como se tornar um ninja.
Este documento fornece várias estratégias para implementar soluções improvisadas de forma permanente, conhecidas como "Programação Orientada a Gambiarras" (POG). Algumas dessas estratégias incluem: comentar código para "resolver problemas", usar exceções para controle de fluxo, e ignorar boas práticas de programação como testes e versionamento. O objetivo é fazer com que sistemas "funcionem" da maneira mais rápida possível, mesmo que isso gere problemas a longo prazo.
Este documento fornece técnicas e dicas para desenvolvimento em PHP sem o uso de "Programação Orientada a Gambiarras" (POG). Ele discute o que é POG, exemplos comuns, causas e ferramentas para evitá-la, incluindo técnicas de programação inspiradas por Chuck Norris.
Pequena apresentação sobre Coding Dojo, para o primeiro Coding Dojo Sankhya.
Essa apresentação é um resumo de muitas outras, dentre as quais:
http://pt.slideshare.net/serge_rehem/coding-dojo-em-5-minutos
http://pt.slideshare.net/alextercete/coding-dojo-e-tdd
http://pt.slideshare.net/marloncarvalho/coding-dojo-5328510
http://pt.slideshare.net/williansdepaula/coding-dojo-10208494
Ela foi usada para uma apresentação de 10 min.
1) O documento apresenta dicas para se tornar um programador pragmático, focando em princípios como simplicidade, reutilização de código, manutenibilidade e adaptabilidade.
2) É destacada a importância de ter um portfólio de conhecimento atualizado com novas linguagens, livros e cursos para se manter relevante no mercado.
3) Ferramentas básicas como controle de versão, editores de texto e debuggers são apresentadas como essenciais para o trabalho do programador pragmático.
O documento fornece 12 dicas para se tornar um melhor desenvolvedor de software: 1) Aprenda lógica de programação antes de linguagens específicas, 2) Planeje projetos antes de começar a codificar, 3) Experimente novas tecnologias e tendências da área.
O documento discute sobre a linguagem de programação PHP, destacando que é uma linguagem amplamente utilizada, com grande comunidade e ferramentas, porém com falta de profissionais qualificados. O autor também enfatiza a importância da evolução contínua através do estudo e da prática, sem se preocupar demais com a perfeição.
O documento discute os benefícios de adotar frameworks para desenvolvimento de software. O autor argumenta que frameworks aumentam a produtividade, facilitam a manutenção do código e promovem boas práticas de programação orientada a objetos. Ele também fornece dicas para iniciar o uso de frameworks e menciona algumas opções populares como Laravel e Django.
Rafael Dohms é um desenvolvedor PHP sênior com experiência de 9 anos no mercado. O documento resume três pilares para o sucesso na carreira de desenvolvedor PHP: 1) Conhecimento e mercado; 2) Marketing pessoal; 3) Networking e habilidades sociais. O documento também discute certificação PHP, contribuição para projetos open source e estratégias para progredir da posição de iniciante para sênior.
1. O documento discute a carreira de Rafael Dohms como desenvolvedor PHP sênior e as dicas que ele oferece para quem deseja seguir essa área.
2. É destacada a importância da certificação ZCE, da divulgação do trabalho por meio de blogs, projetos e redes sociais e da participação em eventos e grupos da comunidade PHP.
3. O texto também fornece informações sobre a preparação para a certificação ZCE e sobre a conferência ZendCon como uma oportunidade para networking.
O documento descreve a jornada educacional e profissional de Eduardo Bregaida, desde sua educação inicial em escolas públicas até sua conquista de vários empregos e qualificações, incluindo se tornar um piloto privado e comercial. A mensagem central é que, através do estudo constante, dedicação e força de vontade, qualquer um pode conquistar seus sonhos, não importa quantas pessoas estejam contra.
Sete Passos Para Um Programador De SucessoPlaneta Código
O documento descreve sete passos para se tornar um programador de sucesso: 1) Aprender lógica de programação, que é a base para programação; 2) Escolher uma linguagem de programação como Java, PHP, Python ou Ruby; 3) Aprender sobre banco de dados como MySQL ou SQLite; 4) Estudar padrões de projeto para desenvolver códigos de qualidade; 5) Utilizar frameworks para aumentar produtividade; 6) Conhecer metodologias ágeis de desenvolvimento; 7) Dedicar-se à arquitetura e qualidade do software
O documento fornece uma introdução sobre automação de testes de software com Selenium e BDD, focando no front-end. Ele discute conceitos como ágil, TDD, BDD, frameworks para teste end-to-end, HTML, CSS, XPath, e dá instruções sobre como configurar o ambiente de desenvolvimento com Node.js, TypeScript, Git e navegadores.
Front-end javascript unit testing and mockfelipefsilva
O documento discute técnicas de teste de software como Test Driven Development (TDD) e mocks. Ele lista benefícios do TDD como identificar falhas de design mais cedo e facilitar a cobertura de requisitos, e discute ferramentas para testes unitários, funcionais e mocks.
1. O documento descreve a linguagem de programação PHP, incluindo sua história, características e popularidade.
2. PHP é uma linguagem server-side focada em criação de sistemas para web, criada em 1994 e amplamente utilizada em mais de 21 milhões de domínios.
3. A sintaxe de PHP é simples e influenciada por C, Perl e Java, tornando-a fácil de aprender, embora dominá-la completemente seja desafiador.
10 coisas que você precisa saber para se tornar um desenvolvedor javaMarcelo Rodrigues
1. Java é uma linguagem de programação orientada a objetos usada principalmente para desenvolvimento web.
2. É importante montar uma boa base de conhecimentos sobre conceitos de orientação a objetos e padrões de projeto.
3. Frameworks como Spring facilitam o desenvolvimento e é essencial aprender sobre tecnologias como JDBC, Hibernate e scripts do lado cliente.
Feature Injection - Descobrindo e entregando valor testávelHélio Medeiros
O documento discute técnicas para descobrir e entregar valor de forma testável através de feature injection em três etapas: 1) injetar a funcionalidade, 2) detalhar em exemplos, 3) aperfeiçoar com críticas. A técnica começa pelo objetivo e valor de negócios, escreve casos de uso e histórias de usuário para esclarecer com exemplos, e realiza testes para entregar valor de forma iterativa.
O documento discute anti-padrões de programação PHP, como fazer coisas erradas e evitar. Ele explica o que são anti-padrões e por que devemos conhecê-los, e discute exemplos específicos como "spaghetti code" e "overdesign". O documento encoraja os desenvolvedores a pensarem em segurança, usar frameworks e seguir padrões comprovados.
O documento fornece dicas para se tornar um melhor programador, incluindo aprender mais sobre a regra de negócio da aplicação, fazer perguntas, contribuir para projetos open source, escrever código legível, aprender várias linguagens de programação, e praticar atividades físicas.
TDD: Técnicas, Benefícios e Limitação Icaro Camelo
O documento discute os benefícios, técnicas e limitações do Desenvolvimento Orientado a Testes (TDD). Ele descreve como o TDD pode melhorar o sucesso de projetos, reduzir bugs e aumentar a escalabilidade através da aplicação de testes de unidade. As técnicas discutidas incluem escrever testes de forma incremental ("Baby Steps"), usar substitutos ("Fake it!") e simulações ("Mocks") para isolar unidades e permitir refatoração. Potenciais limitações mencionadas são a resistência da equipe e falta de tempo para aprender a ab
Nessa palestra relato minha experiência não como um desenvolvedor de software altamente sinistro com duzentos anos de experiência e mil livros publicados - mas sim como um "mero mortal", um desenvolvedor "de verdade", do "mundo real" aplicando a teoria que aprendeu do TDD.
Componentes Transformers: Combinando o melhor de cada frameworkFlávio Lisboa
Inicialmente trataremos sobre padrões de construção de componentes, para então falar sobre interoperabilidade entre aplicações PHP e bibliotecas de componentes interoperáveis. Finalmente mostraremos exemplos de combinações de componentes de diferentes frameworks.
Ricardo Martins apresenta melhores práticas para desenvolvimento no Magento, incluindo criação de temas e pacotes, desenvolvimento e instalação de módulos, versionamento, ambientes de desenvolvimento e playground, e ferramentas úteis como o Modgit.
O documento fornece uma introdução ao CMS Joomla!. Resume que Joomla! ajuda a construir sites de forma fácil e profissional, sem necessidade de código, oferecendo recursos como gerenciamento de conteúdo, templates impressionantes e grande comunidade. Joomla! é baseado em PHP e MySQL e foi criado em 2005 como sucessor do Mambo CMS.
Formacao completa-java-web-alex-fernando-egidioFlávio Lima
Este documento fornece um guia passo a passo para se tornar um programador Java Web. Ele discute a importância de não pular etapas, focar na lógica de programação e algoritmos, e se especializar em uma linguagem. O documento também lista alguns projetos de exemplo e frameworks que serão cobertos, como Spring e Hibernate, e discute questões como onde começar e ter foco e objetivos claros.
O documento fornece uma visão geral de várias áreas relacionadas à carreira de desenvolvimento de software, incluindo frontend, backend, DevOps, soft skills e considerações sociais. Ele discute os principais tópicos em cada área, como estruturas de dados, versionamento, arquitetura de projetos, cloud computing e inclusão. O documento enfatiza a importância contínua de aprendizado e compartilhamento de conhecimento.
O documento apresenta os principais pontos sobre modelagem ágil de acordo com uma palestra. A modelagem ágil é guiada por valores como comunicação, simplicidade e feedback, além de princípios como ter o software como objetivo principal, modelar com um propósito e encarar a mudança. A documentação ágil deve fornecer valor máximo ao cliente de forma magra, com foco no objetivo.
O documento discute os benefícios de adotar frameworks para desenvolvimento de software. O autor argumenta que frameworks aumentam a produtividade, facilitam a manutenção do código e promovem boas práticas de programação orientada a objetos. Ele também fornece dicas para iniciar o uso de frameworks e menciona algumas opções populares como Laravel e Django.
Rafael Dohms é um desenvolvedor PHP sênior com experiência de 9 anos no mercado. O documento resume três pilares para o sucesso na carreira de desenvolvedor PHP: 1) Conhecimento e mercado; 2) Marketing pessoal; 3) Networking e habilidades sociais. O documento também discute certificação PHP, contribuição para projetos open source e estratégias para progredir da posição de iniciante para sênior.
1. O documento discute a carreira de Rafael Dohms como desenvolvedor PHP sênior e as dicas que ele oferece para quem deseja seguir essa área.
2. É destacada a importância da certificação ZCE, da divulgação do trabalho por meio de blogs, projetos e redes sociais e da participação em eventos e grupos da comunidade PHP.
3. O texto também fornece informações sobre a preparação para a certificação ZCE e sobre a conferência ZendCon como uma oportunidade para networking.
O documento descreve a jornada educacional e profissional de Eduardo Bregaida, desde sua educação inicial em escolas públicas até sua conquista de vários empregos e qualificações, incluindo se tornar um piloto privado e comercial. A mensagem central é que, através do estudo constante, dedicação e força de vontade, qualquer um pode conquistar seus sonhos, não importa quantas pessoas estejam contra.
Sete Passos Para Um Programador De SucessoPlaneta Código
O documento descreve sete passos para se tornar um programador de sucesso: 1) Aprender lógica de programação, que é a base para programação; 2) Escolher uma linguagem de programação como Java, PHP, Python ou Ruby; 3) Aprender sobre banco de dados como MySQL ou SQLite; 4) Estudar padrões de projeto para desenvolver códigos de qualidade; 5) Utilizar frameworks para aumentar produtividade; 6) Conhecer metodologias ágeis de desenvolvimento; 7) Dedicar-se à arquitetura e qualidade do software
O documento fornece uma introdução sobre automação de testes de software com Selenium e BDD, focando no front-end. Ele discute conceitos como ágil, TDD, BDD, frameworks para teste end-to-end, HTML, CSS, XPath, e dá instruções sobre como configurar o ambiente de desenvolvimento com Node.js, TypeScript, Git e navegadores.
Front-end javascript unit testing and mockfelipefsilva
O documento discute técnicas de teste de software como Test Driven Development (TDD) e mocks. Ele lista benefícios do TDD como identificar falhas de design mais cedo e facilitar a cobertura de requisitos, e discute ferramentas para testes unitários, funcionais e mocks.
1. O documento descreve a linguagem de programação PHP, incluindo sua história, características e popularidade.
2. PHP é uma linguagem server-side focada em criação de sistemas para web, criada em 1994 e amplamente utilizada em mais de 21 milhões de domínios.
3. A sintaxe de PHP é simples e influenciada por C, Perl e Java, tornando-a fácil de aprender, embora dominá-la completemente seja desafiador.
10 coisas que você precisa saber para se tornar um desenvolvedor javaMarcelo Rodrigues
1. Java é uma linguagem de programação orientada a objetos usada principalmente para desenvolvimento web.
2. É importante montar uma boa base de conhecimentos sobre conceitos de orientação a objetos e padrões de projeto.
3. Frameworks como Spring facilitam o desenvolvimento e é essencial aprender sobre tecnologias como JDBC, Hibernate e scripts do lado cliente.
Feature Injection - Descobrindo e entregando valor testávelHélio Medeiros
O documento discute técnicas para descobrir e entregar valor de forma testável através de feature injection em três etapas: 1) injetar a funcionalidade, 2) detalhar em exemplos, 3) aperfeiçoar com críticas. A técnica começa pelo objetivo e valor de negócios, escreve casos de uso e histórias de usuário para esclarecer com exemplos, e realiza testes para entregar valor de forma iterativa.
O documento discute anti-padrões de programação PHP, como fazer coisas erradas e evitar. Ele explica o que são anti-padrões e por que devemos conhecê-los, e discute exemplos específicos como "spaghetti code" e "overdesign". O documento encoraja os desenvolvedores a pensarem em segurança, usar frameworks e seguir padrões comprovados.
O documento fornece dicas para se tornar um melhor programador, incluindo aprender mais sobre a regra de negócio da aplicação, fazer perguntas, contribuir para projetos open source, escrever código legível, aprender várias linguagens de programação, e praticar atividades físicas.
TDD: Técnicas, Benefícios e Limitação Icaro Camelo
O documento discute os benefícios, técnicas e limitações do Desenvolvimento Orientado a Testes (TDD). Ele descreve como o TDD pode melhorar o sucesso de projetos, reduzir bugs e aumentar a escalabilidade através da aplicação de testes de unidade. As técnicas discutidas incluem escrever testes de forma incremental ("Baby Steps"), usar substitutos ("Fake it!") e simulações ("Mocks") para isolar unidades e permitir refatoração. Potenciais limitações mencionadas são a resistência da equipe e falta de tempo para aprender a ab
Nessa palestra relato minha experiência não como um desenvolvedor de software altamente sinistro com duzentos anos de experiência e mil livros publicados - mas sim como um "mero mortal", um desenvolvedor "de verdade", do "mundo real" aplicando a teoria que aprendeu do TDD.
Componentes Transformers: Combinando o melhor de cada frameworkFlávio Lisboa
Inicialmente trataremos sobre padrões de construção de componentes, para então falar sobre interoperabilidade entre aplicações PHP e bibliotecas de componentes interoperáveis. Finalmente mostraremos exemplos de combinações de componentes de diferentes frameworks.
Ricardo Martins apresenta melhores práticas para desenvolvimento no Magento, incluindo criação de temas e pacotes, desenvolvimento e instalação de módulos, versionamento, ambientes de desenvolvimento e playground, e ferramentas úteis como o Modgit.
O documento fornece uma introdução ao CMS Joomla!. Resume que Joomla! ajuda a construir sites de forma fácil e profissional, sem necessidade de código, oferecendo recursos como gerenciamento de conteúdo, templates impressionantes e grande comunidade. Joomla! é baseado em PHP e MySQL e foi criado em 2005 como sucessor do Mambo CMS.
Formacao completa-java-web-alex-fernando-egidioFlávio Lima
Este documento fornece um guia passo a passo para se tornar um programador Java Web. Ele discute a importância de não pular etapas, focar na lógica de programação e algoritmos, e se especializar em uma linguagem. O documento também lista alguns projetos de exemplo e frameworks que serão cobertos, como Spring e Hibernate, e discute questões como onde começar e ter foco e objetivos claros.
O documento fornece uma visão geral de várias áreas relacionadas à carreira de desenvolvimento de software, incluindo frontend, backend, DevOps, soft skills e considerações sociais. Ele discute os principais tópicos em cada área, como estruturas de dados, versionamento, arquitetura de projetos, cloud computing e inclusão. O documento enfatiza a importância contínua de aprendizado e compartilhamento de conhecimento.
O documento apresenta os principais pontos sobre modelagem ágil de acordo com uma palestra. A modelagem ágil é guiada por valores como comunicação, simplicidade e feedback, além de princípios como ter o software como objetivo principal, modelar com um propósito e encarar a mudança. A documentação ágil deve fornecer valor máximo ao cliente de forma magra, com foco no objetivo.
Qual o estado dos frameworks atualmente no PHP, assim como a situação atual da linguagem. Como você pode escolher seu framework e um comparativo entre os 4 principais frameworks do mercado.
Este documento fornece uma introdução ao framework PHP CakePHP. Resume as seguintes informações essenciais:
1) O CakePHP é um framework popular e flexível para desenvolvimento web com PHP usando o padrão MVC.
2) Ele fornece muitos recursos prontos como scaffolding, helpers, componentes e internacionalização.
3) O CakePHP usa uma estrutura de pastas padronizada e segue convenções claras para desenvolvimento rápido.
PHP Turbinado com CodeIgniter - Conisli 2011Evaldo Junior
Este documento apresenta o framework PHP CodeIgniter. Resume as seguintes informações essenciais:
1) Apresenta a história do PHP e como o CodeIgniter ajuda a resolver problemas comuns em projetos PHP grandes;
2) Explica os principais recursos e benefícios do CodeIgniter como MVC, facilidade de uso, documentação, entre outros;
3) Demonstra como o CodeIgniter organiza controllers, models, views e URLs de forma simples e padronizada.
Este documento fornece dicas para programadores Java iniciantes e experientes. Ele discute como lidar com medos e mitos, aprender lógica de programação e estrutura de dados, e seguir um caminho para o sucesso através de treinamentos, certificações, livros e eventos. O documento também oferece conselhos sobre como ser um programador pragmático e efetivo em Java.
O documento fornece dicas para desenvolvedores PHP melhorarem suas carreiras, incluindo: assumir responsabilidade por erros, investir em conhecimentos, seguir padrões como PSR e Composer, usar Orientação a Objetos corretamente, testar código, documentar e falar em eventos.
O documento discute práticas seguras e corretas para programação em PHP. Em particular, cobre tópicos como: 1) boas práticas para iniciantes em PHP, 2) técnicas para segurança como prevenção de SQL injection e XSS, e 3) formas comuns de ataques e como proteger aplicações PHP.
A palestra discute os problemas de código ruim e dívida técnica, como sintomas como perda de satisfação do cliente e demora em entregas, e a importância de fundamentos como Orientação a Objetos, princípios como SOLID e práticas ágeis para melhorar a qualidade do código e a produtividade.
O documento apresenta uma breve introdução sobre metodologias ágeis, desde como surgiram até os principais métodos e técnicas ágeis. É descrita a crise de software dos anos 1980 e como as metodologias ágeis surgiram para resolver esses problemas, com destaque para o Manifesto Ágil criado em 2001. Os principais métodos ágeis como Scrum, XP e Kanban são resumidos, assim como várias técnicas como histórias de usuário, daily meetings e programação em par.
#DNAD15 - Diminuindo sofrimento com código legado de linguagens não mainstreamsJacqueline Abreu
1. O documento discute como trabalhar com sistemas legados desenvolvidos em linguagens não mainstream como Perl, abordando conceitos como o que é legado e como melhorar a manutenção de códigos antigos.
2. É explicado que legado não significa necessariamente código ruim e que linguagens mais antigas podem ter boas práticas e comunidades ativas de desenvolvedores.
3. São dados conselhos como documentar tudo, escrever testes, usar frameworks existentes em vez de reinventar a roda, e manter uma mente aberta.
Extreme Experience 2018 | Python para quem sabe DelphiMario Guedes
Python é uma linguagem de programação interpretada, de tipagem dinâmica e forte, multi-paradigma com vasto ecossistema de bibliotecas. Apresenta semelhanças com Pascal e baixa curva de aprendizado. Sua sintaxe limpa e concisa torna o código mais legível.
Qualidade no desenvolvimento de Software com TDD e PHPUnitDomingos Teruel
O documento discute testes de software e desenvolvimento orientado a testes (TDD) usando PHPUnit. Ele introduz TDD, testes unitários, e PHPUnit, e enfatiza a importância da qualidade de software e dos testes para prevenir erros.
O documento apresenta Marcelo Diniz, um desenvolvedor web com experiência em PHP desde 2006. Ele discute como começar corretamente com PHP, recomendando seguir as melhores práticas e usar a última versão estável da linguagem. Em seguida, apresenta o framework CodeIgniter, destacando seus pontos positivos e negativos, como a falta de atualizações recentes. Por fim, demonstra alguns recursos e funcionalidades do CodeIgniter.
Brian, dono de um aeroclube, quer um sistema de gerenciamento para o seu negócio. Ele pede ajuda a Bregaida, que sugere utilizar DDD, BDD, TDD e Scrum para desenvolver o sistema de forma ágil e iterativa, garantindo que atenda às necessidades do domínio do aeroclube. Bregaida explica os principais conceitos e práticas desses frameworks para desenvolvimento de software.
In tests we trust: começando com TDD, mocks e maisAna Paula Gomes
O documento discute os benefícios do Test Driven Development (TDD) em 3 frases:
Escrever testes unitários primeiro ajuda a moldar o design da aplicação e aumentar a qualidade e confiabilidade do código. Mockar dependências externas durante os testes torna os casos de teste independentes e mais rápidos. Começar com TDD requer prática, mas leva a um código mais fácil de manter e expandir no futuro.
O documento discute os princípios do código limpo, definindo-o como código fácil de entender e alterar. Ele explica que código limpo é fácil de ler, entender o fluxo e colaboração entre objetos, e fácil de estender e corrigir. O documento fornece regras gerais e específicas sobre nomes, funções, comentários, estrutura e testes para produzir código limpo.
Este documento fornece uma introdução à orientação a objetos em PHP, discutindo conceitos como classes, objetos, métodos mágicos, herança, interfaces, exceptions e padrões de projeto. O documento também aborda tópicos como uso do PDO para acesso a banco de dados e frameworks PHP.
A Carreira de Desenvolvedor: do Jr ao SêniorMarcos Pereira
O documento discute a carreira de desenvolvedor de software, desde júnior até sênior. Apresenta as principais responsabilidades de um desenvolvedor, como compreender requisitos, construir códigos, testar e implantar sistemas. Também explica como o mercado classifica os desenvolvedores de acordo com tempo de experiência e habilidades técnicas, e dá dicas sobre por onde começar a carreira nessa área.
O documento descreve um objeto de classe Speaker que fornece informações sobre um palestrante, incluindo seu nome, experiência, habilidades técnicas, site e redes sociais.
Semelhante a Seja um júnior não seja um sobrinho (20)
Apresentacao festival Agile Trends - Errando e aprendendo frequentementeAlexandre Andrade
O documento discute como valorizar erros na equipe para promover o desenvolvimento. Aprendemos mais com erros do que acertos, e erros passados nos ajudam a avançar. A cultura corporativa deve apoiar a busca por soluções, não punir erros, para que possamos nos adaptar e aprender.
Este documento apresenta uma palestra sobre carreira e comportamento para desenvolvedores de software. O palestrante discute como navegar em ambientes de trabalho tóxicos, a diferença entre carreira e emprego, e como o desenvolvimento contínuo pode levar a alcançar os objetivos desejados. O documento não aborda metodologias ou linguagens de programação específicas.
O documento discute microframeworks PHP, frameworks enxutos que fornecem funcionalidades básicas para facilitar o desenvolvimento de software. Apresenta três microframeworks populares: Silex, baseado no Symfony e focado em controle de aplicações; Slim, que introduziu middlewares e hooks; e Respect, criado por um brasileiro e com boa integração entre componentes. Resume dizendo que microframeworks são conjuntos especializados de funcionalidades abstratas para desenvolvimento flexível e enxuto.
O documento descreve as semelhanças entre as filosofias e técnicas do Bushidô, o caminho dos samurais japoneses, e a programação PHP. Apresenta os conceitos de Kihons (básicos), Kata/Taulous (provas de conceito) e Kumitê (projetos pessoais) e como eles se relacionam com práticas como refatoração, testes e desenvolvimento. Enfatiza a importância do equilíbrio, adaptação e aprendizado constante.
Segunda palestra da PHP Conference Brasil, falando sobre webservices, uma visão geral para quem quer começar a usar e métodos e estratégias para quem já os adota
Desenvolvendo Aplicações Web compatíveis com CelularesAlexandre Andrade
Palestra que apresenta uma posição sobre o mercado de desenvolvimento web para celulares no mercado brasileiro, apontando alguns problemas e soluções para os programadores
O documento discute o padrão de projeto Model-View-Controller (MVC) e seu uso no desenvolvimento PHP. Apresenta os objetivos e não objetivos do curso, características de padrões de projeto e vantagens de usar MVC. Detalha as camadas do MVC - Modelo, Visão e Controle - e frameworks que utilizam este padrão.
1. Seja um júnior não seja um
sobrinho
Boas práticas para construir uma
carreira em PHP
2. Quem sou eu
• Mantenedor do PHP Rocks
(Offline);
• Membro do Conselho Editorial da
PHP Review;
• Analista/Desenvolvedor Sênior na
Atos Origin
• Bebedor de Cerveja Convicto
• Mergulhador (Divemaster/Padi)
3. Agenda
• Como produzir códigos profissionais desde o início
da carreira;
• Como não ser desrespeitado em listas, fóruns etc.
• Como conseguir ajuda?
• Perguntas comuns para quem está começando a
programar;
• Aprenda a fazer comentários que realmente ajudam
a entender seu código;
• Como criar funções e métodos;
4. Agenda
• Qual tipo de acesso eu devo utilizar (public,
protected ou private);
• Como organizar suas classes;
• A utilização do PHPDocs
• O Manual do PHP e ferramentas que todo o
desenvolvedor deveria utilizar.
5. O que não cobriremos
• Essa apresentação não trará código funcional;
• Esta apresentação não visa alterar estilos de
codificação, mas atitudes;
• Esta não é uma apresentação técnica, apesar
de abordar alguns tópicos técnicos;
• Não estamos vendendo conceitos ou
produtos, então relaxem.
6. Como produzir códigos profissionais desde
o início da careira
• Monte sua biblioteca, PDF, livros, tutoriais e
leia!
• Não reinvente a roda, mas lixe-a para rodar
melhor;
• Menos é mais!!! Na maioria das vezes;
• Seu código é produto de outra pessoa sempre
tenha isso em mente;
• Não copie, estude.
7. Como não ser desrespeitado
• Não copie estude
• RTFM, UPG sempre
• Pesquise antes de perguntar
• Se as pessoas não te respondem considere
refazer a sua pergunta e não reclamar porque
as pessoas não respondem
• Grupos e fóruns tem regras e moderadores,
respeite-os!
• De boa leiam o maldito manual!!!
8. Como conseguir ajuda.
• Forúns específicos, ir num fórum de MySQL e
fazer uma pergunta de PHP é deselegante;
• De novo: Googlo, leu o manual, não achou?
Ok pode perguntar.
• Pelo amor de Deus, não ofenda o PHP.
• MIRC é rápido e eficaz, mas tenha um
pouquinho de paciência. Server Freenode
#php
10. Perguntas Comuns de quem está
começando a programar
• Quanto eu cobro?
• Qual framework eu uso?
• Porque Java paga mais?
• Porque .net paga mais?
• Que tipo de emprego procurar?
• Quando um produto está pronto?
• A Comunidade Morde?
11. Perguntas Comuns de quem está
começando a programar
• Quanto eu cobro?
Qual seu custo de vida, mínimo?
• Qual framework eu uso?
O que o projeto mandar, ou o que vc preferir, mas
faça o seu e nunca o use em cliente.
• Porque Java paga mais?
• Porque .net paga mais?
Alguém já viu no sou java tantas palestras sobre iníco
de carreira?
• Que tipo de emprego procurar?
Aquele tem a ver com você e seu projeto de vida.
12. Perguntas Comuns de quem está
começando a programar
• Quando um produto está pronto?
Basicamente Nunca! O que é bom.
• A Comunidade Morde?
De vez em quando, mas não desista, como
diziam os Lobisomens, suas cicatrizes
mostram que é um grande guerreiro
Não existem perguntas erradas, existe
o modo errado de fazer a pergunta!
13. Como comentar seu código
• Comentários não são manuais de utilização do
programa, nem cursos hands on de como
programar
• Comente lógicas e não linhas, a não ser que a
linha seja sensível para a sua equipe
• Comentários úteis salvam a SUA vida e não a
dos outros caras
14. Como criar funções e métodos
• Automatização é a palavra da tecnologia, use-
a
• Se é verbo provavelmente é uma
função/método
• OOP existe para facilitar a codificação e é
“febre da juventude” use-a
• Se você usa mais de 2 vezes é função/método
15. Qual tipo de acesso utilizar
• Atributos nunca públicos, se você usa OO use
extends e protected;
• Getters e Setters ftw;
• Sim existem métodos públicos em classes
abstratas, por isso atenção.
• Métodos estáticos, ajudam muito em helpers,
são mais rápidos, use-os quando possível.
16. Como organizar suas classes
• Separe métodos publicos, protegidos e
privados em blocos
• Dê nome que faça sentido
• Quebre grandes tarefas em métodos privados
• Reduza o número de parâmetros a serem
passados, use objetos e arrays
• Use o PHP Doc Block
17. A utilização do PHPDocs
• Gera automaticamente a documentação do
seu código; (Nice)
• Gera tips nas IDEs (Eclipse PDT, Zend Studio,
Netbeans); (Nice!!!)
• Usa a Reflection Class para diminuir o teu
trabalho (E forçar a trabalhar direito) (Perfect
Win)
18. O Manual e outras coisas
• Use www.php.net/oqueeuquero
• Leia o manual
• Use o manual do seu banco
• Stack overflow é o bicho
• Delicious é melhor que a sua barra de
favoritos
• Sempre leia as listas.
20. E agora o que fazer?
• Mudar minha atitude, procurar fóruns canais
do IRC etc.
• Ler o manual do PHP e de outros serviços
• Compartilhar meu conhecimento
• Montar minha biblioteca
• Pensar antes de codificar
• Olhar pros dois lados antes de atravessar a rua
• Sempre twitar #chupaivo