A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Prof. Natalia Castro Fernandes Mestrado em Telecomunicações – UFF 2º semestre/2012.

Apresentações semelhantes


Apresentação em tema: "Prof. Natalia Castro Fernandes Mestrado em Telecomunicações – UFF 2º semestre/2012."— Transcrição da apresentação:

1 Prof. Natalia Castro Fernandes Mestrado em Telecomunicações – UFF 2º semestre/2012

2 Ementa do Curso Conceitos básicos de programação Orientação a objetos Linguagem Python Simulação com o NS-3 Programação para redes definidas por software (?)

3 Avaliação 2 provas – 40% da nota Trabalhos em sala – 20 % da nota Trabalho final – 40 % da nota

4 Por que programar? Dissertação de mestrado Realizar testes Fazer simulações Armazenar dados Analisar dados Gerar gráficos Desenvolver novos módulos Etc.;

5 Programação Aprendizado Persistência Dedicação

6 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?

7 10 regras básicas de programação 1. Simplicidade Busque sempre a solução mais simples Manutenção de código Compreensão do código 2. 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

8 10 regras básicas de programação

9 3. Indente o seu código

10 10 regras básicas de programação 4. Use padrões de projeto Não reinvente a roda Vantagens Desenvolvimento de código mais rápido Utilização de código testado 5. 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

11 10 regras básicas de programação 6. 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 7. Códigos repetitivos ou com função específica devem ser escritos como funções

12 10 regras básicas de programação 8. 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 9. Faça um bom tratamento de erros 10. O Google é o seu melhor amigo

13

14 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 Entrada Saída

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

16 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

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

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

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

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

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

22 Ambiente interativo Interação com o interpretador Entendendo: Entre no terminal Digite python Digite print Hello World! help() quit quit()

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

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


Carregar ppt "Prof. Natalia Castro Fernandes Mestrado em Telecomunicações – UFF 2º semestre/2012."

Apresentações semelhantes


Anúncios Google