Oficina de Python Web

De LHC
Ir para navegação Ir para pesquisar

Sobre a oficina

Logo da Linguagem Python

Oficina de Python web irá ocorrer as Quartas feiras com possibilidades segundo o planejamento. A oficina tem o objetivo de divulgar o conhecimento da linguagem Python e de frameworks web baseados na linguagem. Não há pré-requisitos de conhecimentos na linguagem, se aconselha que tenha conhecimento em alguma outra linguagem de programação (qualquer uma).


Planejamento

Janeiro

No mês de Janeiro (inicio da oficina) vamos ter 3 encontros (11, 18 e 25) sobre a linguagem python, demonstrar caracteristicas da linguagem e passar exercícios do HackerRank (sugestões de sites são bem vindos). Pode ser que seja um pouco repetitivo mas o objetivo é que todos tenham noções da linguagem antes de começarmos com frameworks.

Fevereiro+

Depois de janeiro, onde passar a fase de conhecimento básico da linguagem, vamos fazer projetos com os frameworks web. A idéia é programar atividades para os participantes desenvolverem em casa e ir tirando duvidas pela web, inclusive agendando hangout para discutir os conquistas e dificuldades com a atividade. Os encontros pessoalmente no LHC vão ficar mais espaçados, o objetivo é proporcionar uma opção de acompanhar a distância as atividades e interagir enquanto os projetos vão sendo montados atravez de algum grupo na internet (irc, hangout, etc). O encontro no LHC continua acontecendo cada 15 dias (ou mais), para atualizar novas atividades. Quem na hora não tiver idéias da atividade que quer fazer com seu webserver, não se preocupe que podemos pensar em atividades, ideias junto com o grupo.


Atividades

IoT e o Python

Grande parte do que se faz ou fala de IoT se conecta dispositivos a serviços na web, então uma das metas da oficina é ensinar a montar API web a ser consumida por outras plataformas (Android, ESP8266, Arduino, etc). Fazendo a interface baseado na arquitetura Rest e na notação Json. Podemos estudar a possibilidade de usar o MQTT (Mosquitto) também.

Linguagem Python

Criada por Guido Von Hossum, uma linguagem bem versátil, te permite programar em forma de script, imperativa, orientada a objetos e funcional. A linguagem tem uma filosofia própria (vide Zen of python), a idéia de "Gaste seu tempo resolvendo seu problema e não com a sintaxe de sua linguagem". Vamos dar umas pinceladas nas características da linguagem: formato, comandos de controle comuns como for, while, if, etc e claro, syntax sugar.

Frameworks a serem estudados

Existem diferentes necessidades quando se procura ferramentas de desenvolvimento, então vamos adotar 2 frameworks muito utilizados pela comunidade:

Djangopony.png

Django

Framework bem completo, com diversos plugins disponíveis, ORM integrado desde o banco até a camada visual. Neste framework vamos fazer a opção de usar o recurso de formulários "Django Admin", que facilita para cadastros simples de entidades. Este será adotado para escrever as APIs web, baseado no plugin "Django Rest Framework".


FlaskPy.png

Flask

Um framework bem simplista e altamente customizado, não possui ORM integrado, scafolding ou geradores. Aqui se faz o que quiser como quiser, pegue o que precisar. O aprofundamento deste framework vai depender do grupo da oficina.

Diario

Relato dos encontros da oficina

Dia 1 (11/01/16)

Hoje falamos sobre esta seção no livro, recomendo darem uma olhada para acompanhar: http://www.diveintopython3.net/your-first-python-program.html

Apresentação do primeiro dia: http://www.slideshare.net/amesias/python-3-71119418