SlideShare uma empresa Scribd logo
1 de 13
Baixar para ler offline
Structured web apps – dartlang.org 
IFRN Natal/Central Disciplina de Paradigmas de Linguagens de Programação Giancarlo Silva - 200924040010
O que é a linguagem Dart? 
Por que o Google criou o Dart? 
Como é a linguagem Dart? 
Exemplos de Código 
Demonstração
Dart é uma linguagem de programação de script voltada para a web, criada com o objetivo de substituir a linguagem JavaScript; 
Desenvolvida pelo Google e anunciada em 2011 durante a GOTO Conference, em Aarhus/Dinamarca; 
Primeira versão estável foi lançada em novembro de 2013.
Até o momento nenhum dos navegadores disponíveis no mercado adota a linguagem Dart, rodando JavaScript como sempre; 
Atualmente existem 3 formas de rodar código Dart: 
◦Compilando para JavaScript; 
◦Dartium (navegador Chromium + DartVM); 
◦Máquina Virtual Dart VM (stand-alone).
Dart Editor é o editor oficial oferecido pelo Google para escrever aplicações web com a linguagem Dart 
Disponível em: dartlang.org
A intenção do Google é fornecer uma alternativa ao JavaScript que seja mais focada em performance, permitindo a criação de web apps mais rápidas, maiores e mais complexas; 
◦Maior desempenho – Linguagem nova, mais fácil de otimizar. Nova máquina virtual com uma inicialização mais rápida, entre outros benefícios; 
◦Melhor produtividade – Facilidade para reutilizar código, APIs mais fáceis de usar, facilidade para analizar, depurar e refatorar código.
Tudo que puder ser atribuído a uma variável é um objeto, até mesmo funções e o valor null; 
◦Todos os objetos herdam da classe Object 
A tipagem do Dart é dinâmica, mas opcionalmente é possível tornar a tipagem estática definindo um tipo a uma variável da forma tradicional: 
◦Variáveis sem tipo definido são do tipo dynamic.
Dart suporta funções top-level, como a função main(), por exemplo, bem como funções agregadas a uma classe (métodos static) ou objeto (métodos de instância); 
Dart permite criação de funções aninhadas (uma função dentro de outra); 
Dart não possui as palavras-chave public, private e protected. Para definir um identificador como privado, inicie-o com um underline (_);
Dart possui dois modos de tempo de execução: 
◦Production – Mais rápido; 
◦Checked – Próprio para desenvolvimento e depuração. 
Entre outras características.
Descobrir o enésimo número da sequência de Fibonacci
Exemplo de uma classe (Orientação a Objetos)
Rolagem de um dado de 6 lados
Seminário - Linguagem Dart: Structured web apps

Mais conteúdo relacionado

Mais procurados

Java introdução ao java
Java   introdução ao javaJava   introdução ao java
Java introdução ao javaArmando Daniel
 
Introdução a JavaScript
Introdução a JavaScriptIntrodução a JavaScript
Introdução a JavaScriptBruno Catão
 
Desenvolvimento Mobile: Híbrido x Nativo
Desenvolvimento Mobile: Híbrido x NativoDesenvolvimento Mobile: Híbrido x Nativo
Desenvolvimento Mobile: Híbrido x NativoLetticia Nicoli
 
Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos (setembro ...
Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos (setembro ...Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos (setembro ...
Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos (setembro ...Carlos Eugenio Torres
 
Aula 1- Fundamentos da computação móvel
Aula 1- Fundamentos da computação móvelAula 1- Fundamentos da computação móvel
Aula 1- Fundamentos da computação móvelJanynne Gomes
 
Sistemas operacionais mobile
Sistemas operacionais mobileSistemas operacionais mobile
Sistemas operacionais mobileDaniel Brandão
 
Extreme programming (xp) - Resumo
Extreme programming (xp) - ResumoExtreme programming (xp) - Resumo
Extreme programming (xp) - ResumoDaniel Brandão
 
Engenharia De Software
Engenharia De SoftwareEngenharia De Software
Engenharia De SoftwareFelipe Goulart
 
Computação Gráfica - Introdução
Computação Gráfica - IntroduçãoComputação Gráfica - Introdução
Computação Gráfica - IntroduçãoTony Alexander Hild
 
Apresentação java
Apresentação javaApresentação java
Apresentação javamunosai
 
Introdução a poo
Introdução a pooIntrodução a poo
Introdução a pooSedu
 
DOMinando JavaScript
DOMinando JavaScriptDOMinando JavaScript
DOMinando JavaScriptThiago Poiani
 

Mais procurados (20)

Java introdução ao java
Java   introdução ao javaJava   introdução ao java
Java introdução ao java
 
Introdução a JavaScript
Introdução a JavaScriptIntrodução a JavaScript
Introdução a JavaScript
 
Introdução ao Android Studio
Introdução ao Android StudioIntrodução ao Android Studio
Introdução ao Android Studio
 
Desenvolvimento Mobile: Híbrido x Nativo
Desenvolvimento Mobile: Híbrido x NativoDesenvolvimento Mobile: Híbrido x Nativo
Desenvolvimento Mobile: Híbrido x Nativo
 
Dispositivos móveis
Dispositivos móveisDispositivos móveis
Dispositivos móveis
 
Computação Gráfica
Computação GráficaComputação Gráfica
Computação Gráfica
 
Padrões MVC
Padrões MVCPadrões MVC
Padrões MVC
 
Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos (setembro ...
Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos (setembro ...Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos (setembro ...
Palestra Mobilidade - Computação móvel, Dispositivos e Aplicativos (setembro ...
 
Aula 1- Fundamentos da computação móvel
Aula 1- Fundamentos da computação móvelAula 1- Fundamentos da computação móvel
Aula 1- Fundamentos da computação móvel
 
Sistemas operacionais mobile
Sistemas operacionais mobileSistemas operacionais mobile
Sistemas operacionais mobile
 
Aula javascript
Aula  javascriptAula  javascript
Aula javascript
 
Extreme programming (xp) - Resumo
Extreme programming (xp) - ResumoExtreme programming (xp) - Resumo
Extreme programming (xp) - Resumo
 
Engenharia De Software
Engenharia De SoftwareEngenharia De Software
Engenharia De Software
 
Aula sobre Linux.
Aula sobre Linux. Aula sobre Linux.
Aula sobre Linux.
 
Computação Gráfica - Introdução
Computação Gráfica - IntroduçãoComputação Gráfica - Introdução
Computação Gráfica - Introdução
 
Apresentação java
Apresentação javaApresentação java
Apresentação java
 
Evolução do windows
Evolução do windows Evolução do windows
Evolução do windows
 
Introdução a poo
Introdução a pooIntrodução a poo
Introdução a poo
 
DOMinando JavaScript
DOMinando JavaScriptDOMinando JavaScript
DOMinando JavaScript
 
POO - 13 - Arrays em Java
POO - 13 - Arrays em JavaPOO - 13 - Arrays em Java
POO - 13 - Arrays em Java
 

Semelhante a Seminário - Linguagem Dart: Structured web apps

Desenvolvimento de aplicações web em Dart
Desenvolvimento de aplicações web em DartDesenvolvimento de aplicações web em Dart
Desenvolvimento de aplicações web em DartRoger Ritter
 
Desenvolvimento de aplicações web em Dart
Desenvolvimento de aplicações web em DartDesenvolvimento de aplicações web em Dart
Desenvolvimento de aplicações web em DartRoger Ritter
 
Flutter - Erick Lima
Flutter - Erick LimaFlutter - Erick Lima
Flutter - Erick LimaErick Farias
 
Dart e Flutter do Server ao Client Side
Dart e Flutter do Server ao Client SideDart e Flutter do Server ao Client Side
Dart e Flutter do Server ao Client SideGDGFoz
 
Testes automatizados.pptx
Testes automatizados.pptxTestes automatizados.pptx
Testes automatizados.pptxCarlos Gonzaga
 
Paradigmas de Linguagens de Programação - Estruturas de Controle
Paradigmas de Linguagens de Programação - Estruturas de ControleParadigmas de Linguagens de Programação - Estruturas de Controle
Paradigmas de Linguagens de Programação - Estruturas de ControleAdriano Teixeira de Souza
 
Evolução do .NET Framework e do Visual Basic
Evolução do .NET Framework e do Visual BasicEvolução do .NET Framework e do Visual Basic
Evolução do .NET Framework e do Visual BasicRicardo Guerra Freitas
 
ZF Básico - 1. Introdução
ZF Básico - 1. IntroduçãoZF Básico - 1. Introdução
ZF Básico - 1. IntroduçãoMarcos Bezerra
 
Django - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com PythonDjango - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com PythonIgor Sobreira
 
CURSO DELPHI FUND. CLIENT SERVER (DIURNO)
CURSO DELPHI FUND. CLIENT SERVER (DIURNO) CURSO DELPHI FUND. CLIENT SERVER (DIURNO)
CURSO DELPHI FUND. CLIENT SERVER (DIURNO) Grupo Treinar
 
Java 01 Java Visao Geral Detalhado
Java 01 Java Visao Geral DetalhadoJava 01 Java Visao Geral Detalhado
Java 01 Java Visao Geral DetalhadoRegis Magalhães
 
Programando para programadores: Desafios na evolução de um Framework
Programando para programadores: Desafios na evolução de um FrameworkProgramando para programadores: Desafios na evolução de um Framework
Programando para programadores: Desafios na evolução de um FrameworkPablo Dall'Oglio
 
Programe a eficácia do seu código
Programe a eficácia do seu códigoPrograme a eficácia do seu código
Programe a eficácia do seu códigoAna Claudia Nogueira
 
Treinamento Android Embarcado
Treinamento Android EmbarcadoTreinamento Android Embarcado
Treinamento Android EmbarcadoOdair Sousa
 

Semelhante a Seminário - Linguagem Dart: Structured web apps (20)

Desenvolvimento de aplicações web em Dart
Desenvolvimento de aplicações web em DartDesenvolvimento de aplicações web em Dart
Desenvolvimento de aplicações web em Dart
 
Desenvolvimento de aplicações web em Dart
Desenvolvimento de aplicações web em DartDesenvolvimento de aplicações web em Dart
Desenvolvimento de aplicações web em Dart
 
Django
DjangoDjango
Django
 
Flutter - Erick Lima
Flutter - Erick LimaFlutter - Erick Lima
Flutter - Erick Lima
 
Dart e Flutter do Server ao Client Side
Dart e Flutter do Server ao Client SideDart e Flutter do Server ao Client Side
Dart e Flutter do Server ao Client Side
 
Linguagens de programação
Linguagens de programaçãoLinguagens de programação
Linguagens de programação
 
Testes automatizados.pptx
Testes automatizados.pptxTestes automatizados.pptx
Testes automatizados.pptx
 
Paradigmas de Linguagens de Programação - Estruturas de Controle
Paradigmas de Linguagens de Programação - Estruturas de ControleParadigmas de Linguagens de Programação - Estruturas de Controle
Paradigmas de Linguagens de Programação - Estruturas de Controle
 
Evolução do .NET Framework e do Visual Basic
Evolução do .NET Framework e do Visual BasicEvolução do .NET Framework e do Visual Basic
Evolução do .NET Framework e do Visual Basic
 
ZF Básico - 1. Introdução
ZF Básico - 1. IntroduçãoZF Básico - 1. Introdução
ZF Básico - 1. Introdução
 
Django - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com PythonDjango - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com Python
 
CURSO DELPHI FUND. CLIENT SERVER (DIURNO)
CURSO DELPHI FUND. CLIENT SERVER (DIURNO) CURSO DELPHI FUND. CLIENT SERVER (DIURNO)
CURSO DELPHI FUND. CLIENT SERVER (DIURNO)
 
Java 01 Java Visao Geral
Java 01 Java Visao GeralJava 01 Java Visao Geral
Java 01 Java Visao Geral
 
Java 01 Java Visao Geral Detalhado
Java 01 Java Visao Geral DetalhadoJava 01 Java Visao Geral Detalhado
Java 01 Java Visao Geral Detalhado
 
15. introducao ao c++
15. introducao ao c++15. introducao ao c++
15. introducao ao c++
 
Programando para programadores: Desafios na evolução de um Framework
Programando para programadores: Desafios na evolução de um FrameworkProgramando para programadores: Desafios na evolução de um Framework
Programando para programadores: Desafios na evolução de um Framework
 
Csharp
CsharpCsharp
Csharp
 
Programe a eficácia do seu código
Programe a eficácia do seu códigoPrograme a eficácia do seu código
Programe a eficácia do seu código
 
Treinamento Android Embarcado
Treinamento Android EmbarcadoTreinamento Android Embarcado
Treinamento Android Embarcado
 
#Moving br workshop
#Moving br workshop#Moving br workshop
#Moving br workshop
 

Mais de Giancarlo Silva

[EXPOTEC 2016] Construção de sites e gestão de conteúdo com WordPress
[EXPOTEC 2016] Construção de sites e gestão de conteúdo com WordPress[EXPOTEC 2016] Construção de sites e gestão de conteúdo com WordPress
[EXPOTEC 2016] Construção de sites e gestão de conteúdo com WordPressGiancarlo Silva
 
EduQuest: Uma proposta para o uso de Serious Games na educação e na capacitaç...
EduQuest: Uma proposta para o uso de Serious Games na educação e na capacitaç...EduQuest: Uma proposta para o uso de Serious Games na educação e na capacitaç...
EduQuest: Uma proposta para o uso de Serious Games na educação e na capacitaç...Giancarlo Silva
 
Seminário - Enterprise Resource Planning (ERP)
Seminário - Enterprise Resource Planning (ERP)Seminário - Enterprise Resource Planning (ERP)
Seminário - Enterprise Resource Planning (ERP)Giancarlo Silva
 
Seminário - Comcast, conformação de pacotes e neutralidade da rede
Seminário - Comcast, conformação de pacotes e neutralidade da redeSeminário - Comcast, conformação de pacotes e neutralidade da rede
Seminário - Comcast, conformação de pacotes e neutralidade da redeGiancarlo Silva
 
Seminário - A Nationwide economiza milhões de dólares tornando-se verde
Seminário - A Nationwide economiza milhões de dólares tornando-se verdeSeminário - A Nationwide economiza milhões de dólares tornando-se verde
Seminário - A Nationwide economiza milhões de dólares tornando-se verdeGiancarlo Silva
 
Seminário - Guido van Rossum: Breve história da linguagem Python
Seminário - Guido van Rossum: Breve história da linguagem PythonSeminário - Guido van Rossum: Breve história da linguagem Python
Seminário - Guido van Rossum: Breve história da linguagem PythonGiancarlo Silva
 
WordPress: De blogs pessoais a grandes portais - Parte 2
WordPress: De blogs pessoais a grandes portais - Parte 2WordPress: De blogs pessoais a grandes portais - Parte 2
WordPress: De blogs pessoais a grandes portais - Parte 2Giancarlo Silva
 
WordPress: De blogs pessoais a grandes portais - Parte 1
WordPress: De blogs pessoais a grandes portais - Parte 1WordPress: De blogs pessoais a grandes portais - Parte 1
WordPress: De blogs pessoais a grandes portais - Parte 1Giancarlo Silva
 
Curso básico de Algoritmos com Python
Curso básico de Algoritmos com PythonCurso básico de Algoritmos com Python
Curso básico de Algoritmos com PythonGiancarlo Silva
 

Mais de Giancarlo Silva (9)

[EXPOTEC 2016] Construção de sites e gestão de conteúdo com WordPress
[EXPOTEC 2016] Construção de sites e gestão de conteúdo com WordPress[EXPOTEC 2016] Construção de sites e gestão de conteúdo com WordPress
[EXPOTEC 2016] Construção de sites e gestão de conteúdo com WordPress
 
EduQuest: Uma proposta para o uso de Serious Games na educação e na capacitaç...
EduQuest: Uma proposta para o uso de Serious Games na educação e na capacitaç...EduQuest: Uma proposta para o uso de Serious Games na educação e na capacitaç...
EduQuest: Uma proposta para o uso de Serious Games na educação e na capacitaç...
 
Seminário - Enterprise Resource Planning (ERP)
Seminário - Enterprise Resource Planning (ERP)Seminário - Enterprise Resource Planning (ERP)
Seminário - Enterprise Resource Planning (ERP)
 
Seminário - Comcast, conformação de pacotes e neutralidade da rede
Seminário - Comcast, conformação de pacotes e neutralidade da redeSeminário - Comcast, conformação de pacotes e neutralidade da rede
Seminário - Comcast, conformação de pacotes e neutralidade da rede
 
Seminário - A Nationwide economiza milhões de dólares tornando-se verde
Seminário - A Nationwide economiza milhões de dólares tornando-se verdeSeminário - A Nationwide economiza milhões de dólares tornando-se verde
Seminário - A Nationwide economiza milhões de dólares tornando-se verde
 
Seminário - Guido van Rossum: Breve história da linguagem Python
Seminário - Guido van Rossum: Breve história da linguagem PythonSeminário - Guido van Rossum: Breve história da linguagem Python
Seminário - Guido van Rossum: Breve história da linguagem Python
 
WordPress: De blogs pessoais a grandes portais - Parte 2
WordPress: De blogs pessoais a grandes portais - Parte 2WordPress: De blogs pessoais a grandes portais - Parte 2
WordPress: De blogs pessoais a grandes portais - Parte 2
 
WordPress: De blogs pessoais a grandes portais - Parte 1
WordPress: De blogs pessoais a grandes portais - Parte 1WordPress: De blogs pessoais a grandes portais - Parte 1
WordPress: De blogs pessoais a grandes portais - Parte 1
 
Curso básico de Algoritmos com Python
Curso básico de Algoritmos com PythonCurso básico de Algoritmos com Python
Curso básico de Algoritmos com Python
 

Seminário - Linguagem Dart: Structured web apps

  • 1. Structured web apps – dartlang.org IFRN Natal/Central Disciplina de Paradigmas de Linguagens de Programação Giancarlo Silva - 200924040010
  • 2. O que é a linguagem Dart? Por que o Google criou o Dart? Como é a linguagem Dart? Exemplos de Código Demonstração
  • 3. Dart é uma linguagem de programação de script voltada para a web, criada com o objetivo de substituir a linguagem JavaScript; Desenvolvida pelo Google e anunciada em 2011 durante a GOTO Conference, em Aarhus/Dinamarca; Primeira versão estável foi lançada em novembro de 2013.
  • 4. Até o momento nenhum dos navegadores disponíveis no mercado adota a linguagem Dart, rodando JavaScript como sempre; Atualmente existem 3 formas de rodar código Dart: ◦Compilando para JavaScript; ◦Dartium (navegador Chromium + DartVM); ◦Máquina Virtual Dart VM (stand-alone).
  • 5. Dart Editor é o editor oficial oferecido pelo Google para escrever aplicações web com a linguagem Dart Disponível em: dartlang.org
  • 6. A intenção do Google é fornecer uma alternativa ao JavaScript que seja mais focada em performance, permitindo a criação de web apps mais rápidas, maiores e mais complexas; ◦Maior desempenho – Linguagem nova, mais fácil de otimizar. Nova máquina virtual com uma inicialização mais rápida, entre outros benefícios; ◦Melhor produtividade – Facilidade para reutilizar código, APIs mais fáceis de usar, facilidade para analizar, depurar e refatorar código.
  • 7. Tudo que puder ser atribuído a uma variável é um objeto, até mesmo funções e o valor null; ◦Todos os objetos herdam da classe Object A tipagem do Dart é dinâmica, mas opcionalmente é possível tornar a tipagem estática definindo um tipo a uma variável da forma tradicional: ◦Variáveis sem tipo definido são do tipo dynamic.
  • 8. Dart suporta funções top-level, como a função main(), por exemplo, bem como funções agregadas a uma classe (métodos static) ou objeto (métodos de instância); Dart permite criação de funções aninhadas (uma função dentro de outra); Dart não possui as palavras-chave public, private e protected. Para definir um identificador como privado, inicie-o com um underline (_);
  • 9. Dart possui dois modos de tempo de execução: ◦Production – Mais rápido; ◦Checked – Próprio para desenvolvimento e depuração. Entre outras características.
  • 10. Descobrir o enésimo número da sequência de Fibonacci
  • 11. Exemplo de uma classe (Orientação a Objetos)
  • 12. Rolagem de um dado de 6 lados