Formação Profissional em Computação - Framework Phyton

11.11k views3357 WordsCopy TextShare
UNIVESP
univesp.br Eixo de Computação - COM200 Univesp - Universidade Virtual do Estado de São Paulo Profes...
Video Transcript:
E aí [Música] o Olá pessoal bem-vindos as disciplinas de formação profissional em computação essa semana semana cinco estudaremos alguns frameworks parto e o Web service vamos lá bom a aula de hoje é sobre o frei works paz a gente tem no mercado nem ela passa em aulas passadas a gente viu aí é que a programação para web né Tem ganhado cada vez mais espaço nesse imenso no mercado aí virtual as linguagens de programação estão cada vez mais poderosas e produtivas né e com grande desempenho é como a gente viu os prêmios que eles pretendem ajudar né fornecer ferramentas para facilitar o desenvolvimento de dos nossos projetos Where acompanhar nesse mercado o pai tão ele também não oferece opções de freio amor para programação é alguns que podemos mencionar essa o Jango né O Diabo É o Freio Monark de código aberto e escrito em o que permite aos desenvolvedores implementar aplicativos aí é até que complexo Né simples a complexos de maneira rápida e eficiente ele apresenta uma estrutura de alto nível que otimiza o desenvolvimento dos aplicativos E além disso ele tem um avaliar uma variedade grande de bibliotecas que cada vez mais exige menos codifi cação dos programadores e permite grande reutilização de componentes ele é muito bom para projetos nesse sentido de médio a grande parte da report o flask ele também não foi morko era escrito em Python e inspirado no Sinatra Rubi né o principal objetivo do Flash é pro ver aí o modelo bastante simples e que seja flexível para o desenvolvimento né com o uso de Python Webert o pai Ele foi publicado em 2007 por uma licença gênio e o rock de código aberto também escrito em parque e partam E permitir aí os desenvolvedores programam conteúdo web dinâmico reduzindo aí algumas tarefas bastante ter dioses como por exemplo quando a gente tem que fazer um formulário web do zero né mas se você quiser também ele possibilita essa esse começo o projeto do Hebert pai ele foi inspirado no correio e no Jango né sendo Originalmente Projetada aí como uma ferramenta de ensino e por essa razão é o principal foco dele é a facilidade de uso além desses existem outros aí que não foram mencionados né mas como cherry pie e o botão é mas normalmente a primeira opção aí que você ouve com o desenvolvedor desenvolvedor Esperto é o Jango né pela facilidade de desenvolvimento os grandes exemplos aí de sites né que usam o como por exemplo Pinterest e Instagram Mozilla Washington times o diabo ele é um frame outro gratuito open source para desenvolvimento de tão alto nível que já produz para nós programadores uma solução do tipo homem né objeto Eleitoral na internet o que significa né ele matei os objetos para tabelas do banco de dados seja banco de dados postgres SQL mais SL hora com não skelly né simplificando ao máximo acesso a dados no banco de dados outro diferencial é a interface de administração fornecida né a chamada django-admin né um ponto o livro da estrutura do Django também é a evolução contínua né com o objetivo aí te acompanhar a tendência de desenvolvimento de aplicações né E tem aí como o princípio drive né don't It Yourself né não se repita quer dizer ele promove e ele tem a filosofia de reutilização de componentes né bastante útil aí para os nossos projetos aí principalmente os de médio e grande porte em termos de outros recursos você pode pensar em questões de autenticação autorização as URL são bastante amigáveis tem sistemas de template faz roteamento de URL suporta é a internacionalização né multi-idiomas e é também eu usa modelos da MTV né model-template-view pensando assim segmentar as funcionalidades da aplicação o Django possui uma extensão indicada para gente criar a questão de Web Services has full o Django ele o Django rest né com ele e a gente pode tratar com mais facilidade as questões de verbos e códigos de status do protocolo http manipular dados no formato de ações ml a lenha e de outros recursos que vão acelerar o desenvolvimento é desse tipo de aplicação na próxima aula dessa semana a gente vai falar e de criar o nosso primeiro web service aí seguindo o padrão Fast mas vamos ver agora uma uma prática né Vamos tentar desenvolver aí uma aplicação uma para onde ângulo antes de você utilizar o Django né Vocês precisam primeiro instalar Então vão até a página oficial do Django na página de download baixa em aí a última versão oficial lançada sendo um Framework web Python o Django e é pai Tom né ele funciona com qualquer versão desde a 2. 3 até a 2. 6 né Parece que lá dois na três ele ainda não tem alguns probleminhas o Django ele vem com servidor web bem leve Então você você pode usar né para teste de forma que você não vai precisar instalar e configurar uma parte antes de colocar o Django aí em produção se você quer usar o diálogo em um site introdução use o a parte né com o Mod wsgi que é similar ao modo de perco porque aí ele embute o pai tão dentro do a paz e carrega na memória códigos-fontes escritos em Python quando o servidor for reiniciado esse código ele fica na memória durante toda a vida do processo à parte isso acaba levando aí a gente a ganhar um desempenho significativo sobre outras configurações do servidor e se você pretende usar apis de banco de dados do Django não se esqueça que vai precisar instalar ou chegou nessa Kelly mas Kelly é o sqllite não apesar dessa quer elet não precisar de um servidor separado para rodar isso daí vai ter que tá funcionando mas para que tudo funcione Garanta que você tem o Apache instalado o Mod wsgi ele que ele esteja ativo e que seu servidor de banco de dados também esteja funcionando então tenta garantir aí essas três quatro coisas junto com python e o próprio Jango tá bom e é não entendimento do desenvolvedores de jango sobre o mvc né a viu representa qual informação você ver né então ele tem a estrutura né e navio né Na parte da viu aí essa camada do meio é ele representa a informação que você ver mas não a questão do como né do como você vê que tem aí uma diferença Sutil né o Django ele é dividido nessas três camadas a camada de baixo aí na figura que a camada de modelos a camada de visualização né que é como você vê a viu EA camada de template aí a camada superior é um a viu é uma forma de processar os dados de uma url específica né porque esse método descreve Qual informação é apresentada é Além disso é imprescindível separar o conteúdo da apresentação que é onde os template CD Residem né no Django uma Wylde em qual a informação é apresentada a mais uma vídeo normalmente delega para um template que descreve como a informação é apresentada né bom então aí para iniciar um projeto é necessário que você crie esse projeto né com esse comando aí comando django-admin.
py pai startproject e aí você coloca o nome do projeto no nosso caso aí a gente vai colocar hello world né E aí esse comando vai criar uma estrutura de diretórios que vocês vão encontrar alguns arquivos aí como no Reload você vai encontrar o arquivo certo. Pai né arquivo importante porque nele vocês vão ver as configurações do nosso projeto né de configuração de banco de dados aplicativos instalado no Reload aí/URL paz né o arquivo do hello world URL Spa URL pai essa é a nossa urlconf né aqui que a gente vai dizer o Django quem responde a qual URL e no wsgi que é. Pai né Aí você vai configurar interface entre o servidor de aplicação e nas nossas aplicações Jango né e finalmente o arquivo uma neste ponto o pai ele é gerada automaticamente pelo diabo para expor aí comandos importantes importantes para a manutenção da nossa aplicação por exemplo estando na pasta raiz do projeto Execute o comando aí Python manage.
py pai hum quiser ver né Depois Acesse seu browser no endereço aí do local host é 8000 né se ele aparecer aplicação aparecer significa que nossa configuração aí tá correta e o Django tá pronto aí para começar a desenvolver né se isso aconteceu o quê a passo agora é criar e os nossos app um app no Jango ele é uma aplicação web que faz alguma coisa né seja lá um blog um banco de dados de registro público um aplicativo de pesquisa já um projeto é uma coleção de configurações e app para um web service particular na web site particular um projeto ele pode ter vários apps neles e um app pode estar presente aí ser utilizado em diversos projetos né à frente de criar um novo app o diabo prover outro comando quer aí o comando é chamado de Django admin. Pai start App ele vai ajudar a criar os arquivos e diretórios necessários né então vamos criar aí um app chamado Website então digitamos aí django-admin. py pai está tio app e o nome e vai ser Website aí com isso a gente vai ter aí uma nova pasta com o nome da APP no nosso caso Website e dentro a estrutura de arquivos necessárias para implementar Nossa aplicação como a gente acabou de criar o app e já havia o app principal Hello hoje aí é necessário adicioná-los a pasta de app instalados no arquivo settings.
py e e é agora que já criamos o projeto hello world e o app Website vamos passar agora para a camada Model daquela arquitetura lá MT vidro Jango né é o MTV é do modal template viu nela nós vamos escrever a forma de classes as entidades do nosso sistema para que é o resto né faça sentido aí o template o rio faça sentido um modelo é a descrição do dado que será então gerenciado pela nossa aplicação ele contém aí os campos e comportamentos dos nossos dados no fim de no fim né Cada modelo vai equivaler a uma tabela do banco de dados no Django o modelo tem basicamente duas características ele é uma classe que herda de django. db models é e cada tributo representa em um campo da tabela o isso Django o tomaticamente uma p&id acesso ao banco de dados Isso facilita a vida quando for gerenciar né adicionar e excluir os dados os modelos por convenção são descritos aí no arquivo models. py ai vamos criar então esse arquivo na pasta lá Hello hoje o arquivo/né mas é o arquivo models.
py pai e no arquivo modos você então passa é esse o rascunho a inicial para a classe e paz né Vamos então criar uma classe aluno. Universo em parte O que contém matrícula nome do aluno e o sobrenome do aluno cada Campo ele tem um tipo E aí cada tipo tem as suas propriedades né como o Max silêncio né para delimitar e o tamanho de uma string bigdecimal né o Places para configurar o número de casas decimais né o decimal Place Essa é a documentação de cada campo e propriedades pode ser acessado aí no site aí vocês vão conseguir esses detalhamentos tá então e o campo objetos e models. Manage ele é utilizado para fazer operação aí te buscar e e os comandos agora né make migration ele Analisa S foram feitas mudanças nos modelos e Em caso positivo ele cria novas migrations né novas migrações para alterar a estrutura do banco de dados E aí acaba refletindo alterações portanto Toda vez que você alterar seu modelo Não se preocupe né nunca esqueça de executar aí o pai tão humano é de ponto pai migration né agora podemos ver é que foi criado uma pasta chamada migration né e dentro de dentro da estrutura lá do hello world e dentro dessa pasta você pode ver um arquivo chamado 0001 emitir o pai e ele contém a migration que cria o modelo aí alunos universo quando executamos então meio que em igrejas o Django cria o banco de dados e as migrations mas não executa né Isso quer dizer um aplique as alterações no banco de dados né Para que o diabo faça aplica essas alterações você vai ter que é três fazer três três coisas aí né que a configuração da interface com o banco de dados esteja descrita lá no sétimo.
Pai que os modelos emigrei chão estejam definidos para esse projeto né e a terceira execução do comando migrantes né se você criou o projeto com Django admin. Pai trade projeto Hello hoje a configuração padrão Aí foi aplicada né aí procure pela configuração da cabeça em 17 anos pai e sobre os modelos emigrei chão né ele já foram feitos para definição aí do aluno Univesp no arquivo mal Deus pai e com a execução além do make migration agora então vai faltar executar o comando me great a o execução do migrante o Jango irá criar diversas tabelas no banco de dados né e uma destas tabelas aí vai ser a tabela aluno Univesp e é com nossa classe aluno Univesp é como com essa classe ela é modelada né com ela pronta aí agora a gente vai ver a pedir de acesso aos dados aí providos pelo diabo para facilitar a nossa vida né Vamos tentar testar adição de um novo aluno né importamos aí o modelo criado aluno Univesp do projeto Hello hoje com comando from Hello hoje. Modos e porte Aluno Universo aí depois a gente cria um novo aluno como faríamos em qualquer linguagem orientada a objeto né aluno Univesp abre nome Fulano sobrenome digital e matrícula a matrícula e atribuímos a variável aluno depois salvamos o novo aluno no banco de dados SQL ou comando aí aluno com seis né é de código SPL Cris né tudo muito mais simples em parto assim como criar um novo aluno buscar aluno listar é igualmente simples como vocês podem ver aí no slide os comandos né É só por exemplo para listar todos os alunos utilizamos aí o comando aluno com aluno universo e ponta objetos.
O né ou buscar alunos utilizando um filtro por exemplo né busque todos os alunos que tenham sei lá matrícula maior que um dois três né e que não tem o Fulano nome é então você mostrando o filtro né Aí você tem um filtro o GT né greater than E aí esse filtro vai nos devolver os valores aí maiores que um dois três e para excluir um determinado o registro né precisamos realizar aí uma busca com filtro e atribuiu o resultado de uma variável para depois aplicar o Esse comando aí o em comando de de Elite né Então aí por exemplo aluno Aluno Universo. Filter vai vai fazer o filtro nome Fulano né E aí eu vou se encontrou você faz aí aluno ponto de Elite e é agora já criamos o primeiro modelo né de banco de dados também agora vamos tratar aí da camada viu né da arquitetura MTV do Jango né a camada viu ela tem a responsabilidade de processar as requisições aí que estão sendo enviadas né pelo usuário e formar uma resposta enviar de volta aí para o usuário é é aqui que vão residir né as lógicas do nosso negócio do nosso Business né o primeiro passo é pensar no roteamento de URL né a partir da url que o usuário quiser acessar né alunos do universo por exemplo o Django e a rotear a requisição para quem irá tratar mas primeiro dia não precisa ser informado para onde mandar essa requisição né a gente faz isso no chamado URL com e damos o nome a esse arquivo por convecção Dro ponto pai geralmente temos um arquivo derrotas por app do diabo né portanto crie um na cria um arquivo aí o URL. O pai dentro da pasta Hello Word e outro na pasta Website Website como app hello world é o núcleo da nossa aplicação ele faz aí o papel de centralizador derrotas né é quer dizer né primeiro a requisição cai no arquivo hello world URL contém o pai e é roteado então o app correspondente né roteador preta app em seguida ou rl.
com se do app Website lá/URL. Pai nesse nosso caso né vai rotear requisição aí para ver o que será que vai aí processar a a essa da requisição Qual é a configuração do urlconf Ela é bem simples né basta a gente definir qual a função ouviu irá processar as requisições de tal URL é por exemplo queremos que Quando um usuário acessa a URL raiz né o Django chama a função ainda para processar essa requisição né E aí vejamos como a gente pode configurar esse roteamento para o nosso servidor aí o URL. O pai né a gente coloca o atributo o app name e o web site aí a gente definir o nem no Space do PP Website né ou podemos criar aí o url-pattern os utilizando a função PF por exemplo né E aí a gente coloca a peça e Aluno Universo né o enterro do ano né E aí a gente consegue definir ou fazendo vio alunos Univesp por ano né O Diego vai gostar e a sua requisição para onde você definiu não exemplo a sua requisição irá cair na função viu.
Copyright © 2024. Made with ♥ in London by YTScribe.com