Small Talk

5

Click here to load reader

description

SmallTalk linguagem orientada a objetos

Transcript of Small Talk

Page 1: Small Talk

Smalltalk foi um dos primeiros sistemas de Pioneer o WIMP (janelas, ícones, menus e ponteiros) interface. Em comparação com linguagens de programação convencionais, tais como C ou Pascal, Smalltalk tem uma sintaxe incomum. Objetos são empregados para representar tudo em Smalltalk, incluindo todos os tipos de dados convencionais que podem ser encontrados em qualquer linguagem de programação: como inteiros, booleanos, números de ponto flutuante, caracteres, strings, arrays. Além disso, os objetos são usados para representar os itens de exibição, como menus, janelas e até mesmo o próprio compilador. Smalltalk é, portanto, descrita como uma linguagem orientada a objetos de maneira uniforme. Linguagem Smalltalk foi desenvolvido no Palo Alto Research Center da Xerox em 1970, o ambiente de programação influenciou grandemente o desenvolvimento de Apple Macintosh e Microsoft Windows. Cincom tem uma versão estendida do Smalltalk-80 chamados VisualWorks (derivado da versão ParcPlace original), que fornece a facilidade de construção de janela e conectividade de banco de dados.

VisualAge da IBM é um ambiente de desenvolvimento concebido para apoiar a criação fácil de aplicações de software em múltiplas plataformas. IBM Smalltalk fornece uma interface de programação de aplicativo independente de plataforma (API) baseadas em padrões da indústria.

VisualAge Smalltalk Empresa V6.0.1 permite o desenvolvimento incremental e rápida de novas aplicações Smalltalk. Os desenvolvedores podem criar e implantar soluções corporativas de serviços da Web para e-business dinâmico utilizando VisualAge Smalltalk. Transações de comunicação pode ser protegido com Secure Socket Layer suporte (SSL).

Composto por nove subsistemas, que engloba a funcionalidade exigida pela maioria dos aplicativos Smalltalk. Aplicações programado inteiramente em conformidade com a especificação de interface Smalltalk corrida sem modificações em todas as plataformas suportadas, ainda adotar o look and feel nativo da plataforma particular. Isso permite que as aplicações sejam produzidos a partir de uma única base de código em múltiplas plataformas, enquanto continua a fornecer um alto grau de integração da plataforma.

Os nove subsistemas são de Smalltalk VisualAge são:

1) Tipos de dados Common Language: Os tipos de dados Common Language (CLDT) subsistema contém as classes e métodos associados para trabalhar com padrão Smalltalk objetos como coleção, Magnitude, booleano, e Stream.

O subsistema Tipos de Dados (Common Language CLDT) fornece uma interface independente de plataforma e de implementação para os tipos de dados básicos que formam os blocos de construção do ambiente de programação Smalltalk. As classes CLDT foram agrupados em sete categorias: booleano, de cobrança, de magnitude, gráficos, de transmissão, de apoio e de manipulação de exceção.

2) implementação da linguagem comum: A implementação da linguagem comum (CLIM) subsistema contém as classes e métodos associados que, em conjunto com a máquina virtual, implementar os mecanismos de classe e de mensagens Smalltalk.

O subsistema Common Implementação Language (CLIM) fornece uma interface independente de plataforma que se destina principalmente para descrever o comportamento compartilhado das classes IBM Smalltalk. Uma classe em Smalltalk é uma abstração que descreve um tipo de objeto. Uma das simetrias fundamentais do ambiente Smalltalk é que cada objeto é uma instância de uma classe. Isso inclui próprias classes, que são instâncias de classes especiais chamados metaclasses.

3) Processo Comum Modelo: O Modelo de Processo Comum (CPM) subsistema contém as classes

Page 2: Small Talk

e métodos associados que facilitem a execução e arbitragem de vários contextos de execução ou de processos Smalltalk.

O subsistema Common Modelo de Processo (CPM) fornece um modelo de processo (threads de memória compartilhada) para IBM Smalltalk. Operações padrão incluem a criação de processos e destruição, bem como as operações de escalonamento de processos, incluindo suspender, reiniciar, e mudança de prioridades. Mecanismos de sincronização simples são fornecidos por semáforos.

4) Sistema de Arquivo Comum: O sistema de arquivo comum (CFS) subsistema contém as classes e métodos associados para executar operações de arquivos e diretórios.

5) Gráficos comuns: os gráficos Comum (CG) subsistema contém as classes e métodos associados para a realização de operações de gráficos de baixo nível, tais como desenho de linhas, círculos e retângulos e para a manipulação de dispositivos independentes imagens, fontes e cores.

6) Widgets comum: a Widgets comuns (CW) subsistema contém as classes e métodos associados para a construção de interfaces de usuário de aplicativos através da composição de componentes de interface de usuário chamado widgets.

A Widgets comuns classes e métodos (CW) subsistema permite que os desenvolvedores para projetar e construir interfaces gráficas usando uma interface de programação de aplicativo (API) com base na OSF / Motif. Usando o subsistema Widgets comum, os desenvolvedores podem fazer o seguinte:

    Criar Widgets individuais, incluindo botões, listas, texto, menus e caixas de diálogo

    Criar estruturas de widgets compostos pela combinação de widgets individuais

    Especifica o posicionamento de widgets em relação à outra

    As operações do programa para ocorrer em resposta às ações do usuário

7) Widgets Extensão: A Widgets prolongadas (EW) subsistema contém as classes e métodos associados para a expansão em interfaces gráficas construídas usando o subsistema Widgets comuns.

As classes Widgets estendida e métodos permitem que os desenvolvedores de aplicativos para expandir as interfaces gráficas construídas usando o Widgets comuns (CW) do subsistema.

É fornecido através do Drag and Drop (DD) subsistema, arrastar e soltar pluggable apoio para os widgets em ambos os Widgets comuns e Widgets estendidos subsistemas sem exigir modificações para os widgets: 8) Drag and Drop. O arrastar e soltar subsistema utiliza os CG e CW subsistemas portáteis.

9) Impressão comum: A impressão comum (CP) subsistema contém as classes e métodos associados para a realização de trabalhos de impressão e controle de página, configuração e saída gráfica e de texto.

IBM Smalltalk utiliza diretamente a funcionalidade nativa fornecido por cada plataforma. IBM Smalltalk emula a funcionalidade da API não diretamente suportado por uma plataforma específica, a fim de apoiar uma interface completa e consistente em todas as plataformas suportadas. Como parte da implementação da IBM Smalltalk, acesso à funcionalidade específica da plataforma

Page 3: Small Talk

também é fornecido.

Objeto linguagens de programação orientada usar envio de mensagem como operações que executam. Se o objeto receptor compreende a mensagem foi enviada, em seguida, uma das suas operações internas serão realizadas. Este, por sua vez, causar algum processamento e um resultado sempre é devolvido. Por exemplo, estamos enviando uma mensagem de três para um inteiro objeto 9. Aqui '+' é um seletor e 3 é um argumento. O resultado de enviar esta mensagem 3 para o objeto inteiro 9 é 12.

Uma expressão de mensagem compreende um receptor, um selector e alguns argumentos. Mensagens-chave são tipo complexo de mensagem.

"(3 raisedTo: 3) raisedTo: 3" é uma palavra-chave de mensagem. raisedTo: e raisedTo: são palavras-chave e números de 3s são argumentos. Palavra-chave termina com dois pontos.

Temos diferentes tipos de variáveis são fornecidas numa linguagem Smalltalk: Variáveis temporárias, variáveis de classe, variáveis de instância, variáveis globais, as variáveis Piscina. Por convenção, as variáveis privadas (variáveis de instância, variáveis temporárias) começar com uma letra inicial minúscula, onde, como variáveis compartilhadas (variáveis de classe, variáveis globais, variáveis de piscina) começar com uma letra maiúscula inicial.

Na maioria das linguagens convencionais, array é o único tipo de coleção, em Smalltalk temos dois tipos de coleções: Coleção sem ordem e coleta seqüencial. O conceito de fechamento do bloco é uma grande característica que dá Smalltalk uma grande vantagem. Está faltando em linguagens como C # e muitas outras línguas.

Em Smalltalk temos centenas de milhares de classes e métodos. O Smalltalk é escrito quase inteiramente em Smalltalk - um pequeno kernel está escrito em código de máquina.

Eu quero apresentar alguns conceitos da sintaxe Smalltalk para ajudar o não-Smalltalker para compreender as questões: