1 / 22

Programação em Python

Programação em Python. Prof. Natalia Castro Fernandes Engenharia de Telecomunicações – UFF 2º semestre/2012. Por que programar?. Realizar testes Fazer simulações Armazenar dados Analisar dados Gerar gráficos Desenvolver novos módulos Etc.;. Programação . Aprendizado. Persistência.

norman
Download Presentation

Programação em Python

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Programação em Python Prof. Natalia Castro Fernandes Engenharia de Telecomunicações – UFF 2º semestre/2012

  2. Por que programar? • Realizar testes • Fazer simulações • Armazenar dados • Analisar dados • Gerar gráficos • Desenvolver novos módulos • Etc.;

  3. Programação • Aprendizado Persistência Dedicação

  4. Qual linguagem usar? • A que melhor resolver o seu problema • E se eu não sei qual é a melhor linguagem para resolver o meu problema? • Desempenho computacional? • Programação simples? • Algum sistema específico?

  5. 10 regras básicas de programação • Simplicidade • Busque sempre a solução mais simples • Manutenção de código • Compreensão do código • Comente o seu código • Utilize variáveis com nomes intuitivos • Comente na instanciação a funcionalidade da variável, caso não seja absolutamente intuitivo • Explique com comentários o porquê de suas escolhas em pontos críticos do código

  6. 10 regras básicas de programação

  7. Indente o seu código

  8. 10 regras básicas de programação • Use padrões de projeto • Não reinvente a roda • Vantagens • Desenvolvimento de código mais rápido • Utilização de código testado • Alta coesão e baixo acoplamento • Acoplamento = Quão fortemente um elemento está conectado, tem conhecimento ou depende de outros elementos • Coesão = Quão estritamente um elemento está relacionado e focado com suas responsabilidades • Consequências • Evite elementos que façam coisas demais • Defina bem qual a funcionalidade de um elemento

  9. 10 regras básicas de programação • Não escreva códigos profundamente aninhados (Muitos ifs dentro de ifs) • Dificuldade de leitura • Tentar manter o código com até 3 níveis de indentação • Divida o código em pequenas funções • Códigos repetitivos ou com função específica devem ser escritos como funções

  10. 10 regras básicas de programação • Não faça o código todo para depois testar • Teste suas funções antes de utilizá-las • Comportamento normal • Limites inferiores e superiores de entradas e saídas • Entradas não esperadas • Faça um bom tratamento de erros • O Google é o seu melhor amigo

  11. Algumas definições • Algoritmo • Método para solucionar um problema • Estruturas de dados • Método para organizar informações • Programa • (Algoritmos + estruturas de dados ) expressos com uma linguagem de programação Programa Saída Entrada

  12. Linguagem de programação • Linguagem artificial com sintaxe e semântica bem definidos • Linguagem de Programação Linguagem de baixo nível Linguagem de alto nível Simplicidade Linguagem de máquina Linguagem de programação Linguagem natural

  13. Mais algumas definições • Programa fonte • Código escrito na linguagem de programação • Programa objeto • Código transformado linguagem de máquina sem ligação com códigos de bibliotecas e subprogramas • Programa executável • Programa formado pela ligação dos objetos e que pode ser executado pelo computador

  14. Mais algumas definições Programa fonte Compilador Link editor Programa objeto Programa executável ... Programa objeto Programa objeto Bibliotecas

  15. Mais algumas definições • Interpretador • Programa fonte é lido, entendido e as instruções são executadas imediatamente • Exemplo • Matlab • Python

  16. Mais algumas definições • Esquema básico • Esquema híbrido Interpretador Programa fonte Saída Entradas Interpretador Compilador Programa objeto Programa fonte Saída Entradas

  17. Python • Linguagem interpretada • Orientação a objeto • Multiplataforma • Gratuito • Biblioteca embutida extensa • Grande variedade de aplicações • Boa documentação • Grande comunidade

  18. Ambiente de trabalho • Linux • Python nativo • Windows • Implementação pronta para baixar • Editor de texto • Preferencialmente, com suporte a Python

  19. Ambiente interativo • Interação com o interpretador • Entendendo: • Entre no terminal • Digite python • Digite • print ‘Hello World!’ • help() • quit • quit()

  20. Executando um programa em Python • Abra um editor de texto • Digite • print “Hello World!” • Abra novamente o terminal • Digite • python meu_programa.py

  21. Exercício • Descreva, em linguagem natural, um algoritmo para: • Descobrir o valor máximo de uma lista • Calcular média de uma lista • Ordenar uma lista

More Related