• Nenhum resultado encontrado

Conceitos básicos de programação

N/A
N/A
Protected

Academic year: 2023

Share "Conceitos básicos de programação"

Copied!
24
0
0

Texto

(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

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

Armazenar dados

Analisar dados

Gerar gráficos

Desenvolver novos módulos

Etc.;

(5)

Programação

Aprendizado

Persistência 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?

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

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

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

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

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

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

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

Programa objeto

...

Bibliotecas

(18)

Mais algumas definições

Interpretador

Programa fonte é lido, entendido e as instruções são executadas imediatamente

Exemplo

Exemplo

Matlab

Python

(19)

Mais algumas definições

Esquema básico

Interpretador Programa

fonte Saída

Esquema híbrido

Entradas

Interpretador Programa

fonte Saída

Entradas Compilador Programa

objeto

(20)

Python

Linguagem interpretada

Orientação a objeto

Multiplataforma Gratuito

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

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

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

Referências

Documentos relacionados

Além de conferir os centros culturais e a Praça Mauá, visitantes vão ganhar 3,5 quilômetros da nova Orla Conde, passeio público que começa no Armazém 8 do Cais do Porto, na

Realizou-se este trabalho que objetivou conhecer os níveis de infestação para contribuir com o controle do problema da verminose ovina e caprina.. Constatou-se alta

Os campos medios do vento nos altos niveis para os meses posteriores (FMAM) mostraram a presenca de um VCAN sobre o Nordeste em fevereiro no composto seco, enquanto que no

A posição imediatamente a seguir é ocupada pela Electromed - Sociedade Unipessoal, Limitada, empresa detida por Omar Abdurramane Janfar, com adjudicações orçadas em 31 milhões

Em terceiro lugar, alguns caminhos potencialmente efetivos de intervenção ainda não receberam a devida atenção; são necessárias mais pesquisas sobre essas abordagens e mais

As instruções do programa em linguagem de alto nível são chamadas de código fonte, e a versão em linguagem de máquina é denominada código objeto. Programa em

Os autores verificaram a existência de plantas, dentro de cada população, mais tolerantes ao calor que a cultivar ‘Regina 71’ (resistente ao florescimento

O imposto de renda diferido (“tributo diferido”) é reconhecido sobre as diferenças temporais no fim de cada exercício entre os saldos de ativos e passivos reconhecidos