Article image

TS

Thayna Santana27/07/2023 20:43
Compartilhe

Desenvolvimento Mobile: Explorando a Santander Dev Week em Quatro Linguagens

    Escrito por: Thayna Santana

    E-mail: thaynas.s502@gmail.com

    A Santander Dev Week foi uma experiência enriquecedora que me proporcionou a oportunidade única de aprender sobre o desenvolvimento da tela inicial do aplicativo do Santander em quatro linguagens de programação diferentes. Durante o evento, foram abordadas as tecnologias Angular com TypeScript, Android com Kotlin, iOS com Swift e Flutter com Dart. Cada uma dessas linguagens apresentou características distintas, e nesta análise técnica, compartilharei minhas descobertas, insights e dicas de codificação que me permitiram aprimorar meus conhecimentos em desenvolvimento mobile.

    1. Angular com TypeScript

    Angular com TypeScript é uma poderosa combinação para o desenvolvimento web, e sua utilização no contexto de desenvolvimento mobile mostrou-se altamente interessante. O TypeScript, como uma linguagem superset do JavaScript, trouxe benefícios significativos em termos de manutenção de código e detecção de erros em tempo de compilação.

    Um dos principais pontos fortes do Angular é o conceito de Componentes, que permite uma estrutura modular e reutilizável no desenvolvimento de interfaces. A seguir, temos um exemplo de um componente simples de lista de itens em TypeScript:

    typescript
    
    Copy code
    import { Component } from '@angular/core'; @Component({ selector: 'app-item-list', template: ` <ul> <li *ngFor="let item of items">{{ item }}</li> </ul> `, }) export class ItemListComponent { items: string[] = ['Item 1', 'Item 2', 'Item 3']; } 
    

    2. Android com Kotlin

    O Android com Kotlin mostrou-se uma opção poderosa para o desenvolvimento mobile nativo no ecossistema Android. Kotlin é uma linguagem moderna e concisa, projetada para interoperabilidade total com o Java, o que torna a transição e o uso de bibliotecas existentes mais fáceis.

    Um recurso interessante do Kotlin é a capacidade de criar extensões, permitindo adicionar funcionalidades a classes existentes sem a necessidade de herança. Isso é especialmente útil ao trabalhar com classes da API Android, como no exemplo a seguir:

    kotlin
    
    Copy code
    // Extensão para adicionar uma função de exibir um Toast a um contexto fun Context.showToast(message: String, duration: Int = Toast.LENGTH_SHORT) { Toast.makeText(this, message, duration).show() } // Uso da extensão em uma atividade class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) // Exibe um Toast personalizado através da extensão showToast("Bem-vindo ao meu aplicativo!") } } 
    

    3. iOS com Swift

    O desenvolvimento iOS com Swift oferece uma experiência elegante e eficiente para criar aplicativos nativos para dispositivos Apple. A linguagem Swift é conhecida por sua segurança e sintaxe concisa, tornando o código mais legível e menos propenso a erros.

    Durante a Santander Dev Week, aprendi sobre a manipulação de coleções usando o poderoso recurso de closures. Um exemplo simples de como usar closures para filtrar uma lista de números é mostrado abaixo:

    swift
    
    Copy code
    let numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] // Filtra apenas os números pares usando uma closure let evenNumbers = numbers.filter { $0 % 2 == 0 } print(evenNumbers) // Output: [2, 4, 6, 8, 10] 
    

    4. Flutter com Dart

    Flutter com Dart proporciona um ambiente de desenvolvimento móvel poderoso e flexível, permitindo a criação de aplicativos para Android, iOS e até mesmo para a web, a partir de um único código-base. O Hot Reload é uma das características mais impressionantes do Flutter, permitindo que as alterações no código sejam refletidas instantaneamente no aplicativo em execução, acelerando significativamente o ciclo de desenvolvimento.

    Um aspecto interessante do Flutter é o uso de Widgets para criar a interface do usuário. Esses Widgets são compostos e combinados para formar a UI, tornando o código altamente modular e personalizável. Abaixo, um exemplo de um widget personalizado que exibe um botão estilizado:

    dart
    
    Copy code
    import 'package:flutter/material.dart'; class CustomButton extends StatelessWidget { final String text; final VoidCallback onPressed; CustomButton({required this.text, required this.onPressed}); @override Widget build(BuildContext context) { return ElevatedButton( onPressed: onPressed, child: Text(text), style: ElevatedButton.styleFrom( primary: Colors.blue, textStyle: TextStyle(fontSize: 16), padding: EdgeInsets.symmetric(horizontal: 20, vertical: 12), shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular(8), ), ), ); } } 
    

    Participar da Santander Dev Week e explorar o desenvolvimento da tela inicial do app do Santander em quatro linguagens diferentes foi uma experiência incrivelmente valiosa. Cada linguagem tem seus pontos fortes e recursos únicos, e a escolha de uma delas depende das necessidades específicas do projeto e das preferências da equipe de desenvolvimento.

    O conhecimento adquirido durante o evento me permitiu aprofundar minha compreensão do desenvolvimento mobile e das tecnologias em questão. Espero que este artigo inspire outros desenvolvedores a explorar e experimentar essas linguagens e frameworks para aprimorar suas habilidades em desenvolvimento mobile e criar aplicativos inovadores e de alta qualidade.

    Compartilhe
    Comentários (0)