image

Acesse bootcamps ilimitados e +650 cursos

50
%OFF

AV

Alexandre Vieira01/08/2023 17:55
Compartilhe

Aprendendo e compreendendo programação mobile para android, IOS e Web

    #Android #Santander Dev week


    RESUMO


    No mundo da programação são muitas as áreas em que podemos seguir, neste artigo demonstrarei algumas que podem influenciar até mesmo no dia a dia das pessoas, pois está presente nos aparelhos mais utilizados, os mobiles. Esses são programados a partir das linguagens como Angular com TypeScript, Android com Kotlin e Flutter com Dart. No decorrer do texto conseguiremos entender a principal diferença entre estes mecanismos, como também, nos guiará para que escolhamos qual caminho mais adequado para o perfil que procuramos. Mostrando um pouco dos conceitos, vantagens e alguns exemplos de como estes funcionam.


    Introdução


          Quer aprender um pouco mais de como funciona a programação quando envolvemos TypeScript, Kotlin e Dart? No decorrer deste artigo conseguiremos entender e compreender um pouco mais dos mecanismos de programação mobile, para IOS e Android. Primeiramente, trataremos do Angular com TypeScript, framework criado pelo Google, para desenvolvimento de aplicativos, e webs, com a utilização da linguagem TypeScript, superconjunto do Javascript que adiciona recursos de tipagem estática, tornando o código mais seguro, robusto e escalável.

               Posteriormente, trataremos do Kotlin, que se tornou a linguagem mais utilizada nos sistemas Android, software mais popular. Esta é mais moderna e concisa oferecendo recursos que proporcionam mais segurança e um inter-relacionamento com o Java, produzindo aplicativos eficientes, dispondo-se da vasta biblioteca de APIs.

               Por fim, teremos o Flutter, características similares ao TypeScript, definido como um framework de desenvolvimento de aplicativos móveis multiplataformas criadas pelo Google, a linguagem padrão utiliza é o Dart. Com este tipo de programação conseguimos abranger tanto os dispositivos IOS e Android, possuindo interfaces fluídas e organizadas.


    Angular com TypeScript


    image


    image


    O Angular é caracterizado como um framework criado pelo Google para o desenvolvimento de aplicativos móveis e web, como já citamos inicialmente e este possui as seguintes vantagens:

    • Produtividade, por possuir uma variedade de recursos e ferramentas que facilitam o desenvolvimento, como o Angular CLI, que automatiza tarefas comuns, e o Angular Material, que fornece componentes de interface prontos para uso.
    • Arquitetura modular, que segue o padrão de arquitetura MVC (Model-View-Controller), o que permite uma melhor organização do código e facilita a manutenção e reutilização.
    • Performance utilizando o conceito de detecção de mudanças, onde somente os componentes afetados são atualizados, resultando em uma melhor performance.
    • Suporte a TypeScript, trazendo os benefícios da tipagem estática, como detecção de erros em tempo de compilação e autocompletar inteligente, o que torna o desenvolvimento mais seguro e eficiente.
    • Componentes: O Angular permite a criação de componentes reutilizáveis, que podem ser usados tanto em aplicativos web quanto mobile. Isso facilita a criação de interfaces consistentes em diferentes plataformas.
    • Roteamento: O Angular possui um sistema de roteamento robusto, que permite a navegação entre diferentes telas do aplicativo.
    • Integração com APIs: O Angular possui recursos para integração com APIs RESTful, facilitando a comunicação com servidores e a obtenção de dados.
    • Testabilidade: O Angular possui suporte nativo para testes unitários e de integração, o que facilita a criação de testes automatizados para garantir a qualidade do aplicativo.


    Como exemplo para este tipo de programação temos:

    import { Component } from '@angular/core';
    @Component({
    selector: 'app-exemplo',
    template: `
      <h1>Exemplo de componente Angular</h1>
      <p>Olá, mundo! < /p>})
    export class ExemploComponent {}
    


    Android com Kotlin

    image

    image


    Kotlin é uma linguagem de programação moderna e concisa que se tornou a linguagem oficial para o desenvolvimento Android. Com Kotlin, é possível escrever código mais legível e eficiente para criar aplicativos Android. Veja um exemplo de código para criar uma atividade simples em Kotlin:

    import android.os.Bundle
    import androidx.appcompat.app.AppCompatActivity
    
    
    class ExemploActivity : AppCompatActivity() {
      override fun onCreate(savedInstanceState: Bundle?) {
          super.onCreate(savedInstanceState)
          setContentView(R.layout.activity_exemplo)
      }
    }
    


    Para este tipo de programação possuimos as seguintes vantagens, como também, o recursos que podemos utilizar para desenvolver os apps:


    • Segurança e confiabilidade: Kotlin possui recursos de segurança embutidos, como nulabilidade de tipos, o que ajuda a evitar erros comuns de programação.
    • Produtividade: A sintaxe concisa do Kotlin permite escrever menos código em comparação com o Java, resultando em um desenvolvimento mais rápido e eficiente.
    • Interoperabilidade: Kotlin é totalmente compatível com o Java, o que significa que você pode aproveitar bibliotecas e frameworks existentes sem problemas.
    • Oferece recursos avançados, como null safety e extensões de função, que aumentam a produtividade e a legibilidade do código.
    • Android Studio: A IDE oficial do Android, que oferece suporte completo ao Kotlin, incluindo autocompletar, depuração e outras ferramentas úteis.
    • Kotlin Android Extensions: Uma extensão do Kotlin que simplifica a interação com as Views do Android, eliminando a necessidade de findViewById().
    • Null Safety: o Kotlin ajuda a evitar erros de NullPointerException, pois possui suporte nativo para anotações de nulabilidade.
    • Extension Functions: o Kotlin permite adicionar novas funções a classes existentes, facilitando a extensão e a reutilização de código.
    • Coroutines: o Kotlin possui suporte nativo para coroutines, que simplificam a programação assíncrona e facilitam o tratamento de tarefas em segundo plano.
    • Smart Casts: o Kotlin realiza automaticamente casts inteligentes, eliminando a necessidade de casts explícitos em muitos casos.
    • Data Classes: o Kotlin possui sintaxe simplificada para a criação de classes de dados imutáveis, reduzindo a quantidade de código boilerplate necessário.


    Flutter com Dart

    image


    image


    O Flutter utiliza a linguagem de programação Dart, que é fácil de aprender e possui uma sintaxe semelhante a outras linguagens populares, como Java e JavaScript. Com o Flutter, você pode criar aplicativos nativos para iOS e Android a partir de um único código-base. Widgets são a base do Flutter. Eles são os elementos de interface do usuário que compõem o aplicativo. O Flutter possui uma ampla variedade de widgets pré-construídos para criar interfaces bonitas e responsivas. Além disso, você pode criar seus próprios widgets personalizados para atender às necessidades específicas do seu aplicativo.


    Recursos Avançados do Flutter


    Além dos conceitos básicos, o Flutter oferece recursos avançados para criar aplicativos móveis de alta qualidade. Alguns desses recursos incluem:


    1. Hot Reload: O Flutter possui um recurso chamado Hot Reload, que permite visualizar as alterações feitas no código em tempo real, sem precisar reiniciar o aplicativo. Isso acelera o processo de desenvolvimento e permite que você faça ajustes rápidos na interface do usuário.
    2. Widgets Reativos: O Flutter possui um sistema de widgets reativos que atualiza automaticamente a interface do usuário quando os dados mudam. Isso permite criar interfaces dinâmicas e interativas que respondem às ações do usuário.
    3. Suporte a Plataformas Nativas: O Flutter permite acessar recursos nativos do dispositivo, como câmera, GPS e sensores, por meio de plugins. Isso permite que você crie aplicativos com funcionalidades avançadas e aproveite ao máximo as capacidades do dispositivo.


    Práticas Recomendadas


    Ao desenvolver aplicativos com Flutter e Dart, algumas práticas recomendadas podem ajudar a melhorar a qualidade e a eficiência do código. Algumas dessas práticas incluem:

    1. Organização do Código: Divida o código em módulos e componentes reutilizáveis para facilitar a manutenção e a escalabilidade do aplicativo.
    2. Testes Automatizados: Escreva testes automatizados para garantir a estabilidade e a funcionalidade do aplicativo. O Flutter possui uma estrutura de testes integrada que facilita a escrita e a execução de testes.
    3. Design Responsivo: Projete interfaces responsivas que se adaptem a diferentes tamanhos de tela e orientações. O Flutter possui recursos embutidos para criar interfaces que funcionam bem em dispositivos de diferentes formatos.


    Exemplo de desenvolvimento utilizando Flutter com dart temos:

    import 'package:flutter/material.dart';
    
    
    class ExemploWidget extends StatelessWidget {
    @override
    Widget build(BuildContext context) {
      return Scaffold(
        appBar: AppBar(
          title: Text('Exemplo de widget em Flutter'),
        ),
        body: Center(
          child: Text('Olá, mundo!'),
        ),
      );
    }
    }
    


    Referências


    . Flutter Documentation: https://flutter.dev/docs

    . Android Developer Documentation: https://developer.android.com/docs

    . Angular Documentation: https://angular.io/docs

    . Ray Wenderlich - Tutorials for iOS, Flutter, Android, and more: https://www.raywenderlich.com/

    . Flutter.dev - Flutter resources and tutorials: https://flutter.dev/resources

    . Kotlin Documentation: https://kotlinlang.org/docs/home.html

    . TypeScript Documentation: https://www.typescriptlang.org/docs/ 

    . Documentação oficial do Angular: https://angular.io/

    . Documentação oficial do TypeScript: https://www.typescriptlang.org/ 

    Compartilhe
    Comentários (0)