Pergunta

Eu decidi que eu quiser obter mais em desenvolvimento de código nativo com C ++. Eu estou tentando decidir se eu seria melhor servido usando Builder ++ CodeGear C 2009 ou Visual Studio 2008. Eu uso atualmente Delphi 2007, por isso estou muito confortável com IDE do C ++ Builder (é o mesmo que Delphi), bem como a VCL e RTL.

Eu nunca fui um grande fã do MFC (a partir da primeira vez que eu brinquei com ele no VS 6,0 dias), mas não têm tido um olhar mais atento sobre ele desde então.

Estou interessado em ouvir de alguns especialistas que têm experiência com tanto IDE, se são as versões mais recentes ou não.

Agora, eu estou inclinado para C ++ Builder porque acredito que a VCL é muito mais robusto e mais fácil de trabalhar do que MFC --- mas como eu disse, tem sido um MFC tempo desde que eu usei. Eu não estou interessado na construção de programas que dependem do .NET Framework, porque eu estou em parte, me ensinando desenvolvimento nativo. É MFC ainda rei para Windows C ++? Ou é WTL ou ATL a grande coisa?

Qualquer C ++ gurus lá fora, quer compartilhar suas opiniões?

Editar : Eu entendo MFC não é o kit de ferramentas única gui para o Visual Studio. No entanto, eu estou procurando algumas recomendações baseadas em GUI Toolkit + IDE. Para C ++ Builder, há apenas 1 opção real, que é C ++ Builder + VCL. Para VS 2008, é VS + MFC / ATL / WTL / QT .... confuso para mim desde que eu não sei muito sobre eles.

Foi útil?

Solução

Vindo do Delphi, você encontrará o simples VCL para usar com C ++ Builder. Existem algumas esquisitices, como C ++ não esconde o fato de que TObjects são todos realmente ponteiros (que esconde Delphi de você), e algumas coisas como propriedades de matriz são acessados ??de forma diferente.

Dois ou três anos atrás, eu estava à procura de qualquer maneira fora do C ++ Builder, mas agora, com lançamentos recentes (e compra de Codegear da Embarcadero), estou feliz com o produto e a direção.

Você vai encontrar o número de tipos de cordas e as potenciais incompatibilidades variados bastante dolorosas com C ++ Builder, mas você vai se acostumar com isso! (Std :: string, char [], wchar_t [], TCHAR, AnsiString, WideString, UnicodeString e String para citar alguns)

Pessoalmente eu votar em C ++ Builder - por causa de duas vias RAD eo VCL, embora possa não ser a melhor maneira de aprender expressões idiomáticas modernas C ++.

Outras dicas

Visual Studio e MFC não são os mesmos. Eu uso estúdio o tempo todo e eu evitar MFC como a peste. Você pode usar WTL, ATL, Win32 ou qualquer número de bibliotecas para criar aplicativos sem MFC.

A resposta simples é que para o desenvolvimento puro C ++ que tem que ser VC ++.

Para expandir: como um ambiente de desenvolvimento puro C ++ você simplesmente não pode bater VC ++, o depurador é melhor, o IDE é superior (todos IMHO, é claro). Eu usei-o para desenvolver bibliotecas que eu, em seguida, utilizar a partir de C ++ Builder por causa dessas razões.

No entanto uma vez que você começar no desenvolvimento da interface do usuário, ou qualquer coisa que você pode resolver usando o VCL ou componentes C ++ B é a escolha melhor. Em comparação com a VCL, MFC ou ATL são horríveis por comparação, e assim que as folhas você use NET, que é provavelmente a melhor opção, mas não

Eu não tenho certeza que eu recomendo a construção de um novo produto usando C ++ B ou Delphi com base nos últimos anos de 'direção' dos vendedores. No entanto isso parece estar mudando para melhor, mas até um pouco mais de tempo passou, é difícil dizer como as promessas traduzir em realidade.

Se você está fazendo o desenvolvimento puro C ++ no Windows, então é difícil de bater VS. O compilador é rápido, muito padrões de conformidade e produz bem otimizado código. O depurador é o melhor em qualquer plataforma. O IDE é OK.

É também claramente o toolchain compilador mais amplamente suportado no Windows. Download de qualquer código-fonte aberto do projeto / biblioteca e, se o Windows é suportado, é provável que tenha sido construído e testado usando VS. Sua popularidade também garante que ele é o mais útil ter em um currículo.

O que Builder dar-lhe? Uma biblioteca GUI razoável. Bem, isso é bom, mas há muitos outros kits de ferramentas GUI decentes lá fora (wxWidgets, GTK, Qt etc). Muitos são de código aberto e multi-plataforma.

No entanto, esses dias eu achar que é melhor para reestruturar minhas aplicações para fornecer uma API e, em seguida, construir a GUI em cima dela em um idioma diferente. força do C ++ é não no desenvolvimento GUI. Pelo menos não hoje ...

Eu escolheria - e recomendar -. VS sobre Builder

Eu não usei C ++ Builder há anos, mas sobre o tema do C ++ depuração, Visual Studio 2008 é caminho para fora na frente de outras IDEs e VS anterior especialmente se você usar contêineres STL pois torna-se muito fácil para inspecionar seu conteúdo .

No entanto, do lado da GUI, C ++ é agora muito mais uma língua de segunda classe para a Microsoft. A maneira do futuro é WPF e C ++ não é suportado como um XAML- amigável idioma: Vamos continuar investindo em C ++ / CLI para permitir aos desenvolvedores expor ativos nativas C ++ para o mundo gerenciado e vice-versa. Acreditamos que o desenvolvimento puro .NET é feito melhor usando um .NET focada linguagem como C # ou VB. Investir em C ++ / CLI será principalmente no de gestão nativa interoperabilidade áreas.

Assim, para criar um de aparência moderna C ++ GUI, a sua melhor opção pode ser de fato VCL - se VCL continua a fazer tal possível; -)

C ++ Builder é muito superior do que MS-VS quando se trata de desenvolvimento baseado UI e aplicação orientada base de dados. MFC suga !! No entanto VS tem melhor depuração capacidades.

Eu segundo indo para C ++ Builder, uma vez que você já sabe Delphi. MFC não mudou muito desde os dias VS6, então o código escrito usando MFC ainda parece merda. No entanto, VS mudou e agora é bastante um bom IDE.

Além disso, mantenha em mente que C ++ Builder não é estável como uma linha de produtos. Não tem vezes no passado em que não foi mantida / seu futuro não estava claro etc. Então você está tendo uma chance se você quer construir algo que dura.

Apenas para o inferno dele, podemos jogar em eclipse à mistura bem?
Acabei de encontrar trabalho em eclipse para ser melhor do que trabalhar no estúdio visual.

A menos que você estiver usando VS2008 com winforms, o apoio gui é através de modelos do Windows (normalmente a partir de recursos), que é velho chapéu e você provavelmente não quer usar. Assim, o apoio gui no VS2008 não é especial.

Quanto kit de ferramentas gui, talvez veja que é um bom GUI / widgets kit de ferramentas

Bem, você pode usar o Eclipse + MinGW + Qt4 + QT Eclipse Integração e você terá todas as coisas:. Depurador, desenhista GUI visual, etc

Mente que Qt4 é dual licenciado:. Open Source e licença comercial

Além disso, você pode combinar Qt4 com o Visual Studio (mesmo com Express) e usar todos os goodnes VS lhe dá.

Para mim Qt4 é o caminho a percorrer e VS sobre Builder.

Eu amei C ++ Builder um par de anos atrás. Foi fantástico. Era uma maneira melhor com sua VCL do que VS com o seu MFC de baixa qualidade. Então, as coisas foram mudando a cada ano.

Builder tem vindo a descer; 1. Builder não foi atualizado com qualquer funcionalidade real. 2. Borland abandonou a idéia de reescrever VCL em C ++ para uso com Kylix e Builder 3. CodeGear bagunça e futuro incerto de Builder colocar muitas pessoas fora do produto.

VS foi ficando cada vez melhor; 1. IDE tem sido melhorado muito 2. Compiler da que menos compatível com o padrão na plataforma Windows se tornou o mais compatível com o padrão (sem contar GCC em MinGW é claro) 3. .NET surgiu e foi Managed C ++ e, em seguida, C ++ / CLI para torná-lo possível utilizar este quadro de dentro C ++

Temos novos jogadores, fortes 1. Eclipse 2. Qt Creator

e novos kits de ferramentas GUI

  1. wxWidgets
  2. Qt4 agora tem também licença open source

Para resumir; Construtor é morto por causa Borland

  1. estava pensando Delphi é tão maravilhoso que eles realmente não precisa de mais nada para ganhar dinheiro
  2. caiu em campanha publicitária Java e investiu muitos recursos nele
  3. não entendia grande poder de C ++ e, em vez de pilha para pascal, que sempre foi linguagem acadêmica sem produtos reais criados com ele

Quando se trata de desenvolvimento do Windows nada realmente tops Visual Studio. É muito rico em recursos e tem um excelente depurador, para não mencionar a grande comunidade de usuários para ajudá-lo com quaisquer problemas que podem ocorrer. Se as ferramentas de desenvolvimento de uma empresa para o seu próprio sistema operacional não foram os melhores para isso, eu temo seu status no mundo do software. Mas se você não precisa os recursos extras e absolutamente precisa de uma ferramenta RAD com drag & drop (além MFC) construtor de C ++ não é muito para trás. Usando o ambiente delphi prévia é apenas uma vantagem para você.

A única coisa sobre a última C ++ Builder pela CodeGear - Quero dizer versão 2009 - é que suas atualizações podem realmente fazer você odeia este IDE.
Depois de instalada a segunda atualização, eu descobri que, se / bloco doesnot TRABALHO outra CORRETAMENTE. Ele pode entrar IF, mas não pode entrar mais ninguém - e doesnot depender da situação - este ensino da língua simplesmente parou de trabalhar em tudo. O tempo que me levou a descobrir isso foi cerca de duas ou três horas - e eu comecei a desenvolver o aplicativo win32 necessário em VS, considero que é mais confiável do que o produto CodeGear. O segundo recurso que eu não gosto que você não pode desligar o suporte a Unicode e tem que usar versões ANSI do Win32 funções de forma explícita (por exemplo SendMessageA (...)), que é muito chato. Eu mal cumprir o prazo para terminar o trabalho usando VS2008.
É apenas a minha experiência, a escolha a fazer é sua

Tente Lázaro vez. Escreva uma vez, compilar muitos. Funciona em várias plataformas. Qualquer um vindo de Delphi e Kylix fundo vai se sentir extremamente em casa com esta ferramenta RAD. Como para o futuro, é open source com uma comunidade forte, o desenvolvimento vai continuar sem constranger comercial.

Para o desenvolvimento nativo C ++ Eu não gostaria de usar C ++ Builder nem VS. Esses IDEs estão todos otimizado para o uso com suas estruturas.

Eu preferiria escolher Eclipse, Code :: Blocks ou codelite. Estes do IDE não são otimizados para qualquer estrutura e você pode alternar entre vários compiladores em plataformas severeal.

2012 é quase terminando. Eu estava utilizador uma Borland C ++ e, em seguida, para swithced VC ++ 6.0. Recentemente houve um ffrom exigência de um cliente que queria um final GUI para o seu produto e não queria que a dependência do framework .NET. então eu explorou a Embarcadero RAD Studio XE2.

Quando se trata de desenvolvimento C ++ RAD, acho que nem mesmo MSVC ++ vem próximo a ele. Era como uma brisa. embora eu achei problemas quando compilar templates. por exemplo, se você definir um functor e quer combinar o construtor com a chamada functor você não pode fazê-lo em C ++ B, você tem que criar um objeto e, em seguida, chamar o functor separadamente. Havia outras questões também, como eu não poderia compilar totalmente biblioteca Poco.

Eu encontrei a solução, criando as DLLs em VC ++ e chamá-los a partir do frontend C ++ B. que dá o melhor de ambos.

Espero que Embarcadero alcança com as normas em breve.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top