Você conhece a Inteligência Artificial que pode “roubar” seu emprego?

BEES Brasil
BEES Brasil
Published in
6 min readMar 28, 2023

Calma, não entre em pânico!

Por Felipe Passos, Desenvolvedor no BEES

Agora que chamei sua atenção, pode ficar tranquilo! Eu perguntei ao ChatGPT e ele me disse que não vai roubar nosso emprego. (Ainda rs)

Você já deve ter ouvido falar sobre o ChatGPT. Trata-se de um algoritmo baseado em inteligência artificial (IA) que pode ser usado para ajudar pessoas a realizar tarefas, responder perguntas e ter conversas divertidas e interessantes.

Então sim, essa IA pode ajudar seus filhos com o dever de casa, pode auxilia-lo com o TCC, pode te dar ideias para um vídeo, criar posts como esse e até te ajudar a criar um app ou um sistema web. No entanto, ele ainda é apenas um modelo de linguagem e não é capaz de pensar ou agir de forma independente.

Na prática!

Para criar um aplicativo simples em Flutter que consome uma API de filmes, você precisa seguir os seguintes passos:

  1. Escolha uma API de filmes para consumir: Existem várias APIs de filmes disponíveis na internet, como o IMDb, o TMDb (The Movie Database), entre outros. Para este exemplo, vamos usar a API do TMDb.
  2. Crie um novo projeto Flutter: Abra o Visual Studio Code (ou outra IDE de sua preferência), clique em “New Project” e selecione “Flutter Application”. Dê um nome ao projeto e selecione o local onde deseja salvá-lo.
  3. Adicione as dependências necessárias: Abra o arquivo “pubspec.yaml” e adicione as seguintes dependências:
yamlCopy code
dependencies:
flutter:
sdk: flutter
http: ^0.13.4

4. Crie um modelo para os dados dos filmes: Crie uma nova classe chamada “Movie” para armazenar as informações dos filmes retornados pela API.

dartCopy code
class Movie {
final int id;
final String title;
final String posterPath;
final double voteAverage;
final String overview;
  Movie({
required this.id,
required this.title,
required this.posterPath,
required this.voteAverage,
required this.overview,
});
factory Movie.fromJson(Map<String, dynamic> json) {
return Movie(
id: json['id'],
title: json['title'],
posterPath: json['poster_path'],
voteAverage: json['vote_average'],
overview: json['overview'],
);
}
}

5. Crie uma classe para fazer as chamadas à API: Crie uma nova classe chamada “ApiService” para fazer as chamadas à API do TMDb.

dartCopy code
import 'dart:convert';
import 'package:http/http.dart' as http;
class ApiService {
static const String _baseUrl = '<https://api.themoviedb.org/3>';
static const String _apiKey = 'SUA_API_KEY_AQUI';
Future<List<Movie>> getMovies() async {
final response = await http.get(Uri.parse('$_baseUrl/movie/popular?api_key=$_apiKey'));
if (response.statusCode == 200) {
final List<Movie> movies = [];
final data = jsonDecode(response.body);
final results = data['results'];
for (var i = 0; i < results.length; i++) {
final movie = Movie.fromJson(results[i]);
movies.add(movie);
}
return movies;
} else {
throw Exception('Failed to load movies');
}
}
}

6. Crie uma classe para exibir a lista de filmes: Crie uma nova classe chamada “MovieListScreen” para exibir a lista de filmes retornados pela API.

dartCopy code
import 'package:flutter/material.dart';
import 'package:seu_projeto/api_service.dart';
import 'package:seu_projeto/movie.dart';
class MovieListScreen extends StatefulWidget {
@override
_MovieListScreenState createState() => _MovieListScreenState();
}
class _MovieListScreenState extends State<MovieListScreen> {
final ApiService _apiService = ApiService();
late Future<List<Movie>> _moviesFuture; @override
void initState() {
super.initState();
_moviesFuture = _apiService.getMovies();
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Movie List'),
),
body: FutureBuilder(
future: _moviesFuture,

React Native

Para criar o mesmo aplicativo em React Native que consome uma API de filmes, você precisa seguir os seguintes passos:

  1. Escolha uma API de filmes para consumir: Existem várias APIs de filmes disponíveis na internet, como o IMDb, o TMDb (The Movie Database), entre outros. Para este exemplo, vamos usar a API do TMDb.
  2. Crie um novo projeto React Native: Abra o terminal, navegue até o diretório onde deseja criar o projeto e execute o seguinte comando:
csharpCopy code
npx react-native init SeuProjeto

3. Adicione as dependências necessárias: Abra o terminal, navegue até o diretório do projeto e execute os seguintes comandos:

javaCopy code
npm install axios
npm install @react-navigation/native
npm install @react-navigation/stack
npm install react-native-vector-icons
npm install prop-types
npm install react-native-elements

4. Crie um modelo para os dados dos filmes: Crie uma nova pasta chamada “models” e um novo arquivo chamado “Movie.js” para armazenar as informações dos filmes retornados pela API.

javascriptCopy code
class Movie {
constructor(id, title, posterPath, voteAverage, overview) {
this.id = id;
this.title = title;
this.posterPath = posterPath;
this.voteAverage = voteAverage;
this.overview = overview;
}
  static fromJson(json) {
return new Movie(
json.id,
json.title,
json.poster_path,
json.vote_average,
json.overview
);
}
}
export default Movie;

5. Crie uma classe para fazer as chamadas à API: Crie uma nova pasta chamada “services” e um novo arquivo chamado “ApiService.js” para fazer as chamadas à API do TMDb.

javascriptCopy code
import axios from 'axios';
import Movie from '../models/Movie';
class ApiService {
static baseUrl = '<https://api.themoviedb.org/3>';
static apiKey = 'SUA_API_KEY_AQUI';
static async getMovies() {
const response = await axios.get(`${ApiService.baseUrl}/movie/popular?api_key=${ApiService.apiKey}`);
if (response.status === 200) {
const movies = [];
const results = response.data.results;
for (let i = 0; i < results.length; i++) {
const movie = Movie.fromJson(results[i]);
movies.push(movie);
}
return movies;
} else {
throw new Error('Failed to load movies');
}
}
}
export default ApiService;

6. Crie uma classe para exibir a lista de filmes: Crie uma nova pasta chamada “screens” e um novo arquivo chamado “MovieListScreen.js” para exibir a lista de filmes retornados pela API.

javascriptCopy code
import React, { useState, useEffect } from 'react';
import { View, Text, FlatList, StyleSheet } from 'react-native';
import Movie from '../models/Movie';
import ApiService from '../services/ApiService';
import { ListItem, Icon } from 'react-native-elements';
const MovieListScreen = () => {
const [movies, setMovies] = useState([]);
useEffect(() => {
ApiService.getMovies()
.then(data => setMovies(data))
.catch(error => console.log(error));
}, []);
const renderItem = ({ item }) => (
<ListItem
title={item.title}
subtitle={item.overview}
leftAvatar={{ source: { uri: `https://image.tmdb.org/t/p/w
{200}${item.posterPath} **`} }} rightTitle={`**${item.voteAverage}`}
bottomDivider
chevron={{ color: 'gray' }}
/>
);
return (
<View style={styles.container}>
<FlatList
data={movies}
keyExtractor={item => item.id.toString()}
renderItem={renderItem}
/>
</View>
);
};

const styles = StyleSheet.create({
container: {
flex: 1,
backgroundColor: '#fff',
},
});

export default MovieListScreen;
pythonCopy code
7. Configure as rotas de navegação: Abra o arquivo "App.js" e adicione as rotas de navegação usando o react-navigation.
```javascript
import React from 'react';
import { NavigationContainer } from '@react-navigation/native';
import { createStackNavigator } from '@react-navigation/stack';
import MovieListScreen from './src/screens/MovieListScreen';
const Stack = createStackNavigator();const App = () => {
return (
<NavigationContainer>
<Stack.Navigator>
<Stack.Screen name="Movies" component={MovieListScreen} />
</Stack.Navigator>
</NavigationContainer>
);
};
export default App;

7. Teste o aplicativo: Abra o terminal, navegue até o diretório do projeto e execute o seguinte comando para iniciar o aplicativo:

arduinoCopy code
npx react-native run-android

Certifique-se de ter um dispositivo ou emulador Android conectado ao computador. O aplicativo deve exibir uma lista de filmes populares do TMDb.

Observação: lembre-se de substituir “SUA_API_KEY_AQUI” no arquivo “ApiService.js” pela sua própria chave de API do TMDb.

E agora, como vai ser o futuro?

Acredito que o programador não é pago apenas para criar funções, componentes, testes e etc. Grande parte do nosso trabalho é debugar, entender a regra de negócio e depois pensar em soluções para problemas.

Pode ser que as IA’s resolvam as coisas mais básicas, aumentando as exigências para um programador humano. Porém a Inteligência Artificial ainda não tem a capacidade analítica do seru humano, que sempre será o verdadeiro motivo de sermos contratados.

“Para n⁠ão ser substituído por um robô, não seja um robô”

— Martha Gabriel

Ainda é muito cedo para criar tantas expectativas sobre o futuro do trabalho com o crescimento das IAs. Podemos dizer que elas são sim um avanço muito grande, capaz de mudar a forma como fazemos pesquisas, criamos conteúdo, e etc.

O futuro ainda não dá pra saber, mas uma coisa é certa: essa tecnologia veio pra ficar, e cabe a nós nos adaptarmos a ela. Gostando ou não!

“A promessa da inteligência artificial e da ciência da computação geralmente supera o impacto que poderiam ter em alguns empregos da mesma forma que, enquanto a invenção do avião prejudicou a indústria ferroviária, ela abriu portas muito mais amplas ao progresso humano”
Paul Allen, cofundador da Microsoft

Leia mais em: https://forbes.com.br/principal/2019/07/as-13-melhores-citacoes-sobre-o-futuro-da-inteligencia-artificial/#foto7

--

--