Skip to content

lucianobajr/Flutter

Repository files navigation

Flutter with Dart

                Este Repositório tem como objetivo os estudos do framework Flutter
                               utilizando a linguagem Dart.               

O Flutter é o kit de ferramentas de interface do usuário do Google para criar aplicativos compilados nativamente para dispositivos móveis , web e desktop a partir de uma única base de código feita em Dart.

O Dart é uma linguagem de programação fortemente tipada inicialmente criada pela Google em 2011. A missão inicial do Dart era substituir o JavaScript para desenvolvimento de scripts em páginas web. Porém, com a evolução da linguagem e com o passar dos anos, ela hoje pode ser considerada uma linguagem multi-paradigma, embora a linguagem apresente fortes estruturas típicas de linguagens orientadas a objeto.

O Dart possui algumas variantes no que diz respeito a seu ambiente de execução. O código Dart pode ser executado em uma máquina virtual (chamada DartVM, máquina virtual esta inserida em um conjunto de ferramentas chamado Dart Native). Esta máquina virtual ainda pode ser executada em dois modos diferentes: JIT (Just-in-Time Compiler) e AOT (Ahead-of-Time Compiler). De maneira mais simplista, a compilação JIT ocorre no momento da execução de um trecho de código, onde o código Dart é convertido para código de máquina à medida em que ele é executado.

Já na execução AOT, o código é convertido para código de máquina previamente. A outra maneira na qual podemos executar o código Dart é através de um processo de transpilação para JavaScript através da ferramenta dart2js, ferramenta esta também integrante do Dart SDK. Todos estes modos de execução tornam o Dart uma linguagem muito flexível e que pode ser executada tanto em ambientes nativos (como em aplicações mobile e desktop) como em ambientes web (como em uma aplicação web que utilize o Angular, por exemplo).

Diretórios

  • Dart
  •                Diretório sobre a sintaxe do Dart,possui contéudos des de controle de
                      fluxo passando por Orientação a Objetos até Estrutura de Dados.
    

  • introduction
  •                 Diretório sobre conceitos básicos do Flutter como Pilha de Widgets.
    

  • andaime_scaffold
  •                Diretório sobre a estrutura básica do material design utilizando os
                   concetios de 'Scaffold' implementando AppBar ,BottomNavigationBar e
                                        FloatingActionButton.
    

  • magnata
  •                 App implementado com o objetivo de aprender conceitos sobre 'Stateful'.
    

  • BottomBar
  •                 Diretório com dois modelos de BottomBar
    

    WhatsApp Video 2020-03-27 at 17 24 10 WhatsApp Video 2020-03-27 at 17 24 04 (1)

  • planeta_x
  •                 Aplicativo para calcular o peso em outros planetas, utilizando conceitos sobre    
                                 animações e mudança de ícones de aplicação.
    

    video_2020-03-27_17-41-11

  • imc
  •                 Aplicativo de calcular imc,utilizando conceitos sobre animações e mudança de
                                          ícones de aplicação.
    

    video_2020-03-27_17-33-21

  • cadatro
  •                   Diretório sobre conceitos básicos de cadastro. 
    

  • json_analise
  •                    Diretório sobre conceitos de api e análise de json 
    

  • terremoto
  •                   Aplicativo de terremotos em tempo real juntamente com sua escala Richter. 
    

    video_2020-03-27_17-55-50

  • clima
  •                   Aplicativo de clima em tempo real,com máximos e mínimos previstos. 
    

    video_2020-03-27_18-17-59

  • ler_gravar
  •                   Diretório sobre dados em arquivos,leitura/gravação. 
    

  • shared
  •                   Aplicativo de teste sobre dados em arquivos,leitura/gravação. 
    

  • base_dados
  •                   Diretório sobre Base de Dados-SQFLITE. 
    

  • fireb_intro
  •                   Diretório sobre a plataforma de desenvolvimento de aplicativos para
                                dispositivos móveis e web Firebase. 
    

  • afazeres
  •                          Aplicativo de Afazeres com SQFLITE. 
    

    video_2020-03-27_18-37-42

    Instalação Flutter e Utililátios

    Install Dart SDK

        sudo apt-get update
        sudo apt-get install apt-transport-https
        sudo sh -c 'wget -qO- https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add -'
        sudo sh -c 'wget -qO- https://storage.googleapis.com/download.dartlang.org/linux/debian/dart_stable.list > /etc/apt/sources.list.d/dart_stable.list'
    

    Em seguida, instale a versão estável do Dart SDK:

        sudo apt-get update
        sudo apt-get install dart
    

    install KVM

        sudo apt-get -y install libvirt-daemon libosinfo-bin libguestfs-tools libvirt-daemon-system qemu-kvm virtinst bridge-utils virt-top
    

    install android studio

        sudo snap install android-studio --classic
    

    install Flutter

        https://flutter.dev/docs/get-started/install/linux
    

    Verificação para Flutter

        flutter doctor
    

    Para utilizar o Flutter lembre de executar o comando a seguir na pasta /flutter:

        echo 'export PATH="$PATH:`pwd`/flutter/bin"' >> ~/.profile
    

    Para rodar o simulador android utilize:

        flutter emulators --launch Nexus_5X_API_29_x86(modelo android)
    

    Para rodar o app utilize :

        flutter run
    

    Para atualizar packages da aplicação utilize:

        flutter packages get