Programação Web – #10: Git e Composer
Depois de abordar as interfaces e traits no tutorial anterior, vamos de seguida para outro capítulo, onde vamos ter umas noções básicas de Git e Composer.
Como anteriormente, gostaríamos de recordar que, não é possível formar um programador numa questão de vários tutoriais. Estes servem para boa orientação e início de uma busca por parte do leitor. Servirão de base a quem se quer iniciar, não esquecendo que esta rubrica tem como objectivo a introdução da framework Laravel.
Git
O Git é um sistema de controlo de versões, adequado a pequenos e grandes projetos. É praticamente impossível falar de Git e não associar ao GitHub, ou ao Bitbucket.
Não faltarão recursos pela Internet para que o leitor aprofunde. Neste tutorial vamos ver apenas o workflow mais básico, para podermos assim enquadrar passos futuros.
Instalação de GIT e Bash:
Instalação de Software Interface Gráfico para Git (Sim, começou por ser de consola):
Composer
O composer é um gestor de dependências PHP, a partir do qual, após configuração de um ficheiro, é gerida uma pasta específica para as dependências (chamadas packages), as suas versões, (in)compatibilidades, etc:
Tópicos para hoje
- Composer e Git (Controlo de Versões)
Roadmap para os próximos vídeos (dinâmico a cada tutorial):
- Consola ou linha de comandos
- Primeira página – HTML – Conteúdo dinâmico
- Browser Inspector – Ferramentas de Programador
- Bem-vindo ao Laravel!
- Homestead
- Routes
- Model – View – Controller
- Middleware
- Site estático clássico 4 páginas, com Templates
- Bases de Dados
- CRUD – Create, Read, Update, Delete
- Desenvolvimento de WebApp, open-source, a definir pelos leitores!
Ficheiros de Suporte
Aqui ficam os ficheiros do projecto ao artigo de hoje, convenientemente preparados para serem explorados por vós.
Screencast
Se não conseguir ver o vídeo, clique aqui.
Este artigo tem mais de um ano
Muitos parabéns por esta rubrica!
Muito obrigado JM!
Muito bom, lembro me de terem perguntando qual era a linguagem que mais teríamos (leitores) de aprender/aprofundar, e lembro que o php tinha ficado no top, só agora é que reparei que ja tinham começado a rubrica.
Parabéns pelo trabalho desempenhado!
Muito obrigado Samuel!!
Antes de mais, parabéns pelo artigo. Contudo gostava de fazer 3 questões:
1. Qual será a periodicidade das publicações
2. Porquê usar o composer?
3. Porquê Laravel e não Zend, Codeigniter, etc..
Eu vou dar o meu exemplo, durante anos usei o codeigniter e sinto que ele está completamente ultrapassado, desde que peguei no laravel que ganhei um novo brilho para programar de novo, mantendo o mesmo conceito de MVC o laravel consegue ser tão melhor que o codeigniter;
João, obrigado pelo feedback!
@João Pereira
Não considero o Codeigniter “completamente ultrapassado”, a nível de documentação o laravel está muito longe da ZEND e do Codeigniter… Mas são opiniões e respeito.
@João Patrício
Acabaste por não responder às duas primeiras questões. 🙂
É preciso ter em consideração que muitas pessoas não sabem/não querem/não podem usar o composer. Que alternativas têm?
Cumprimentos a todos!
Olá Webman,
Respondi, está mais abaixo.
O composer é uma dependência, para o Laravel, Yii 2, Symfony..
Quem não sabe, aprende.
Quem não quer, ok, nada a declarar.
Quem não pode usar, exemplo servidor partilhado, sem acesso shell, poderá eliminar a pasta vendor remotamente, e subi-la de novo, já atualizada em localhost/dev_box, como se ficheiros do projeto se tratarem.
O autoloading é trabalha com PHP direto, não necessita composer instalado para correr.
Cumpts!
A curva de aprendizagem e bem mais pequena que das outras frameworks, talvez em excepção ao CodeIgniter, mas o mesmo teve parado durante alguns anos e só agora voltaram, estando Laravel mais à frente!
Deixo te um artigo em Português do Brasil para teres uma ideia de o porquê de Laravel estar neste tutoriais…
Atenção que eu não decidi nem tão pouco conheço o criado dos mesmo mas diria que terá sido estas razões.
Artigo: http://acadtec.com.br/site/blog/item/61-10-razoes-para-usar-laravel.html
Eduardo, obrigado pelo feedback!
Olá WebMan,
1. A periodicidade é semanal, à quarte feira. Pode haver, como já aconteceu, indisponibilidade da minha parte, e haver uma semana de “salto”, aconteceu 2/10 vezes.
2. Porque faz a gestão das dependências do projeto, sub dependencias, atualizações, distribuição… Tb pode ser usado com packages em servidor/repositórios privados.
3. Qualquer framework dá para chegar ao mesmo resultado. Não vou torcer por partidos, até porque se hoje considero a Laravel a aposta mais segura, daqui a meses, pode haver alguma (re)volução em alguma outra, e não terei problemas em mudar. É algo para que temos de estar preparados e de mente aberta, na evolução, a que o mundo de IT nos habituou!
Entre outras, o IoC Container é poderosíssimo. A sua expressividade. O Eloquent. Existem N fatores muito fortes.
Por questões de segurança, 5.1LTS.
Bug fixes until June 2017, and security fixes until June 2018.
https://laravel.com/docs/5.1 Lê a documentação, nem que seja pela diagonal, os capítulos, e poderás tirar conclusões.
Happy coding!
Obrigado mais uma vez João. Excelente tutorial, muito claro e sucinto!
Permite que te faça a seguinte questão:
-Qual o repositório que preferes bitbucket ou o github?
encontrei as diferenças aqui https://gist.github.com/foogit/8410710
Mas gostava de saber a tua opinião
Obrigado desde já,
Olá João. Obrigado pelo feedback!
Ambos fazem o serviço 🙂 o bitbucket permite repos privadas, para equipas de até 5 elementos.
O GitHub está mais “forte”/cotado/utilizado em projetos open source/packages.
Faço uso de ambos. 🙂
Esta rubrica morreu aqui? E Laravel?…
Boas,
Não. Houve foi um interregno imprevisto, que será explicado num comunicado muito em breve, durante este mês.
No entanto, reparo neste comentário no ponto 10, sendo que a rubrica neste momento tem até ao 12. Não encontra?
Perdão, 13
https://pplware.sapo.pt/tutoriais/programacao-web-11-consola-linha-comandos/
https://pplware.sapo.pt/tutoriais/programacao-web-12-laravel-homestead-environment/
https://pplware.sapo.pt/tutoriais/programacao-web-13-laravel-quick-start/
Sim neste ponto 10 “Todas as edições da rubrica Programação Web” não tem os 3 pontos que refere. Hoje já vou “mastigar” os 3 pontos novos para mim!
Obrigado e bom trabalho!