C++

Compartilhar:

Essas perguntas foram mostradas apenas aos desenvolvedores que escolheram o C++ como uma de suas três principais linguagens de programação.

Quais padrões do C++ você utiliza regularmente?

É ótimo ver a migração progredindo constantemente. Estou especialmente feliz em ver os desenvolvedores de jogos adotando o C++20 e estou ansioso pelo suporte por parte de todas as plataformas de jogos. Será um desafio para os fornecedores implementar, mas tenho certeza de que valerá a pena apenas pelos conceitos e pelas faixas.

Guy Davidson

Chefe de prática de engenharia, Creative Assembly

Estou realmente surpreso ao ver a taxa de adoção do C++20. As coisas estão claramente mudando. Estamos vendo uma adoção muito mais rápida de novos padrões do que no passado.

Jason Turner

Palestrante, autor, YouTuber e instrutor da linguagem C++

Fico muito feliz em ver que a grande maioria dos usuários está usando lançamentos dos últimos 5 anos. Além disso, ver os lançamentos pré-C++11 cair abaixo de 10% é uma boa notícia. Mais alguns anos e podemos parar de incluí-los nesses tipos de pesquisas!

Titus Winters

Principal Engineer no Google

Migração de padrões C++

Lembre-se sempre de que existem usuários espalhados pela linha do tempo dos padrões. Pesquisas como esta nos lembram de escrever código que funcione em qualquer lugar, e não apenas no padrão mais recente.

Guy Davidson

Chefe de prática de engenharia, Creative Assembly

Acho isso particularmente surpreendente, pois ainda não vejo muitas empresas solicitando treinamento em C++20. Muitas pessoas ainda se sentem sortudas por mudar para o C++17.

Jason Turner

Palestrante, autor, YouTuber e instrutor da linguagem C++

Seu projeto atual planeja usar algum desses recursos do C++ 20 nos próximos 12 meses?

Sinto que o recurso [Modules] ainda precisa de um certo desenvolvimento adicional, mas estou ansioso para provar que estou errado.

Guy Davidson

Chefe de prática de engenharia, Creative Assembly

Espero que vejamos as ferramentas se atualizarem, para que seja fácil usar o Modules nos próximos 12 meses!

Jason Turner

Palestrante, autor, YouTuber e instrutor da linguagem C++

Qual IDE/editor você mais usa para desenvolvimento em C++?

A JetBrains tem uma variedade de IDEs C++ para ajudar você a evitar armadilhas e dores de cabeça típicas frequentemente associadas à programação em C++: o CLion para desenvolvimento multiplataforma e incorporado, o ReSharper C++ para usuários do Visual Studio e o Rider para desenvolvedores de jogos Unreal Engine e C++.

Quais frameworks de teste de unidade você usa regularmente?

Os engenheiros preferem muito mais escrever código do que testes para esse código, e o tempo gasto escrevendo testes supera quaisquer benefícios reais em longo prazo.

Guy Davidson

Chefe de prática de engenharia, Creative Assembly

A estatística de que um quarto dos desenvolvedores não está escrevendo testes de unidade me assusta. Não tenho certeza sobre como você expressa isso ou qual framework você usa, mas todos nós precisamos escrever testes.

Titus Winters

Principal Engineer no Google

Como você gerencia suas bibliotecas de terceiros em C++?

A situação atual com o empacotamento do código C++ para consumo de terceiros é refletida aqui. Estou ansioso para que esse problema seja resolvido, mas não estou otimista de que isso virá a acontecer.

Guy Davidson

Chefe de prática de engenharia, Creative Assembly

O estado do gerenciamento de dependências e do gerenciamento de pacotes me deixa triste. O valor de builds reproduzíveis e cadeias de dependência claras é enorme. Existe muito “acaba funcionando” nesse meio.

Titus Winters

Principal Engineer no Google

Quais modelos de projeto ou sistemas de build você usa regularmente?

Sou conhecido publicamente por comparar o CMake à síndrome de Estocolmo para engenheiros de C++. Ele tornou-se o padrão de fato, para o bem ou para o mal, conforme demonstrado pela liderança clara que detém sobre seus concorrentes.

Guy Davidson

Chefe de prática de engenharia, Creative Assembly

Quais compiladores você usa regularmente?

No CLion, você pode usar compiladores baseados em GCC, Clang, MSVC e IAR. Para casos raros ou personalizados, um recurso de compilador personalizado permite que você use qualquer compilador arbitrário no CLion.

Que outras linguagens de programação você usa em seus projetos junto com o C++?

A onipresença do Python como linguagem de programação para IA e ML significa que não há surpresas aqui. A existência de bibliotecas de qualidade, como numpy e pandas, o torna uma escolha óbvia. Talvez eles precisem de análogos na biblioteca padrão, ou precisamos resolver o problema do empacotamento.

Guy Davidson

Chefe de prática de engenharia, Creative Assembly

Qual das seguintes ferramentas você ou sua equipe usa para aplicação de diretrizes ou outra tarefa de qualidade/análise de código?

Com apenas 30% das pessoas evitando análises estáticas, estou razoavelmente confiante de que o open source aberto se tornará cada vez mais seguro e protegido.

Guy Davidson

Chefe de prática de engenharia, Creative Assembly

Como você ou sua equipe executa análises de código?

Quais ferramentas ou técnicas você utiliza para otimizar os tempos de build do seu projeto C++?

Pequeno é bonito neste caso. Estou interessado em ver como cabeçalhos pré-compilados, módulos e builds de unidade interagirão no ano que vem.

Guy Davidson

Chefe de prática de engenharia, Creative Assembly

Obrigado pelo seu tempo!

Esperamos que você tenha achado nosso relatório útil. Compartilhe este relatório com seus amigos e colegas.

Se tiver dúvidas ou sugestões, entre em contato conosco em surveys@jetbrains.com.