Por favor, deixe os seus contactos, enviar-lhe-emos a nossa visão geral por e-mail
Autorizo o tratamento dos meus dados pessoais para o envio de materiais de marketing personalizados em conformidade com a Política de privacidade. Ao confirmar a submissão, o utilizador aceita receber materiais de marketing
Obrigado!

O formulário foi enviado com sucesso.
Encontrará mais informações na sua caixa de correio.

Innowise é uma empresa internacional de desenvolvimento de software de ciclo completo fundada em 2007. Somos uma equipa de mais de 1800+ profissionais de TI que desenvolvem software para outros profissionais em todo o mundo.
Sobre nós
O Innowise é uma empresa internacional de desenvolvimento de software de ciclo completo fundada em 2007. Somos uma equipa de mais de 1600+ profissionais de TI que desenvolvem software para outros profissionais em todo o mundo.

A linguagem Carbon da Google poderá substituir o C++

Na conferência CPP North, Chandler Carruth, um dos principais engenheiros de software da Google, anunciou o lançamento da linguagem de programação Carbon. A Carbon do Google é uma linguagem experimental de código aberto que pretende ser a sucessora da C++, mas não a sua substituta. Neste artigo, analisaremos mais de perto o Carbon, os seus objectivos, o seu potencial e as razões pelas quais o C++ precisa de um sucessor.
Google's Carbon language

Qual é o problema do C++?

De acordo com o Índice TIOBE para agosto de 2022, o C++ ocupa o 4º lugar depois de Python, C, e Java. Desde 2001, o C++ nunca desceu abaixo do 5º lugar, o que indica a grande popularidade desta linguagem de programação, apesar da sua idade (apareceu pela primeira vez em 1985). O C++ tem múltiplas vantagens cruciais para o desenvolvimento de software de desempenho crítico. Então, porque é que precisa de um sucessor?Como explica Chandler Carruth, o C++ fica aquém da realização dos principais objectivos da linguagem. Estes incluem o suporte de software de desempenho crítico, sintaxe simples, evolução da linguagem, sistemas modernos e segurança robusta, entre outros. As características específicas da linguagem e as questões burocráticas impedem a melhoria gradual do C++.No que respeita às especificidades da linguagem, o C++ acumulou uma elevada dívida técnica ao longo da sua evolução. Além disso, herdou muitas características herdadas da linguagem C. Além disso, os utilizadores de C++ dão prioridade à compatibilidade com versões anteriores para apoiar os ecossistemas C/C++ existentes. Ao mesmo tempo, a compatibilidade com versões anteriores não permite corrigir a dívida técnica, pelo que o processo de evolução do C++ torna ainda mais difícil a implementação de melhorias.Por falar em questões burocráticas, o processo de melhoramento do C++ é significativamente retardado por um comité (WG21) centrado na normalização mas não na conceção. O WG21 emprega processos lentos em cascata que levam a atrasos na tomada de decisões cruciais. Além disso, o comité restringiu o acesso à maioria dos peritos em C++ e representa apenas certas empresas e nações, ignorando a grande comunidade C++.

Objectivos da linguagem de programação Carbon

Como língua sucessora, o Carbono herdou a objectivos originais do C++ e recebeu um adicional.
Linguagem carbono
Com base numa abordagem de linguagem sucessora, o Carbon centra-se em 3 questões principais que abordam os desafios existentes do C++ e nos permitem considerar o Carbon como um projeto promissor: interoperabilidade, migração e evolução da linguagem. Com base nestes pontos, os criadores do Carbon esforçam-se por eliminar a dívida técnica do C++, manter o acesso aos ecossistemas existentes, assegurar melhorias rápidas e evitar a compatibilidade com versões anteriores utilizando actualizações baseadas em ferramentas.

Quais são as promessas do carbono?

As informações disponíveis até o momento nos permitem considerar o Carbon como um projeto muito promissor. Quanto ao lado prático da nova linguagem de programação, Chandler Carruth afirma que podemos esperar do Carbon uma gramática mais simples, palavras-chave introdutoras (ou seja, fn e var), um sistema genérico verificado por definição e uma curva de aprendizado acentuada. Carbon herdará o alto desempenho de C e evitará suas principais desvantagens.

Para além disso, os criadores do Carbon afirmam que o Carbon será uma linguagem de programação de código aberto e totalmente interoperável com o C++. O código Carbon é muito semelhante ao código C++ e, em muitos casos, são quase idênticos. Além disso, o código Carbono pode ser integrado no código C++. Assim, os programadores C++ que pretendam mudar totalmente para o Carbono terão um conjunto de ferramentas para transliterar automaticamente as bibliotecas C++ para código na nova linguagem. A migração inversa também é possível. No futuro, estas bibliotecas podem ser utilizadas num projeto C ++ existente. Todas as ferramentas Carbon estão alojadas no GitHub e são distribuídas ao abrigo da licença Apache 2.0. Até o momento, há um intérprete de demonstração do carbono disponível.

Uma parte importante do projeto experimental Carbono é a estrutura de governação. A equipa Carbon é orientada pelos princípios de inclusão e abertura. A estrutura de governação do Carbono foi concebida para uma tomada de decisão rápida, flexibilidade e desenvolvimento rápido do projeto. Todas as decisões cruciais são tomadas pelos líderes do Carbono, representados atualmente por Chandler Carruth, Kate Gregory e Richard Smith. Uma vez que o projeto Carbon se baseia no modelo de desenvolvimento open-source, todos os utilizadores podem enviar pedidos ao GitHub para sugerir alterações ao projeto e impulsionar a evolução da linguagem Carbon.

De momento, os funcionários da Google estão a trabalhar na linguagem de programação Carbon como um projeto interno. No entanto, está previsto reduzir o nível de envolvimento da empresa no projeto, uma vez que os programadores compreendem que, para ter êxito no futuro, o Carbon deve ser um projeto independente e orientado para a comunidade.

Conclusão

É importante compreender que o Carbon é um projeto experimental e que é demasiado cedo para afirmar inequivocamente que o Carbon é um sucessor de pleno direito do C++. De acordo com o roteiro do Carbon, o desenvolvimento das principais construções da linguagem deve estar concluído até ao final de 2022, e é exatamente nesta altura que o Carbon 0.1 deve ser lançado. Será necessário algum tempo para avaliar o sucesso do projeto, mas podemos desde já falar das elevadas perspectivas da linguagem de programação Carbon como sucessora do C++, com base nas características e princípios de desenvolvimento anunciados.
Obrigado pela avaliação!
Obrigado pelo seu comentário!

Índice

Avaliar este artigo:

4/5

4.8/5 (45 comentários)

Conteúdo relacionado

Trouxe-nos um desafio?

    Inclua os detalhes do projeto, a duração, o conjunto de tecnologias, os profissionais de TI necessários e outras informações relevantes
    Gravar uma mensagem de voz sobre o seu
    projeto para nos ajudar a compreendê-lo melhor
    Anexar documentos adicionais, se necessário
    Enviar ficheiro

    Pode anexar até 1 ficheiro de 2MB no total. Ficheiros válidos: pdf, jpg, jpeg, png

    Informamos que, ao clicar no botão Enviar, o Innowise's processará os seus dados pessoais de acordo com a nossa Política de Privacidade com o objectivo de lhe fornecer informações adequadas.

    O que é que acontece a seguir?

    1

    Após termos recebido e processado o seu pedido, entraremos em contacto consigo para detalhar as necessidades do seu projecto e assinar um NDA para garantir a confidencialidade das informações.

    2

    Após a análise dos requisitos, os nossos analistas e programadores elaboram uma proposta de projecto com o âmbito dos trabalhos, tamanho da equipa, tempo e custos e custos.

    3

    Marcamos uma reunião consigo para discutir a oferta e chegar a um acordo.

    4

    Assinamos um contrato e começamos a trabalhar no seu projecto o mais rapidamente possível.

    Obrigado!

    A sua mensagem foi enviada.
    Processaremos o seu pedido e contactá-lo-emos o mais rapidamente possível.

    Obrigado!

    A sua mensagem foi enviada. 

    We’ll process your request and contact you back as soon as possible.

    seta