Não programadores estão construindo mais software do mundo – um cientista da computação explica “no-code”.
18 de julho de 2022A programação tradicional de computadores tem uma curva de aprendizado íngreme que requer o aprendizado de uma linguagem de programação, por exemplo C/C++, Java ou Python, apenas para construir uma aplicação simples, como uma calculadora ou um jogo de Tic-tac-toe. A programação também requer habilidades substanciais de depuração, o que facilmente frustra os novos aprendizes. O tempo de estudo, esforço e experiência necessários muitas vezes impedem os não-programadores de fazer software do zero.
O no-code é uma forma de programar websites, aplicativos móveis e jogos sem usar códigos ou scripts, ou conjuntos de comandos. As pessoas aprendem prontamente a partir de sugestões visuais, o que levou ao desenvolvimento de “What you see is what you get” (WYSIWYG) (o que você vê é o que você recebe) documentos e editores multimídia já nos anos 70. Os editores WYSIWYG permitem que você trabalhe em um documento como ele aparece na forma final. O conceito foi estendido ao desenvolvimento de software nos anos 90.
Existem muitas plataformas de desenvolvimento sem código que permitem tanto programadores quanto não programadores criar software através de interfaces gráficas de usuário de arrastar e soltar, em vez da tradicional codificação linha por linha. Por exemplo, um usuário pode arrastar um rótulo e soltá-lo em um website. A plataforma sem código mostrará como o rótulo se parece e criará o código HTML correspondente. Plataformas de desenvolvimento sem código geralmente oferecem modelos ou módulos que permitem a qualquer pessoa construir aplicativos.
Primeiros tempos
Nos anos 90, os websites eram a interface mais familiar para os usuários. Entretanto, a construção de um website exigia codificação HTML e programação baseada em scripts que não são fáceis para uma pessoa sem habilidades de programação. Isto levou ao lançamento das primeiras plataformas sem código, incluindo Microsoft FrontPage e Adobe Dreamweaver, para ajudar os não-programadores a construir websites.
Seguindo a mentalidade da WYSIWYG, os não-programadores poderiam arrastar e soltar componentes do website como etiquetas, caixas de texto e botões sem usar código HTML. Além de editar websites localmente, estas ferramentas também ajudaram os usuários a carregar os websites construídos para servidores web remotos, um passo fundamental para colocar um website online.
No entanto, os websites criados por esses editores eram websites estáticos básicos. Não havia funções avançadas, como autenticação de usuários ou conexões de banco de dados.
Website development
Existem muitas plataformas atuais de construção de websites sem código, tais como Bubble, Wix, WordPress e GoogleSites, que superam as deficiências dos primeiros construtores de websites sno-code. Bubble permite que os usuários projetem a interface definindo um fluxo de trabalho. Um fluxo de trabalho é uma série de ações acionadas por um evento. Por exemplo, quando um usuário clica no botão salvar (o evento), o status atual do jogo é salvo em um arquivo (a série de ações).
Enquanto isso, a Wix lançou um construtor de sites HTML5 que inclui uma biblioteca de modelos de sites. Além disso, a Wix suporta módulos – por exemplo, análise de dados de visitantes tais como informações de contato, mensagens, compras e reservas; suporte para reservas de hotéis e aluguel de férias; e uma plataforma para músicos independentes comercializarem e venderem suas músicas.
O WordPress foi originalmente desenvolvido para blogs pessoais. Desde então, foi estendido para apoiar fóruns, sites de membros, sistemas de gerenciamento de aprendizado e lojas on-line. Como o WordPress, o GoogleSites permite aos usuários criar sites com várias funções incorporadas do Google, tais como YouTube, Google Maps, Google Drive, calendário e aplicativos de escritório online.
Game and mobile apps
Além dos construtores de websites, não há plataformas de código para o desenvolvimento de jogos e aplicativos móveis. As plataformas são destinadas a designers, empresários e hobbistas que não possuem conhecimentos de desenvolvimento de jogos ou de codificação.
O GameMaker fornece uma interface de usuário com editores embutidos para gráficos raster, design de nível de jogo, scripts, caminhos e “shaders” para representar luz e sombra. O GameMaker destina-se principalmente à criação de jogos com gráficos 2D e animações esqueléticas 2D.
O Buildbox é uma plataforma de desenvolvimento de jogos 3D sem código. As principais características do Buildbox incluem a roda de queda de imagem, barra de ativos, barra de opções, editor de colisão, editor de cena, simulação de física e até mesmo opções de monetização. Ao utilizar o Buildbox, os usuários também têm acesso a uma biblioteca de recursos, efeitos sonoros e animações de jogos. Além disso, os usuários do Buildbox podem criar a história do jogo. Então os usuários podem editar personagens do jogo e configurações ambientais, como condições climáticas e horário do dia, e mudar a interface do usuário. Eles também podem animar objetos, inserir anúncios de vídeo e exportar seus jogos para diferentes plataformas, como PCs e dispositivos móveis.
Jogos como Minecraft e SimCity podem ser pensados como ferramentas para criar mundos virtuais sem codificação.
Future of no-code
Plataformas no-code ajudam a aumentar o número de desenvolvedores, em uma época de crescente demanda por desenvolvimento de software. O no-code está aparecendo em campos como comércio eletrônico, educação e assistência médica.
Espero que o no-code também desempenhe um papel mais proeminente na inteligência artificial. O treinamento de modelos de aprendizagem por máquina, o coração da IA, requer tempo, esforço e experiência. A programação sem código pode ajudar a reduzir o tempo para treinar esses modelos, o que facilita o uso da IA para muitos propósitos. Por exemplo, uma ferramenta sem código de IA permite aos não-programadores criar chatbots, algo que teria sido inimaginável mesmo há alguns anos.
Leia o artigo original em Ingles no site theconversation.com
Sobre o Autor
Tam Nguyen, Assistant Professor of Computer Science, University of Dayton