SlideShare uma empresa Scribd logo
1 de 15
Baixar para ler offline
Uma linguagem de programação
“puramente orientada a objetos”.

Componentes :
Alisson Tenório Pinto
Natália Julieta Soares de Souza
Michel Alves dos Santos
HISTÓRICO
Local de Nascimento e Período.
Genitores/Criadores/Projetistas.
Genealogia/Pedigree/Ancestralidades.
Motivação.

Centro de Pesquisa da XEROX em Palo Alto (Califórnia) – XEROX PARC
HISTÓRICO
Adele Goldberg.
Dan Ingalls.
Alan Curtis Kay.

Adele Goldberg

Dan Ingalls

Alan Kay
HISTÓRICO
Alan Curtis Kay.

Springfield, Massachusetts, 17 de maio de 1940;
Um dos inventores da linguagem de programação Smalltalk;
Um dos pais do conceito de programação orientada a objetos;
Influenciado pelas idéias de Seymour Papert;
Concebeu a idéia de laptop através do projeto Dynabook;
Concebeu também o conceito das modernas GUI´s;
Consultor na Xerox PARC em 1970, em 71 passa a ser pesquisador;
Após dez anos na Xerox PARC, Kay tornou-se cientista chefe da
Atari por três anos.
1984 - Kay associou-se a Apple Computer [criando o ATG].
Logo após associou-se a Walt Disney Imagineering.
2001 - Após a Disney, ele fundou Viewpoints Research Institute.
Posteriormente, trabalhou com um time da Applied Minds .
Torna-se Professor Visitante da Kyoto University, e Adjunto no MIT.
Atualmente está profundamente envolvido com projetos como o
Squeak, OLPC e OpenCroquet.
HISTÓRICO
Genealogia
Fortran

Cobol

Algol

Fonte :
Figura retirada do livro: “UML
Metodologias e Ferramentas CASE”,
Alberto Silva e Carlos Videira.

Pascal

Simula

C

Modula-2

Objective C
Smalltalk
C++
Eiffel

Object Pascal
Actor

Java

C#

ADA
HISTÓRICO
Xerox Alto executando Smalltalk.

XEROX Alto com Interface XeroxStar executando uma das primeiras versões de Smalltalk.
O que é Smalltalk ?
Compilador

+

Interface Gráfica do Usuário
Máquina Virtual

+

+

Biblioteca De Classes

+

Navegador de Classes e Métodos

+
.

Recursos usuais de um Sistema Operacional

Janela de codificação em Smalltalk.
CARACTERÍSTICAS
“Puramente orientada a objetos”.
Conjunto simplificado de regras.
Todo objeto é a instância de alguma classe.
Quase todas as expressões são da forma <recebedor> <mensagem>.
Mensagens fazem com que métodos sejam executados.
Toda classe possui uma classe mãe, exceto Object.
Herança simples.
Garbage Collector “Automático”.
Ambiente de desenvolvimento integrado.
Mensagem

SENDER

RECEIVER
Valor de Retorno

Um método de objeto sendo invocado por outro objeto enviando uma mensagem para ele.
(Retirado de The Art and Science of Smalltalk).
SINTAXE
Por padrão possui apenas 6 palavras reservadas:
super, self, true, false, thisContext, nil.
Caracteres reservados: := ^ || $a #( ) . ; [] “” ‘’
Envio de mensagem ; unária, binária, de palavra-chave
Até mesmo blocos de código são considerados objetos.

Impressão dos quadrados dos números de 1 a 12.
SINTAXE
Mensagem unária: não possuem argumentos.
Array := Array new.
Array size.

Mensagem binária: possuem apenas um argumento.
São chamadas por um símbolo e normalmente usadas
para expressões matemáticas.
3 + 4
‘Hello’, ‘World’.

Mensagem de palavra-chave: Podem ter um ou mais
argumentos.
Smalltalk allButFirst: 5.
2 to: 10 by: 2.
SINTAXE
Seleção Condicional:

Provê uma mensagem especial cujos
argumentos são ambos da classe Bloco. Essa mensagem faz parte do
protocolo da classe Boolean, cujas duas únicas instâncias são os objetos
true e false.

O código acima poderia ser substituído por :
paridade := numero  2 = 0 ifTrue: ['par'] ifFalse: ['impar'].
SINTAXE
Repetição Simples:

Para repetir um número determinado de vezes
uma seqüência de expressões, o mecanismo usado em Smalltalk consiste em
enviar a um Inteiro, cujo valor é o número desejado de repetições, a
mensagem timesRepeat:, onde o argumento é um bloco que contém a seqüência
de expressões a repetir.

Exemplo de repetição simples.
SINTAXE
Repetição Condicional:

Smalltalk implementa a repetição
condicional de um bloco de expressões através do envio da mensagem
whileTrue: (ou whileFalse:) a outro bloco, cujo valor retornado deve ser
um Booleano. O argumento da mensagem é o bloco que contém a seqüência de
expressões a serem repetidas..

Exemplo de repetição condicional.
Ferramentas
Desenvolvimento Web : Seaside.
Ensino : Squeak Etoys, SqueakBot.
Multimídia : Plopp.
Persistência : Glorp e GemStone.

Janela do Squeak e sessão do Plopp.
CONCLUSÕES
Marco na história das linguagens
Contribuiu com a evolução das GUI´s.
Impulsionou um novo modo de pensar.
Influencia até hoje outras linguagens.
Serve de base atualmente para projetos
de educação como o OLPC, OpenCroquet, etc.

OLPC – One Laptop Per Child.

Mais conteúdo relacionado

Mais procurados

Programação Orientada a Objetos
Programação Orientada a ObjetosProgramação Orientada a Objetos
Programação Orientada a ObjetosIgor Takenami
 
intraempreendedorismo VISÃO DE DONO
intraempreendedorismo  VISÃO DE DONOintraempreendedorismo  VISÃO DE DONO
intraempreendedorismo VISÃO DE DONOHareton Tralback
 
Brand Equity, o Valor da Marca
Brand Equity, o Valor da MarcaBrand Equity, o Valor da Marca
Brand Equity, o Valor da MarcaPablo Caldas
 
Estratégia de produção e operações
Estratégia de produção e operaçõesEstratégia de produção e operações
Estratégia de produção e operaçõesdedefs
 
Gestão da Qualidade & Produtividade
Gestão da Qualidade & ProdutividadeGestão da Qualidade & Produtividade
Gestão da Qualidade & ProdutividadeMarcos Magnanti
 
Aula 11 Criatividade e Inovação
Aula 11 Criatividade e InovaçãoAula 11 Criatividade e Inovação
Aula 11 Criatividade e InovaçãoCarlos Alves
 
Introdução às leis da termodinâmica
Introdução às leis da termodinâmicaIntrodução às leis da termodinâmica
Introdução às leis da termodinâmicaHelder Guerreiro
 
Gerenciamento de Projetos de TI
Gerenciamento de Projetos de TIGerenciamento de Projetos de TI
Gerenciamento de Projetos de TIEliseu Castelo
 
85615563 teorias-organizacionais-resumo
85615563 teorias-organizacionais-resumo85615563 teorias-organizacionais-resumo
85615563 teorias-organizacionais-resumoEduardo Moreira
 
Mix de Marketing - Produto - Parte I
Mix de Marketing - Produto - Parte IMix de Marketing - Produto - Parte I
Mix de Marketing - Produto - Parte IRobson Costa
 
motivação no trabalho
motivação no trabalhomotivação no trabalho
motivação no trabalhojosi uchoa
 
Aula03 PHP - Estruturas Condicionais
Aula03 PHP - Estruturas CondicionaisAula03 PHP - Estruturas Condicionais
Aula03 PHP - Estruturas CondicionaisDaniel Brandão
 
Gerenciamento de Projetos
Gerenciamento de ProjetosGerenciamento de Projetos
Gerenciamento de ProjetosMarcos Abreu
 
Sistema de recompensas nas organizações
Sistema de recompensas nas organizaçõesSistema de recompensas nas organizações
Sistema de recompensas nas organizaçõesMichael Silva
 

Mais procurados (20)

Gestão Empresarial.pdf
Gestão Empresarial.pdfGestão Empresarial.pdf
Gestão Empresarial.pdf
 
Programação Orientada a Objetos
Programação Orientada a ObjetosProgramação Orientada a Objetos
Programação Orientada a Objetos
 
intraempreendedorismo VISÃO DE DONO
intraempreendedorismo  VISÃO DE DONOintraempreendedorismo  VISÃO DE DONO
intraempreendedorismo VISÃO DE DONO
 
Brand Equity, o Valor da Marca
Brand Equity, o Valor da MarcaBrand Equity, o Valor da Marca
Brand Equity, o Valor da Marca
 
Estratégia de produção e operações
Estratégia de produção e operaçõesEstratégia de produção e operações
Estratégia de produção e operações
 
Gestão da Qualidade & Produtividade
Gestão da Qualidade & ProdutividadeGestão da Qualidade & Produtividade
Gestão da Qualidade & Produtividade
 
Aula 11 Criatividade e Inovação
Aula 11 Criatividade e InovaçãoAula 11 Criatividade e Inovação
Aula 11 Criatividade e Inovação
 
Introdução às leis da termodinâmica
Introdução às leis da termodinâmicaIntrodução às leis da termodinâmica
Introdução às leis da termodinâmica
 
Gestão e Liderança_Prof. Randes
Gestão e Liderança_Prof. RandesGestão e Liderança_Prof. Randes
Gestão e Liderança_Prof. Randes
 
Gerenciamento de Projetos de TI
Gerenciamento de Projetos de TIGerenciamento de Projetos de TI
Gerenciamento de Projetos de TI
 
85615563 teorias-organizacionais-resumo
85615563 teorias-organizacionais-resumo85615563 teorias-organizacionais-resumo
85615563 teorias-organizacionais-resumo
 
Mix de Marketing - Produto - Parte I
Mix de Marketing - Produto - Parte IMix de Marketing - Produto - Parte I
Mix de Marketing - Produto - Parte I
 
Gamificação para empresas
Gamificação para empresasGamificação para empresas
Gamificação para empresas
 
Mix de Marketing
Mix de MarketingMix de Marketing
Mix de Marketing
 
motivação no trabalho
motivação no trabalhomotivação no trabalho
motivação no trabalho
 
Aula03 PHP - Estruturas Condicionais
Aula03 PHP - Estruturas CondicionaisAula03 PHP - Estruturas Condicionais
Aula03 PHP - Estruturas Condicionais
 
Pense como dono
Pense como donoPense como dono
Pense como dono
 
Gerenciamento de Projetos
Gerenciamento de ProjetosGerenciamento de Projetos
Gerenciamento de Projetos
 
Sistema de recompensas nas organizações
Sistema de recompensas nas organizaçõesSistema de recompensas nas organizações
Sistema de recompensas nas organizações
 
Computação em nuvem
Computação em nuvemComputação em nuvem
Computação em nuvem
 

Semelhante a Smalltalk Presentation

Python: programação divertida novamente
Python: programação divertida novamentePython: programação divertida novamente
Python: programação divertida novamenteRodrigo Amaral
 
Introdução a programação em python d2
Introdução a programação em python d2Introdução a programação em python d2
Introdução a programação em python d2Moises de Paula
 
Tutorial Python ed. #2
Tutorial Python ed. #2Tutorial Python ed. #2
Tutorial Python ed. #2Fabio Spanhol
 
Criando sua própria linguagem de programação
Criando sua própria linguagem de programaçãoCriando sua própria linguagem de programação
Criando sua própria linguagem de programaçãoronaldoferraz
 
Python Training #1 - ed4
Python Training #1 - ed4Python Training #1 - ed4
Python Training #1 - ed4Fabio Spanhol
 
Computação Científica com SciPy - Brevíssimo Tutorial
Computação Científica com SciPy - Brevíssimo TutorialComputação Científica com SciPy - Brevíssimo Tutorial
Computação Científica com SciPy - Brevíssimo TutorialFabio Spanhol
 
Linguagens Poo
Linguagens PooLinguagens Poo
Linguagens PooInfogenius
 
Programando para web com python - Introdução a Python
Programando para web com python - Introdução a PythonProgramando para web com python - Introdução a Python
Programando para web com python - Introdução a PythonAlvaro Oliveira
 
TechEd Brasil 2011: DEV 303 - Atualizando suas habilidades de programação com...
TechEd Brasil 2011: DEV 303 - Atualizando suas habilidades de programação com...TechEd Brasil 2011: DEV 303 - Atualizando suas habilidades de programação com...
TechEd Brasil 2011: DEV 303 - Atualizando suas habilidades de programação com...Rogério Moraes de Carvalho
 
TechEd Brasil 2011: DEV 303 - Atualizando suas habilidades de programação com...
TechEd Brasil 2011: DEV 303 - Atualizando suas habilidades de programação com...TechEd Brasil 2011: DEV 303 - Atualizando suas habilidades de programação com...
TechEd Brasil 2011: DEV 303 - Atualizando suas habilidades de programação com...Rogério Moraes de Carvalho
 
Python - Introdução Básica
Python - Introdução BásicaPython - Introdução Básica
Python - Introdução BásicaChristian Perone
 
Aspectos Teóricos da Linguagem de Programação Smalltalk
Aspectos Teóricos da Linguagem de Programação SmalltalkAspectos Teóricos da Linguagem de Programação Smalltalk
Aspectos Teóricos da Linguagem de Programação SmalltalkMichel Alves
 
Python Mini Ccurso Consegi2011
Python Mini Ccurso Consegi2011Python Mini Ccurso Consegi2011
Python Mini Ccurso Consegi2011Luiz Aldabalde
 
Microsoft S2B - C# ASP.NET
Microsoft S2B - C# ASP.NETMicrosoft S2B - C# ASP.NET
Microsoft S2B - C# ASP.NETphilipsoares
 
TDC 2011 Goiânia: Evolução da linguagem de programação C#
TDC 2011 Goiânia: Evolução da linguagem de programação C#TDC 2011 Goiânia: Evolução da linguagem de programação C#
TDC 2011 Goiânia: Evolução da linguagem de programação C#Rogério Moraes de Carvalho
 

Semelhante a Smalltalk Presentation (20)

Tutorial Python - 1
Tutorial Python - 1Tutorial Python - 1
Tutorial Python - 1
 
Python: programação divertida novamente
Python: programação divertida novamentePython: programação divertida novamente
Python: programação divertida novamente
 
Introdução a programação em python d2
Introdução a programação em python d2Introdução a programação em python d2
Introdução a programação em python d2
 
Tutorial Python ed. #2
Tutorial Python ed. #2Tutorial Python ed. #2
Tutorial Python ed. #2
 
Criando sua própria linguagem de programação
Criando sua própria linguagem de programaçãoCriando sua própria linguagem de programação
Criando sua própria linguagem de programação
 
Python Training #1 - ed4
Python Training #1 - ed4Python Training #1 - ed4
Python Training #1 - ed4
 
Computação Científica com SciPy - Brevíssimo Tutorial
Computação Científica com SciPy - Brevíssimo TutorialComputação Científica com SciPy - Brevíssimo Tutorial
Computação Científica com SciPy - Brevíssimo Tutorial
 
Linguagens Poo
Linguagens PooLinguagens Poo
Linguagens Poo
 
Programando para web com python - Introdução a Python
Programando para web com python - Introdução a PythonProgramando para web com python - Introdução a Python
Programando para web com python - Introdução a Python
 
Python tutorial-ed3
Python tutorial-ed3Python tutorial-ed3
Python tutorial-ed3
 
TechEd Brasil 2011: DEV 303 - Atualizando suas habilidades de programação com...
TechEd Brasil 2011: DEV 303 - Atualizando suas habilidades de programação com...TechEd Brasil 2011: DEV 303 - Atualizando suas habilidades de programação com...
TechEd Brasil 2011: DEV 303 - Atualizando suas habilidades de programação com...
 
TechEd Brasil 2011: DEV 303 - Atualizando suas habilidades de programação com...
TechEd Brasil 2011: DEV 303 - Atualizando suas habilidades de programação com...TechEd Brasil 2011: DEV 303 - Atualizando suas habilidades de programação com...
TechEd Brasil 2011: DEV 303 - Atualizando suas habilidades de programação com...
 
Clean Coder
Clean CoderClean Coder
Clean Coder
 
Python - Introdução Básica
Python - Introdução BásicaPython - Introdução Básica
Python - Introdução Básica
 
Linguagem Java- Iniciação à programação Java
Linguagem Java- Iniciação à programação JavaLinguagem Java- Iniciação à programação Java
Linguagem Java- Iniciação à programação Java
 
Aspectos Teóricos da Linguagem de Programação Smalltalk
Aspectos Teóricos da Linguagem de Programação SmalltalkAspectos Teóricos da Linguagem de Programação Smalltalk
Aspectos Teóricos da Linguagem de Programação Smalltalk
 
Python Mini Ccurso Consegi2011
Python Mini Ccurso Consegi2011Python Mini Ccurso Consegi2011
Python Mini Ccurso Consegi2011
 
Microsoft S2B - C# ASP.NET
Microsoft S2B - C# ASP.NETMicrosoft S2B - C# ASP.NET
Microsoft S2B - C# ASP.NET
 
TDC 2011 Goiânia: Evolução da linguagem de programação C#
TDC 2011 Goiânia: Evolução da linguagem de programação C#TDC 2011 Goiânia: Evolução da linguagem de programação C#
TDC 2011 Goiânia: Evolução da linguagem de programação C#
 
Python2.5.ppt
Python2.5.pptPython2.5.ppt
Python2.5.ppt
 

Mais de Michel Alves

Texture Synthesis: An Approach Based on GPU Use
Texture Synthesis: An Approach Based on GPU UseTexture Synthesis: An Approach Based on GPU Use
Texture Synthesis: An Approach Based on GPU UseMichel Alves
 
Intelligent Transfer of Thematic Harmonic Color Palettes
Intelligent Transfer of Thematic Harmonic Color PalettesIntelligent Transfer of Thematic Harmonic Color Palettes
Intelligent Transfer of Thematic Harmonic Color PalettesMichel Alves
 
A Framework for Harmonic Color Measures
A Framework for Harmonic Color MeasuresA Framework for Harmonic Color Measures
A Framework for Harmonic Color MeasuresMichel Alves
 
Effectiveness of Image Quality Assessment Indexes
Effectiveness of Image Quality Assessment IndexesEffectiveness of Image Quality Assessment Indexes
Effectiveness of Image Quality Assessment IndexesMichel Alves
 
Introduction to Kernel Functions
Introduction to Kernel FunctionsIntroduction to Kernel Functions
Introduction to Kernel FunctionsMichel Alves
 
About Perception and Hue Histograms in HSV Space
About Perception and Hue Histograms in HSV SpaceAbout Perception and Hue Histograms in HSV Space
About Perception and Hue Histograms in HSV SpaceMichel Alves
 
Color Harmonization - Results
Color Harmonization - ResultsColor Harmonization - Results
Color Harmonization - ResultsMichel Alves
 
Wave Simulation Using Perlin Noise
Wave Simulation Using Perlin NoiseWave Simulation Using Perlin Noise
Wave Simulation Using Perlin NoiseMichel Alves
 
Similarity Maps Using SSIM Index
Similarity Maps Using SSIM IndexSimilarity Maps Using SSIM Index
Similarity Maps Using SSIM IndexMichel Alves
 
Qualifying Exam - Image-Based Reconstruction With Color Harmonization
Qualifying Exam - Image-Based Reconstruction With Color HarmonizationQualifying Exam - Image-Based Reconstruction With Color Harmonization
Qualifying Exam - Image-Based Reconstruction With Color HarmonizationMichel Alves
 
TMS - Schedule of Presentations and Reports
TMS - Schedule of Presentations and ReportsTMS - Schedule of Presentations and Reports
TMS - Schedule of Presentations and ReportsMichel Alves
 
Month Presentations Schedule - March/2015 - LCG/UFRJ
Month Presentations Schedule - March/2015 - LCG/UFRJMonth Presentations Schedule - March/2015 - LCG/UFRJ
Month Presentations Schedule - March/2015 - LCG/UFRJMichel Alves
 
Color Palettes in R
Color Palettes in RColor Palettes in R
Color Palettes in RMichel Alves
 
Hue Wheel Prototype
Hue Wheel PrototypeHue Wheel Prototype
Hue Wheel PrototypeMichel Alves
 
Triangle Mesh Plot
Triangle Mesh PlotTriangle Mesh Plot
Triangle Mesh PlotMichel Alves
 
Capacity-Constrained Point Distributions :: Video Slides
Capacity-Constrained Point Distributions :: Video SlidesCapacity-Constrained Point Distributions :: Video Slides
Capacity-Constrained Point Distributions :: Video SlidesMichel Alves
 
Capacity-Constrained Point Distributions :: Density Function Catalog
Capacity-Constrained Point Distributions :: Density Function CatalogCapacity-Constrained Point Distributions :: Density Function Catalog
Capacity-Constrained Point Distributions :: Density Function CatalogMichel Alves
 

Mais de Michel Alves (20)

Texture Synthesis: An Approach Based on GPU Use
Texture Synthesis: An Approach Based on GPU UseTexture Synthesis: An Approach Based on GPU Use
Texture Synthesis: An Approach Based on GPU Use
 
Intelligent Transfer of Thematic Harmonic Color Palettes
Intelligent Transfer of Thematic Harmonic Color PalettesIntelligent Transfer of Thematic Harmonic Color Palettes
Intelligent Transfer of Thematic Harmonic Color Palettes
 
A Framework for Harmonic Color Measures
A Framework for Harmonic Color MeasuresA Framework for Harmonic Color Measures
A Framework for Harmonic Color Measures
 
Effectiveness of Image Quality Assessment Indexes
Effectiveness of Image Quality Assessment IndexesEffectiveness of Image Quality Assessment Indexes
Effectiveness of Image Quality Assessment Indexes
 
Introduction to Kernel Functions
Introduction to Kernel FunctionsIntroduction to Kernel Functions
Introduction to Kernel Functions
 
About Perception and Hue Histograms in HSV Space
About Perception and Hue Histograms in HSV SpaceAbout Perception and Hue Histograms in HSV Space
About Perception and Hue Histograms in HSV Space
 
Color Harmonization - Results
Color Harmonization - ResultsColor Harmonization - Results
Color Harmonization - Results
 
Wave Simulation Using Perlin Noise
Wave Simulation Using Perlin NoiseWave Simulation Using Perlin Noise
Wave Simulation Using Perlin Noise
 
Similarity Maps Using SSIM Index
Similarity Maps Using SSIM IndexSimilarity Maps Using SSIM Index
Similarity Maps Using SSIM Index
 
Qualifying Exam - Image-Based Reconstruction With Color Harmonization
Qualifying Exam - Image-Based Reconstruction With Color HarmonizationQualifying Exam - Image-Based Reconstruction With Color Harmonization
Qualifying Exam - Image-Based Reconstruction With Color Harmonization
 
TMS - Schedule of Presentations and Reports
TMS - Schedule of Presentations and ReportsTMS - Schedule of Presentations and Reports
TMS - Schedule of Presentations and Reports
 
Month Presentations Schedule - March/2015 - LCG/UFRJ
Month Presentations Schedule - March/2015 - LCG/UFRJMonth Presentations Schedule - March/2015 - LCG/UFRJ
Month Presentations Schedule - March/2015 - LCG/UFRJ
 
Color Palettes in R
Color Palettes in RColor Palettes in R
Color Palettes in R
 
Sigmoid Curve Erf
Sigmoid Curve ErfSigmoid Curve Erf
Sigmoid Curve Erf
 
Hue Wheel Prototype
Hue Wheel PrototypeHue Wheel Prototype
Hue Wheel Prototype
 
Cosine Curve
Cosine CurveCosine Curve
Cosine Curve
 
Triangle Mesh Plot
Triangle Mesh PlotTriangle Mesh Plot
Triangle Mesh Plot
 
Triangle Plot
Triangle PlotTriangle Plot
Triangle Plot
 
Capacity-Constrained Point Distributions :: Video Slides
Capacity-Constrained Point Distributions :: Video SlidesCapacity-Constrained Point Distributions :: Video Slides
Capacity-Constrained Point Distributions :: Video Slides
 
Capacity-Constrained Point Distributions :: Density Function Catalog
Capacity-Constrained Point Distributions :: Density Function CatalogCapacity-Constrained Point Distributions :: Density Function Catalog
Capacity-Constrained Point Distributions :: Density Function Catalog
 

Último

Apresentação em Powerpoint do Bioma Catinga.pptx
Apresentação em Powerpoint do Bioma Catinga.pptxApresentação em Powerpoint do Bioma Catinga.pptx
Apresentação em Powerpoint do Bioma Catinga.pptxLusGlissonGud
 
atividades_reforço_4°ano_231206_132728.pdf
atividades_reforço_4°ano_231206_132728.pdfatividades_reforço_4°ano_231206_132728.pdf
atividades_reforço_4°ano_231206_132728.pdfLuizaAbaAba
 
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfProjeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfHELENO FAVACHO
 
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIA
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIAPROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIA
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIAHELENO FAVACHO
 
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdfLeloIurk1
 
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfLeloIurk1
 
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfCurrículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfTutor de matemática Ícaro
 
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...HELENO FAVACHO
 
Jogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para criançasJogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para criançasSocorro Machado
 
A QUATRO MÃOS - MARILDA CASTANHA . pdf
A QUATRO MÃOS  -  MARILDA CASTANHA . pdfA QUATRO MÃOS  -  MARILDA CASTANHA . pdf
A QUATRO MÃOS - MARILDA CASTANHA . pdfAna Lemos
 
PROJETO DE EXTENSÃO I - Radiologia Tecnologia
PROJETO DE EXTENSÃO I - Radiologia TecnologiaPROJETO DE EXTENSÃO I - Radiologia Tecnologia
PROJETO DE EXTENSÃO I - Radiologia TecnologiaHELENO FAVACHO
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...azulassessoria9
 
Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãIlda Bicacro
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...azulassessoria9
 
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfApresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfcomercial400681
 
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptxTeoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptxTailsonSantos1
 
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfRecomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfFrancisco Márcio Bezerra Oliveira
 
Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Ilda Bicacro
 
Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Ilda Bicacro
 

Último (20)

Apresentação em Powerpoint do Bioma Catinga.pptx
Apresentação em Powerpoint do Bioma Catinga.pptxApresentação em Powerpoint do Bioma Catinga.pptx
Apresentação em Powerpoint do Bioma Catinga.pptx
 
atividades_reforço_4°ano_231206_132728.pdf
atividades_reforço_4°ano_231206_132728.pdfatividades_reforço_4°ano_231206_132728.pdf
atividades_reforço_4°ano_231206_132728.pdf
 
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfProjeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
 
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIA
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIAPROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIA
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIA
 
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
 
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
 
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfCurrículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
 
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
 
Jogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para criançasJogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para crianças
 
A QUATRO MÃOS - MARILDA CASTANHA . pdf
A QUATRO MÃOS  -  MARILDA CASTANHA . pdfA QUATRO MÃOS  -  MARILDA CASTANHA . pdf
A QUATRO MÃOS - MARILDA CASTANHA . pdf
 
PROJETO DE EXTENSÃO I - Radiologia Tecnologia
PROJETO DE EXTENSÃO I - Radiologia TecnologiaPROJETO DE EXTENSÃO I - Radiologia Tecnologia
PROJETO DE EXTENSÃO I - Radiologia Tecnologia
 
Aula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIXAula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIX
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
 
Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! Sertã
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
 
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfApresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
 
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptxTeoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
 
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfRecomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
 
Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"
 
Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!
 

Smalltalk Presentation

  • 1. Uma linguagem de programação “puramente orientada a objetos”. Componentes : Alisson Tenório Pinto Natália Julieta Soares de Souza Michel Alves dos Santos
  • 2. HISTÓRICO Local de Nascimento e Período. Genitores/Criadores/Projetistas. Genealogia/Pedigree/Ancestralidades. Motivação. Centro de Pesquisa da XEROX em Palo Alto (Califórnia) – XEROX PARC
  • 3. HISTÓRICO Adele Goldberg. Dan Ingalls. Alan Curtis Kay. Adele Goldberg Dan Ingalls Alan Kay
  • 4. HISTÓRICO Alan Curtis Kay. Springfield, Massachusetts, 17 de maio de 1940; Um dos inventores da linguagem de programação Smalltalk; Um dos pais do conceito de programação orientada a objetos; Influenciado pelas idéias de Seymour Papert; Concebeu a idéia de laptop através do projeto Dynabook; Concebeu também o conceito das modernas GUI´s; Consultor na Xerox PARC em 1970, em 71 passa a ser pesquisador; Após dez anos na Xerox PARC, Kay tornou-se cientista chefe da Atari por três anos. 1984 - Kay associou-se a Apple Computer [criando o ATG]. Logo após associou-se a Walt Disney Imagineering. 2001 - Após a Disney, ele fundou Viewpoints Research Institute. Posteriormente, trabalhou com um time da Applied Minds . Torna-se Professor Visitante da Kyoto University, e Adjunto no MIT. Atualmente está profundamente envolvido com projetos como o Squeak, OLPC e OpenCroquet.
  • 5. HISTÓRICO Genealogia Fortran Cobol Algol Fonte : Figura retirada do livro: “UML Metodologias e Ferramentas CASE”, Alberto Silva e Carlos Videira. Pascal Simula C Modula-2 Objective C Smalltalk C++ Eiffel Object Pascal Actor Java C# ADA
  • 6. HISTÓRICO Xerox Alto executando Smalltalk. XEROX Alto com Interface XeroxStar executando uma das primeiras versões de Smalltalk.
  • 7. O que é Smalltalk ? Compilador + Interface Gráfica do Usuário Máquina Virtual + + Biblioteca De Classes + Navegador de Classes e Métodos + . Recursos usuais de um Sistema Operacional Janela de codificação em Smalltalk.
  • 8. CARACTERÍSTICAS “Puramente orientada a objetos”. Conjunto simplificado de regras. Todo objeto é a instância de alguma classe. Quase todas as expressões são da forma <recebedor> <mensagem>. Mensagens fazem com que métodos sejam executados. Toda classe possui uma classe mãe, exceto Object. Herança simples. Garbage Collector “Automático”. Ambiente de desenvolvimento integrado. Mensagem SENDER RECEIVER Valor de Retorno Um método de objeto sendo invocado por outro objeto enviando uma mensagem para ele. (Retirado de The Art and Science of Smalltalk).
  • 9. SINTAXE Por padrão possui apenas 6 palavras reservadas: super, self, true, false, thisContext, nil. Caracteres reservados: := ^ || $a #( ) . ; [] “” ‘’ Envio de mensagem ; unária, binária, de palavra-chave Até mesmo blocos de código são considerados objetos. Impressão dos quadrados dos números de 1 a 12.
  • 10. SINTAXE Mensagem unária: não possuem argumentos. Array := Array new. Array size. Mensagem binária: possuem apenas um argumento. São chamadas por um símbolo e normalmente usadas para expressões matemáticas. 3 + 4 ‘Hello’, ‘World’. Mensagem de palavra-chave: Podem ter um ou mais argumentos. Smalltalk allButFirst: 5. 2 to: 10 by: 2.
  • 11. SINTAXE Seleção Condicional: Provê uma mensagem especial cujos argumentos são ambos da classe Bloco. Essa mensagem faz parte do protocolo da classe Boolean, cujas duas únicas instâncias são os objetos true e false. O código acima poderia ser substituído por : paridade := numero 2 = 0 ifTrue: ['par'] ifFalse: ['impar'].
  • 12. SINTAXE Repetição Simples: Para repetir um número determinado de vezes uma seqüência de expressões, o mecanismo usado em Smalltalk consiste em enviar a um Inteiro, cujo valor é o número desejado de repetições, a mensagem timesRepeat:, onde o argumento é um bloco que contém a seqüência de expressões a repetir. Exemplo de repetição simples.
  • 13. SINTAXE Repetição Condicional: Smalltalk implementa a repetição condicional de um bloco de expressões através do envio da mensagem whileTrue: (ou whileFalse:) a outro bloco, cujo valor retornado deve ser um Booleano. O argumento da mensagem é o bloco que contém a seqüência de expressões a serem repetidas.. Exemplo de repetição condicional.
  • 14. Ferramentas Desenvolvimento Web : Seaside. Ensino : Squeak Etoys, SqueakBot. Multimídia : Plopp. Persistência : Glorp e GemStone. Janela do Squeak e sessão do Plopp.
  • 15. CONCLUSÕES Marco na história das linguagens Contribuiu com a evolução das GUI´s. Impulsionou um novo modo de pensar. Influencia até hoje outras linguagens. Serve de base atualmente para projetos de educação como o OLPC, OpenCroquet, etc. OLPC – One Laptop Per Child.