Ganhou tendência e virou realidade nos últimos anos o desenvolvimento de sistemas e soluções de software sem o uso de uma linguagem de programação tradicional. No meio profissional (formal e informal), se intitulou como No-Code (sem código).
O No-Code é, por assim dizer, uma evolução do Low-Code (pouco código), que seria um primeiro movimento evolucionário das técnicas de programação e tecnologias voltadas para o desenvolvimento de sistemas e que tem como objetivo, minimizar o uso, ou não utilizar de forma alguma linguagens de programação de alto nível. Nascendo então, as linguagens de altíssimo nível.
Code Versus No-Code
Fazendo oposição com as tradicionais formas de desenvolvimento que existem há décadas, conhecida alternativamente como Code ou Full-Code (código ou código completo), o No-Code e o Low-Code são, como podemos entender a primeira vista, meios disruptivos de desenvolvimento de sistemas que figuram como soluções práticas, rápidas e muito menos complexas aos olhos de qualquer pessoa que não tenha caminhado pela estrada acadêmica da computação e da análise e desenvolvimento de sistemas. Permitindo que as mesmas consigam concretizar o desenvolvimento de um software a partir da utilização de elementos e componentes gráficos. Já que, os seres humanos são mais afetos a identificação e compreensão das coisas a partir de sinais visuais (imagens) e de áudio (sons) do que a escrita e leitura (textos) existente no ecossistema do Code. Nascendo então, os “Desenvolvedores cidadãos”.
Desenvolvedor cidadão?
O Desenvolvedor cidadão, de forma bem genérica e superficial, é uma pessoa que consegue criar soluções digitais, mesmo não fazendo parte do segmento de TI.
Muitas plataformas de desenvolvimento No-Code e Low-Code foram idealizadas e nasceram com o propósito de proporcionar para os desenvolvedores profissionais ou desenvolvedores entusiastas, a facilidade e rapidez no processo de construção e concretização de um sistema ou software.
Expectativa e realidade se chocam
Em tempos atuais, temos várias e excelentes plataformas dedicadas ao desenvolvimento Low-Code e No-Code. Muitas delas surpreendentemente ricas em recursos visuais/dinâmicos e de integração. No entanto, poucas delas ainda estão distantes de alcançar a tão sonhada possibilidade de construir um sistema completo e livre de dependências a partir de recursos puramente gráficos.
A resposta
A resposta para o dilema Code ou No-Code, leva em consideração diversos fatores que ultrapassam as fronteiras desse artigo. Contudo, prós e contras de cada opção podem ser avaliados minimamente. Sobre os prós de No-Code, podemos dizer que o maior deles é não ter que aprender uma linguagem de programação e os paradigmas de desenvolvimento. Mas, é inevitável ter que aprender sobre como usar a plataforma No-Code. Os contras, menos enaltecidos, parecem não ter muita importância, até nos depararmos com os mesmos em algumas etapas de escolha e uso da plataforma e analisar novamente a arquitetura do sistema desejado. Alguns deles são: custo da solução, aprisionamento e crescimento do sistema. Os dois últimos, de modo geral, impedem significativamente que o sistema evolua ou que seja migrado entre ambientes. Já o Code possui como maior desafio toda a trajetória de aprendizado acadêmico a ser percorrida. Sobretudo, o desafio de aprender uma linguagem de programação, cuja a sintaxe, por mais bem elaborada que seja, leva tempo para ser bem assimilada, exigindo muita prática e experimentações. A velocidade de desenvolvimento e entrega com Code é significativamente mais reduzida em relação ao No-Code. Por outro lado, a visão de desenvolvimento é mais apurada, a liberdade é maior e as possibilidades se ampliam.
Pés no chão
As plataformas e soluções No-Code são, de fato, recursos fantásticos que cumprem o que se espera, guardadas as proporções e complexidade dos desafios de desenvolvimento. E de fato, estão evoluindo surpreendentemente dia após dia. No entanto, devemos levar sempre em consideração o Code como a primeira opção quando se deseja ter liberdade de desenvolvimento e avançar em crescimento e evolução da aplicação criada, independente do sistema ser ou não proprietário. Principalmente, por essa modalidade de desenvolvimento ser mais madura, possuir mais recursos, sustentação, dentre outras particularidades.
Qual utilizar?
Há espaço para todas as modalidades. Identifique e estude o cenário. Analise bem o desafio proposto. Esteja atento a sua capacidade, formação e também a capacidade e formação da equipe em relação as opções de desenvolvimento. Pesquise sobre as ferramentas de desenvolvimento Code, Low-Code, No-Code disponíveis, suas facilidades, recursos e principalmente limitações. Experimente-as.
Desenvolvedores de sistema profissionais ou desenvolvedores de sistema cidadãos, o mais importante é colocar em prática as suas ideias e projetos.