Escolar Documentos
Profissional Documentos
Cultura Documentos
Apelidos (aliases)
Vinculação
De um modo geral, uma vinculação é uma
associação, como entre um atributo e uma
entidade ou entre uma operação e um símbolo.
O momento no qual uma vinculação ocorre é
chamado de tempo de vinculação.
- Tempo de projeto
- Tempo de compilação
- Tempo de carga
- Tempo de ligação
- Tempo de execução
- Tempo de implementação
Vinculação de tipo
Antes de uma variável poder ser
referenciada em um programa, ela deve ser
vinculada a um tipo de dados. Os dois aspectos
importantes dessa vinculação são como o tipo
é especificado e quando a vinculação ocorre.
Os tipos podem ser especificados
estaticamente por alguma forma de declaração
explícita ou implícita.
Variáveis estáticas
ESCOPO
Escopo estático
Escopo dinâmico
procedure Big is
X : Integer;
procedure Sub1 is
X : Integer;
begin -- de Sub1
...
end; -- de Sub1
procedure Sub2 is
begin -- de Sub2
...X...
end; -- de Sub2
begin -- de Big
...
end; -- de Big
CAPÍTULO 6
TIPOS PRIMITIVOS
São tipos de dados não definidos em
termos de outros e alguns dos tipos primitivos
são meramente reflexos de hardware – por
exemplo, a maioria dos tipos inteiros. Outros
requerem apenas um pouco de suporte externo
ao hardware para sua implementação. São
usados, com um ou mais construtores de tipo,
para fornecer os tipos estruturados.
MATRIZES
Matrizes Regulares
As matrizes multidimensionais
irregulares ou retangulares são permitidas,
ou ambas?
Atribuição
Ponteiros soltos
CAPÍTULO 6
TIPOS
Matrizes
Questões de projeto:
1. Os elementos de uma matriz necessitam
ser do mesmo tipo?
Resp. Simples: Na maioria das
linguagens, como C, C++ e Java, é necessário
que todos os elementos sejam no mesmo tipo,
pois ponteiros e referências apontam para um
único tipo e os dados apontados e
referenciados também são de tipo único. No
entanto, existem outras linguagens como
JavaScript, Python e Ruby em que as matrizes
ainda consistem em elementos de um único
tipo, mas os elementos podem referenciar
objetos ou valores de dados de tipos diferentes.
6. As matrizes multidimensionais
irregulares ou retangulares são
permitidas, ou ambas?
R.: Isso vai depender da linguagem, pois
algumas oferecem suporte somente para
matrizes irregulares, como C, C++ e Java.
Nessas linguagens, uma referência a um
elemento de uma matriz multidimensional usa
um par de colchetes separado para cada
dimensão(Ex, meuArray[3][7]).
Outras linguagens oferecem suporte
somente a matrizes quadradas como Fortran e
Ada em que referências a elementos são
colocadas em um único par de colchetes (Ex.
meuArray[3, 7] ). Uma linguagem que oferece
suporte a ambas é o C#.
PONTEIROS
A sensibilidade à capitalização e o
relacionamento de nomes com palavras
especiais, que são palavras reservadas ou
palavras-chave, são as questões de projeto
para nomes. Variáveis podem ser
caracterizadas por seis atributos: nome,
endereço, valor, tipo, tempo de vida e escopo.
Apelidos são duas ou mais variáveis vinculadas
ao mesmo endereço de armazenamento. Eles
são considerados prejudiciais à confiabilidade,
mas são difíceis de serem eliminados
completamente de uma linguagem.
A vinculação é a associação de atributos com
entidades de programa. O conhecimento dos
tempos de vinculação de atributos a entidades
é essencial para entender a semântica das
linguagens de programação. A vinculação pode
ser estática ou dinâmica. Declarações, tanto
explícitas quanto implícitas, fornecem uma
forma de especificar a vinculação estática de
variáveis a tipos. Em geral, a vinculação
dinâmica permite uma maior flexibilidade, às
custas da legibilidade, eficiência e
confiabilidade. Variáveis escalares podem ser
separadas em quatro categorias, considerando
seus tempos de vida: estáticas, dinâmicas da
pilha, dinâmicas do monte explícitas e
dinâmicas do monte implícitas. O escopo
estático é um recurso central do ALGOL 60 e
de alguns de seus descendentes. Ele fornece
um método simples, confiável e eficiente de
permitir visibilidade a variáveis não locais em
subprogramas. O escopo dinâmico fornece
mais flexibilidade do que o escopo estático,
mas à custa da legibilidade, confiabilidade e
eficiência. O ambiente de referenciamento de
uma sentença é a coleção de todas as variá-
veis visíveis para aquela sentença. Constantes
nomeadas são simplesmente variáveis
vinculadas a valores apenas uma vez.