Meio Bit » Baú » Indústria » Bill Gates: Microsoft criando um modelo de linguagem declarativa

Bill Gates: Microsoft criando um modelo de linguagem declarativa

12/02/2008 às 14:34

Antes de mais nada, é preciso entender alguns conceitos, para os não-programadores. Na ciência da computação, existem formas diferentes de se resolver o mesmo problema. As linguagens de programação como C++, Java e C# são compostas por instruções imperativas, ou seja, o programador diz, passo a passo e em seqüência, como o computador deve realizar alguma tarefa. Por exemplo, somar dois números, deve-se dizer qual o formato de entrada, como realizar a soma e qual deve ser a saída.

Isso tem sido útil para resolver muitos problemas do dia a dia e a maioria dos softwares que usamos hoje está construída em cima desse fundamento. Mas ele não serve para tudo. A web, por exemplo, está construída em cima de linguagens declarativas. Que tal um exemplo para facilitar?

Sabe o HTML bom e velho de guerra? Ele é uma linguagem de marcação que determina o conteúdo de uma página e a forma de exibir. Um texto em negrito ou itálico, eu precisei declarar isso usando tags. Eu não disse para o computador como colocar em negrito ou itálico. Isso ficou sob responsabilidade do navegador do usuário, que pegou o texto, analizou e internamente, de forma imperativa, disse que todo texto entre <strong> e </strong> deve chamar o mapa de fontes negrito do sistema operacional. Percebeu a diferença?

Uma linguagem imperativa descreve-se como deve ser feito, na declarativa, o que precisa ser feito.

O problema hoje em dia é que cada empresa possui uma série de regras de negócio. O software precisa ser criado e organizados de forma imperativa, aumentando os custos, o risco, a complexidade e o tempo de produção. É por isso que empresas como a SAP, Oracle, IBM, Microsoft apresentam soluções empacotadas, mas que nunca satisfazem um cliente. Já reparou que NENHUM relatório é igual o outro, as vezes dentro de um mesmo departamento?

Primeiro, é preciso melhorar a qualidade da informação armazenada. Bases de dados relacionais são apenas repositórios que não descrevem nada além do tipo inteiro, texto, boleano, etc. O XML trouxe melhorias nesse aspecto, mas as regras de negócio, o "o que" e o "como" uma empresa funciona, ainda é escrito de forma imperativa. E a Microsoft quer mudar isso, num projeto que deve durar entre 5 e 8 anos.

Trocando em miúdos eles querem criar algo onde as regras de desconto nas compras de uma rede de varejo sejam simples de ser criadas e compreendidas, com 10% do código usado hoje em dia. Imagine algo simples como o XAML, possivelmente com ferramentas visuais acopladas onde escreve-se pouquíssimo código. Não se preocupe, programadores de sistema sempre serão necessários porque sempre haverá alguma demanda que necessita de customização. Vide o SAP, que NUNCA antende empresa alguma 100% e ela é quem adapta a própria cultura aos módulos adotados.

Fonte: Infoworld

relacionados


Comentários