franco montoro · web viewobject pascal e haskell observa-se nos exemplos a seguir, os três...

25
A IMPORTÂNCIA DA PROGRAMAÇÃO VISUAL NO SETOR DE TECNOLOGIA: UM EXEMPLO DE APLICAÇÃO PARA CRIAÇÃO DE UM APP VOLTADO PARA MEHORIAS AMBIENTAIS DA CIDADE DE MOGI GUAÇU, SÃO PAULO Autor: Jefferson Costa Fontes Camargo 1 Orientador: Robson Leandro Carvalho Canato 2 Coorientador: Marcio António Ferreira 3 RESUMO: Atualmente, somente a oferta de soluções não tem sido mais um diferencial, e com o mercado cada vez mais competitivo e a demanda exponencial de aplicativos, a agilidade no desenvolvimento e entrega dessas soluções tem se tornado uma estratégia, muitas vezes, uma condição de sobrevivência e sucesso das empresas. Sendo assim, é fundamental utilizar meios que possam dar subsídios a tais exigências e requisitos, como por exemplo, a utilização de plataformas de programação visual, proporcionando não só agilidade, mas facilidade no desenvolvimento de soluções e aplicativos. Neste trabalho, discorremos sobre os termos low-code e no- code, ambos amplamente utilizados com o mesmo propósito, facilitar e agilizar o desenvolvimento de aplicativos. Além disso, apresentamos uma proposta de desenvolvimento de um aplicativo para classificação e mapeamento de resíduos utilizando uma das ferramentas de programação visual analisadas. PALAVRAS-CHAVE: No-code, Low-code, Programação Visual. ABSTRACT: Currently, only an offer of solutions has not been another differential, and with the market becoming increasingly competitive and the exponential demand for applications, agility in the development and delivery of these solutions has become a strategy, often a condition of technologies business success. Therefore, it is essential to use means that can support such requirements and requirements, such as, for example, the use of a visual programming platform, providing not only agility, but ease of development of solutions and applications. In this paper, we discuss the terms low- code and no-code, both widely used for the same purpose, to facilitate and speed up application development. In addition, we present a proposal to develop an application for classification and mapping of waste using one of the visual programming tools analyzed. 1 Jefferson Costa Fontes Camargo é discente de graduação em Ciência da Computação (2020) pela Faculdade Municipal Professor Franco Montoro, Mogi Guaçu, São Paulo. e- mail: [email protected] 2 Robson Leandro Carvalho Canato possui graduação em Análise de Sistemas pela PUC- CAMPINAS (2006), Pós-Graduação em Banco de Dados pelo IBTA (2010), Mestrado em Ciência da Computação pela UNICAMP (2016), Pós-Graduação em Data Warehouse e Business Intelligence pelo IBF (2018) e Pós-Graduação em Formação Pedagógica pelo Centro Paula Souza (2019). Docente da Faculdade Municipal Professor Franco Montoro, Mogi Guaçu, São Paulo. e-mail: [email protected] 3 Marcio Antônio Ferreira Possui graduação em Biologia pela Faculdade Maria Imaculada, Mestrado em Educação pela Unimep e Pós-graduação em Gestão Ambiental pela Faculdade Anhanguera. Diretor da Faculdade Municipal Professor Franco Montoro, Mogi Guaçu, São Paulo. e-mail: [email protected] 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

Upload: others

Post on 18-Feb-2021

1 views

Category:

Documents


0 download

TRANSCRIPT

A IMPORTÂNCIA DA PROGRAMAÇÃO VISUAL NO SETOR DE TECNOLOGIA: UM EXEMPLO DE APLICAÇÃO PARA CRIAÇÃO DE UM APP VOLTADO PARA MEHORIAS AMBIENTAIS DA CIDADE DE MOGI GUAÇU, SÃO PAULO 

 

  Autor: Jefferson Costa Fontes Camargo[footnoteRef:1] [1: Jefferson Costa Fontes Camargo é discente de graduação em Ciência da Computação (2020) pela Faculdade Municipal Professor Franco Montoro, Mogi Guaçu, São Paulo. e-mail: [email protected]]

Orientador: Robson Leandro Carvalho Canato[footnoteRef:2] [2: Robson Leandro Carvalho Canato possui graduação em Análise de Sistemas pela PUC-CAMPINAS (2006), Pós-Graduação em Banco de Dados pelo IBTA (2010), Mestrado em Ciência da Computação pela UNICAMP (2016), Pós-Graduação em Data Warehouse e Business Intelligence pelo IBF (2018) e Pós-Graduação em Formação Pedagógica pelo Centro Paula Souza (2019). Docente da Faculdade Municipal Professor Franco Montoro, Mogi Guaçu, São Paulo. e-mail: [email protected]]

Coorientador: Marcio António Ferreira[footnoteRef:3] [3: Marcio Antônio Ferreira Possui graduação em Biologia pela Faculdade Maria Imaculada, Mestrado em Educação pela Unimep e Pós-graduação em Gestão Ambiental pela Faculdade Anhanguera. Diretor da Faculdade Municipal Professor Franco Montoro, Mogi Guaçu, São Paulo. e-mail: [email protected]]

 

RESUMO: Atualmente, somente a oferta de soluções não tem sido mais um diferencial, e com o mercado cada vez mais competitivo e a demanda exponencial de aplicativos, a agilidade no desenvolvimento e entrega dessas soluções tem se tornado uma estratégia, muitas vezes, uma condição de sobrevivência e sucesso das empresas. Sendo assim, é fundamental utilizar meios que possam dar subsídios a tais exigências e requisitos, como por exemplo, a utilização de plataformas de programação visual, proporcionando não só agilidade, mas facilidade no desenvolvimento de soluções e aplicativos. Neste trabalho, discorremos sobre os termos low-code e no-code, ambos amplamente utilizados com o mesmo propósito, facilitar e agilizar o desenvolvimento de aplicativos. Além disso, apresentamos uma proposta de desenvolvimento de um aplicativo para classificação e mapeamento de resíduos utilizando uma das ferramentas de programação visual analisadas. 

 

PALAVRAS-CHAVE: No-code, Low-code, Programação Visual. 

 

ABSTRACT: Currently, only an offer of solutions has not been another differential, and with the market becoming increasingly competitive and the exponential demand for applications, agility in the development and delivery of these solutions has become a strategy, often a condition of technologies business success. Therefore, it is essential to use means that can support such requirements and requirements, such as, for example, the use of a visual programming platform, providing not only agility, but ease of development of solutions and applications. In this paper, we discuss the terms low-code and no-code, both widely used for the same purpose, to facilitate and speed up application development. In addition, we present a proposal to develop an application for classification and mapping of waste using one of the visual programming tools analyzed.

 

KEYWORDS: No-code, Low-code, Visual Programming. 

 

INTRODUÇÃO

Como toda a nossa sociedade vem se modernizando e buscando ser mais eficiente e produtiva, não seria diferente para a área de tecnologia da informação. Formas alternativas tem sido propostas e desenvolvidas com o intuito de tornar a criação de aplicativos (apps) cada vez mais prática, rápida e com um grande desempenho. Como analogia, pode-se colocar as ferramentas no-code e low-code, equivalente à transformação que causou a automação na época da sociedade industrial, transformando a forma atual de programação, agilizando o dia a dia do programador e, consequentemente, proporcionando a verdadeira transformação digital. 

O desenvolvimento de aplicativos no-code é um termo usado em processos de desenvolvimento focados na interface com usuários. Esse tipo de processo permite que usuários corporativos, mesmo sem conhecimentos específicos de programação consigam desenvolver e manter seus próprios aplicativos, relacionados diretamente a seus processos de negócios específicos, onde os problemas serão resolvidos considerando-se os conhecimentos elementares de lógica de programação. 

Low-code tende a ser a progressão para alguns desenvolvedores que utilizam a ferramenta no-code, onde seria atingido o limite da interface no-code e o aproveitamento do código, como por exemplo, da linguagem de programação Java Script e outras linguagens de forma a estender possíveis funcionalidades da ferramenta no-code.

Dessa forma, considera-se que uma abordagem no-code e low-code combinadas, podem fornecer um conjunto de ferramentas muito abrangentes e completas, sem tantas exigências, se comparada a forma tradicional de desenvolvimento de um aplicativo, agilizando ainda mais o processo de criação. 

1 MOTIVAÇÃO

A programação visual (também conhecida como programação em blocos ou baixa programação) tem se tornado dia a dia mais pertinente para o mundo do desenvolvimento, possibilitando que aplicativos sejam criados em um tempo consideravelmente menor se comparado a programação tradicional. Tais ferramentas inserem o contexto de programação e desenvolvimento de aplicativos em um novo cenário, onde alguns requisitos antes necessários, como por exemplo, o domínio de determinadas linguagens de programação não se fazem mais necessárias, substituindo-se a etapa de codificação por procedimentos como a organização e estruturação de blocos (operação conhecida como procedimento de arrastar e soltar), que representariam as etapas da codificação, reduzindo a complexidade, trazendo maior agilidade no desenvolvimento de aplicativos, e provavelmente a possibilidade de redução dos custos (GERBELLI, 2019). 

Dessa forma, por possuir características como redução no tempo de desenvolvimento, e consequentemente maior agilidade na entrega de soluções, as ferramentas de programação visual tem ganhado muito espaço entre os profissionais e empresas de desenvolvimento, o que tem justificado o interesse, investimento e pesquisa na área.

2 FUNDAMENTAÇÃO TEÓRICA

2.1 Programação Tradicional

Uma das principais características da programação tradicional é sua curva de aprendizagem, sendo dessa forma, considerada por muitos desenvolvedores um fator importante na decisão de qual ou quais linguagens utilizar. Apesar de existirem várias linguagens de programação tradicionais e, portanto, consolidadas entre a comunidade de desenvolvimento, em geral, todas utilizam linhas de comandos para realizarem a construção de uma aplicação, ou seja, todas as linguagens tem como pilar para aprendizagem a sintaxe e a semântica, que basicamente são regras da linguagem referente a escrita do código. Uma boa comparação seria a de aprendermos uma nova língua, um novo idioma, por exemplo o inglês onde teríamos que nos adaptar a sintaxe do idioma, com novas regras relacionadas a linguagem em questão.

 Considerando agora a sintaxe e semântica das linguagens de programação, e a necessidade de resolução de um problema elementar, como por exemplo a soma de dois números inteiros, onde poder-se-ia descrever de diferentes formas: um mais um é igual a dois, one plus one equals two e 1 + 1 = 2. Percebe-se que, para este simples problema, tem-se três formas de escrita diferentes, no entanto, todas as formas dizem a mesma coisa, e como esperado, reportam o mesmo resultado.

Tomando ainda como base o exemplo anterior, aplicar-se-á o conceito utilizado pelas linguagens de programação tradicional, fazendo uso de um exemplo recorrente e amplamente utilizado na introdução das mais diversas linguagens de programação, o famoso “Hello World”, ou em português, “Olá Mundo”, escrito aqui em três diferentes linguagens: C# (C-Sharp), Object Pascal e Haskell.

Observa-se nos exemplos a seguir, os três trechos de códigos, apesar de escritos de forma diferente (cada um seguindo a sua sintaxe e semântica), propõem-se em resolver o mesmo problema, ou seja, resolver a mesma tarefa, que consistem simplesmente em escrever na tela a mensagem “Hello World”.

Nos exemplos das mensagens, o significado do que foi descrito de três formas diferentes é: ao somar um mais um, o resultado é dois. Nos exemplos do código fonte o significado do que foi descrito em C#, Object Pascal e Haskell é: exibir na tela um “Hello World”. A forma é a sintaxe e o significado é a semântica.

Esses exemplos mostram claramente a diferença de sintaxe de cada linguagem, o que pode ser considerado um ponto negativo se comparadas com a linguagem visual (apresentada na sequência) e assunto de discussão deste trabalho, que é basicamente focada no significado e sequência em que é montada, sem se preocupar com a sintaxe. 

2.1.1 Linguagem C#

     C# é uma linguagem de programação orientada a objetos, que foi desenvolvida pela Microsoft e faz parte da plataforma .net. Embora a linguagem C# tenha sido criada do zero, foi baseada na linguagem C++ e tem muitos elementos da linguagem Pascal e Java (MARTIN, 2011). A Figura 1 abaixo ilustra a implementação para exibição da mensagem “Hello World” utilizando-se a linguagem C#.

Figura 1 - Implementação do Hello World em C# Fonte: Adaptado de Martin (2011)

2.1.2 Object Pascal

Na sequência, poderá ser vista a mesma aplicação utilizando a linguagem Object Pascal. A linguagem Object Pascal é uma ramificação de linguagens derivativas de Pascal, com suporte a orientação a objetos. As principais ferramentas para programar em Object Pascal são o IDE Embarcado (uma interface de desenvolvimento integrado), Delphi e o Larazus. Pascal foi utilizada nas primeiras versões do ambiente Delphi, sendo posteriormente substituído por uma versão também chamada de Delphi (LAMOUNIER, 2015). Uma ilustração da implementação para impressão da mensagem Hello World utilizando Object Pascal pode ser verificada na Figura 2.

Figura 2 - Implementação do Hello World em Pascal Object

Fonte: Adaptado de Lamounier (2015)

2.1.3 Haskell

No intuito de esclarecer o conceito de sintaxe e semântica, observar-se-á a mesma implementação para exibição da mensagem “Hello World” utilizando a linguagem Haskell. Haskell é uma linguagem de programação puramente funcional, ou seja, baseada em funções, de propósito geral, nomeada em homenagem ao lógico Haskell Curry. Como uma linguagem funcional, a estrutura de controle primária é a função. A linguagem é baseada nas observações de Haskell Curry e seus descendentes intelectuais (ALEXANDRE, 2017). Um exemplo de implementação utilizando a linguagem funcional para exibição da mensagem “Hello World” pode ser observado na Figura 3.

Figura 3 - Implementação do Hello World em Haskell

Fonte: Adaptado de Alexandre (2017)

2.2 Ferramentas de Programação Visual

Na atualidade, existem no mercado uma variedade de ferramentas para programação visual. Entre as diversas ferramentas disponíveis, esse trabalho se propõe a apresentar a Kodular, Thunkable e App Inventor, consideradas pela comunidade como as mais amplamente utilizadas, cujas principais características são mencionadas a seguir.

2.2.1 Kodular 

Uma das ferramentas que possibilitam a programação visual é o Kodular, que nos dá a possibilidade de converter ideias em aplicativos Android, utilizando uma plataforma online e gratuita de programação visual e intuitiva baseada no conceito de blocos de códigos que podem ser “montados” através da operação de arrastar e soltar. Desta forma, com o uso de uma ferramenta como o Kodular, não é preciso o domínio de uma determinada linguagem de programação, pois o Kodular já traz os blocos de códigos necessários (KODULAR, 2020). Os projetos desenvolvidos no Kodular ficam hospedados com segurança no Google Cloud Platform (uma plataforma de armazenamento em nuvem), que oferece para aplicações a mesma segurança e velocidade de resposta que aplicações da própria empresa, como o Youtube ou até mesmo o buscador Google, e portanto, não é necessário preocupar-se com a realização constante de operações de upload, download ou backup, o que certamente ocorreria utilizando-se a programação tradicional (KODULAR, 2020). Atualmente a ferramenta é gratuita, possibilitando o desenvolvimento sem qualquer custo pois, sua maneira de arrecadação está vinculada a uma porcentagem nos valores coletados pelos anúncios que seu aplicativo arrecadará, em caso de publicação.  A Figura 4 ilustra a interface de desenvolvimento utilizando a plataforma Kodular.

Figura 4 - Exemplo de interface de desenvolvimento do Kodular

Fonte: Elaborada pelo Próprio Autor (2020) 

2.2.2 Thunkable

Outra ferramenta que vem sendo amplamente utilizada para a programação visual é a Thunkable, que é considerada uma ferramenta bastante intuitiva, de usabilidade bastante simples e quase a prova de erros (THUNKABLE, 2020). Segundo o seu desenvolvedor, os conhecimentos básicos de utilização de um computador são suficientes para desenvolver aplicativos de baixa complexidade. De forma semelhante ao Kodular, a ferramenta é dividida em duas partes, sendo a primeira parte o design e a segunda parte a linguagem de blocos, projetada pelo MIT para adicionar lógica a interface criada (THUNKABLE, 2020). A Figura 5 apresenta um exemplo de uso da plataforma.

Figura 5 - Exemplo de interface de desenvolvimento do ThunkableFonte: Elaborada pelo Próprio Autor (2020) 

Assim como o Kodular, seu funcionamento se dá através da utilização de blocos, semelhante a montagem de Lego, cabendo ao desenvolvedor a decisão de cada um dos componentes (botões, imagens, texto, entre outros) deve se comportar, etapa pela qual é adicionada a lógica do seu aplicativo a cada bloco. No entanto, o Thunkable não é uma ferramenta 100% gratuita, limitando sua versão free a um número específico de aplicações.

2.2.3 App Inventor

A terceira ferramenta testada foi o App Inventor. O App Inventor é uma plataforma Web criada pela universidade americana Massachusetts Institute of Technology (MIT), que permite desenvolver aplicativos com a tecnologia Android usando um navegador da Web e um telefone ou emulador conectados. O processo para criar o aplicativo é bem simples e segue a linha dos anteriores, bastando selecionar os componentes que deseja na interface e na sequência, montar os blocos que especificam como cada componente deve se comportar. Segundo o próprio site do App Inventor, a plataforma conta com mais de 400.000 usuários ativos mensais exclusivos, provenientes de 195 países que já criaram quase 22 milhões de aplicativos. O App Inventor é uma ferramenta 100% gratuita, porém com uma limitação do número de telas por aplicativo (INVENTOR, 2020). A Figura 6 ilustra sua interface.

Figura 6 - Exemplo de interface de desenvolvimento do App Inventor

Fonte: Elaborada pelo Próprio Autor (2020)

3 VANTAGENS

De acordo com a literatura (KODULAR, 2020; THUNKABLE, 2020; INVENTOR, 2020), muitas são as vantagens em utilizar os conceitos e ferramentas de programação visual. De todas as vantagens, provavelmente as mais atraentes estão relacionadas à facilidade de desenvolvimento e a capacidade de acelerar a entrega de novos aplicativos. Alguns dos recursos que justificam porque desenvolver aplicativos com programação visual ou baixo código é muito mais rápido: 

· A funcionalidade de arrastar e soltar facilita e agiliza muito na hora do desenvolvimento. Com essa funcionalidade o desenvolvedor se preocupa exclusivamente com a lógica da aplicação.  

· Interfaces de usuário pré-construídas e modelos para processos de negócios também vem para ajudar na velocidade do desenvolvimento, já que a utilização de modelos é constantemente compartilhada por toda a comunidade. 

· APIs (Application Programming Interface), do português Interface de Programação de Aplicações e conectores são fáceis e práticos de implementar e basicamente se integram às ferramentas de terceiros mais facilmente para que os desenvolvedores não percam tempo. 

Além das possíveis vantagens mencionadas anteriormente, é válido destacar outras vantagens inerentes ao processo de desenvolvimento utilizando-se da programação visual:

· Agilidade de evolução: a agilidade dos negócios permite que as empresas se adaptem e respondam às mudanças do mercado e às novas oportunidades, usando soluções digitais inovadoras que resolvem problemas de negócios. Ser uma empresa ágil nunca foi tão importante, em um momento em que a agilidade se tornou um dos principais pontos requisitados pelas empresas. A programação visual ajuda as empresas a buscar novas iniciativas digitais, causadas por mudanças de mercado e novas necessidades de consumidores e clientes. Isso se deve parcialmente pela velocidade de desenvolvimento. Quando você pode entregar um aplicativo full-stack (um aplicativo em seu total funcionamento tanto em seu visual quando em sua parte lógica) em algumas semanas e alterá-lo em apenas alguns minutos, ajustando-se rapidamente às condições dinâmicas de negócios com software inovador é mais fácil. 

· Experiência em tempo real: como mencionado anteriormente, ferramentas de programação visual fornecem o que você precisa para permitir que os clientes interajam com sua empresa do jeito deles. A Gartner Group (SBROCCO, 2012), chama isso de multiexperiência, e é um benefício realmente crítico nos dias de hoje. Com essa facilidade de desenvolvimento, você começa entregando experiências de aplicações brilhantes que rivalizam com as dos líderes sem grandes orçamentos e caras equipes de desenvolvimento.

· Desenvolvimento para todos: com a utilização de ferramentas que se utilizam de pouco código ou até mesmo de nenhum código, todos em uma organização podem colaborar para entregar as melhores soluções, liberando o potencial criativo de equipes de negócios e usuários de TI. Com a experiência do desenvolvimento visual, é possível construir aplicativos sem codificação, o que pode satisfazer as necessidades de novos desenvolvedores ou usuários de negócios com formação técnica. Mesmo aqueles sem formação técnica, geralmente conhecidos como “desenvolvedores cidadãos”, podem usar a funcionalidade e o código pré-construídos para construir aplicativos simples.  Profissionais mais experientes podem escolher aproveitar as vantagens de módulos de código pré-construídos, modelos de IU, etc., quando quiserem e mudar para a codificação manual quando precisarem construir algo não incluído na biblioteca de design da solução. Este é um grande atrativo para aqueles que desejam economizar tempo em comparação com a codificação manual tradicional. 

· Governança automatizada integrada: equipes de TI são capazes de monitorar e controlar todos os projetos com a ajuda de um console central que fornece visibilidade de infraestrutura, ambientes, aplicativos, usuários de TI e segurança.

4 PROPOSTA DE DESENVOLVIMENTO

Este trabalho propõe o desenvolvimento de um aplicativo (APP) utilizando programação visual. O APP a ser desenvolvido tem como funcionalidade principal a classificação e descarte de resíduos. O APP proposto visa atender os requisitos básicos a nós apresentados inicialmente (layout de telas, base de dados e funcionalidades). Das ferramentas apresentadas, a escolhida para o desenvolvimento do aplicativo foi a Kodular, não só por ser gratuita, mas por oferecer ampla gama de recursos e funcionalidades, como por exemplo, a possibilidade do desenvolvedor testar sua aplicação de forma rápida através de um emulador diretamente em seu celular. Além disso, a ferramenta conta com várias extensões como Google Maps, conectividade com banco de dados Firebase, entre outras funções. A interface de designer do Kodular é ilustrada na Figura 7.

Figura 7 - Interface de designer do Kodular

Fonte: Elaborada pelo Próprio Autor (2020)

A ferramenta Kodular, assim como as outras de programação visual apresentadas, conta com dois ambientes de trabalho: a versão de Designer onde é montada toda a parte gráfica do aplicativo como botões, imagens, definição de cores, etc., e o ambiente de programação, denominado de Blocks, onde é feita toda a parte lógica do aplicativo, talvez a parte mais relevante da ferramenta, onde se é necessário a aplicação da lógica para que a parte visual responda efetivamente a programação. A interface lógica de desenvolvimento do Kodular é apresentada na Figura 8.

Figura 8 - Interface lógica do Kodular

Fonte: Elaborada pelo Próprio Autor (2020) 

5 APP RESÍDUOS FMPFM 

O aplicativo desenvolvido tem como objetivo mostrar a população a maneira correta de descartar resíduos, informando a classificação de cada um dos resíduos que são produzidos em nosso dia a dia e até mesmo resíduos que não são comuns, indo desde garrafas PET a seringas e agulhas. Tem como funcionalidade informar e conscientizar a população, disponibilizando através do APP acesso às leis ambientais, proporcionadas através da navegação entre as telas de menu, simples e fácil de usar. As telas do aplicativo que dão acesso às leis ambientais podem ser visualizadas na Figura 9. 

Figura 9 - Telas de acesso e leis ambientais app

Fonte: Elaborada pelo Próprio Autor (2020) 

O app conta também com informações especificas de cada material, informando sua categoria, que varia entre perigosos e não perigosos, sua tipologia podendo ser um resíduo orgânico ou inorgânico, informa também a sua origem, que podem ser classificadas como: residências, comércios, unidades de saúde, etc. Outras informações também estão contidas no aplicativo visando a maneira correta para o descarte, informando, por exemplo, o endereço e locais para o descarte. O aplicativo dispõe de informações a respeito dos resíduos que não são de responsabilidade das residências ou dos comércios, possibilitando contato com o departamento específico da Prefeitura. Um exemplo das telas do aplicativo que dão acesso às informações dos resíduos podem ser visualizadas na Figura 10.

Figura 10 - Telas Tipos de Resíduos app

Fonte: Elaborada pelo Próprio Autor (2020) 

Outra funcionalidade implementada no aplicativo é disponibilizar a informação dos dias em que o caminhão de coleta de entulho (sobras de construção civil, podas de árvores, varrição de quintais, etc.) passa em cada região, em cada bairro. Essa funcionalidade está ligada a um banco de dados denominado airtable, que consiste em um banco de dados simples, que funciona como uma grande tabela, onde são inseridas as informações, possibilitando atualização em tempo real caso acontece algum imprevisto ou mudanças no agendamento. As informações das datas de coleta de entulho para geração dessa base de dados foram coletadas diretamente do site da Prefeitura de Mogi Guaçu (PMMG, 2020). A Figura 11 ilustra a tela de input dos links no banco de dados airtable e a tela de coleta de entulhos baseadas nesses dados e disponibilizada pelo app.

Figura 11 - Telas de input do airtable e da coleta de entulho no app

Fonte: Elaborada pelo Próprio Autor (2020) 

Uma das facilidades proporcionada pela ferramenta de programação visual é a incorporação de novas funcionalidades ao aplicativo. Uma dessas novas funcionalidades implementadas e incorporadas foi a ideia de ECO-PONTOS. Esses ECO-PONTOS são pontos de coleta de resíduos espalhados pela cidade para facilitar o descarte e a separação dos mesmos. Como forma de exemplificação de um ponto de coleta, ou seja, de um ECO-PONTO, uma tela foi adicionada ao aplicativo com a localização e informações da Faculdade Municipal Professor Franco Montoro como um possível ponto de coleta, conforme pode ser verificado através da Figura 12.

Figura 12 - Tela de exemplo de um ECO-PONTO

Fonte: Elaborada pelo Próprio Autor (2020)

6 CONCLUSÃO

A tecnologia de programação visual possibilitou o desenvolvimento do app de classificação de resíduos baseado nos requisitos e esboços apresentados inicialmente de forma simples, exigindo uma curva de aprendizado reduzida. Porém, apesar da facilidade e possível ganho de velocidade, a tecnologia ainda se mostra como aplicada para o desenvolvimento de aplicativos simples, de baixa complexidade ou propósitos bem específicos. No entanto, não substitui completamente a programação tradicional que visa desenvolvimentos mais complexos. Nos dias atuais, seria impossível visualizar uma tecnologia dessas aplicada em IA (Inteligência Artificial) por exemplo, cuja responsabilidade se deve a programações clássicas, como por exemplo a linguagem Python. Contudo, se aplica bem para aplicações utilizadas em dispositivos moveis, um campo que vem crescendo exponencialmente.

7 REFERÊNCIAS BIBLIOGRÁFICAS

ALEXANDRE, G. Haskell: Uma introdução à programação funcional. Casa do Código, 2017.

GERBELLI, N. F.; GERBELLI, V. H. Desenvolvimento Android sem código. Casa do Código, 2019.

INVENTOR. With MIT App Inventor, anyone can build apps with global impact. 2020. Disponível em: . Acesso em: 12 out. 2020

KODULAR. Much more than a modern app creator without coding. Disponível em: . Acesso em: 10 out. 2020.

LAMOUNIER, H. Delphi Para Iniciantes - Crie um Aplicativo Completo. Instituto Alpha, 2015.

MARTIN, R.; MARTIN, M. Princípios, Padrões e Práticas Ágeis em C#. Bookman, 2011.

MENEZES, N. N. C. Introdução à Programação com Python: Algoritmos e Lógica de Programação Para Iniciantes, 2019.

PMMG – Prefeitura Municipal de Mogi Guaçu. SSM. Coleta de galhos e entulhos 2020. Calendário 2020/2021. SSM. Disponível em: . Acesso em: 12 out. 2020.

SBROCCO, J. H. T. C.; MACEDO, P. C. Metodologias ágeis: Engenharia de software sob medida. Érica, 2012.

TERZIAN, F. Low-code: as vantagens e desvantagens do tal código baixo. 2020. Disponível em: . Acesso em: 12 out. 2020.

THUNKABLE. Fast apps, no coding. 2020. Disponível em: . Acesso em 10 out. 2020.