Pergunta

Eu estou trabalhando em uma empresa que desenvolve kernels de computação. Seu design é simples: é uma biblioteca em C ++ que tem apenas uma função disponível para computar resultados fora dos dados disponíveis.

Existem basicamente quatro etapas em cada um desses núcleos:

  • recuperar conteúdo XML (formato foi definido em um arquivo XSD) e armazenar em objetos

  • definir um problema matemático usando os objetos acima

  • usar um agente de resolução para encontrar uma solução (ou a solução óptima)

  • resultados de exportação em um novo arquivo xml

Atualmente, nossos recursos são muito em termos de capacidades e interesses (e não tanto na programação) orientada para o modelo. Obviamente, nós queremos tornar o ambiente mais amigável e eficiente possível. Estamos avaliando o uso de c # usando LINQ e Microsoft Solver Foundation como um substituto para c ++ e em casa ferramentas-made.

As minhas perguntas são:

  • Can LinQ e Fundação Solver fazer tudo isso? Como seria fácil de usar?

  • Quais seriam os ganhos / perdas de mudar o ambiente para os nossos recursos (tempo para aprender e reescrever, eficiência, etc.)?

  • Existem outras opções interessantes que eu deveria considerar?

Foi útil?

Solução

Você deseja obter enormes benefícios mudando para C # / LINQ em termos de trabalho com o XML e até mesmo com um monte da matemática. Haveria uma ligeira curva de aprendizagem (de modo que é um con), mas em apenas um par de semanas, eu estou certo que você estará rindo de quão mais fácil de codificação C # 3 / LINQ é.

Eu digo isso por experiência ... e eu especificamente mencionada "C # 3" (em oposição a apenas C #), porque quando eu convenci meu companheiro de C # 2 colegas para ir para 3 / LINQ, eles experimentaram o acima: )

Outras dicas

Eu digo que qualquer C ++ desenvolvedor de aplicativos deve dar uma boa olhada em C #. Na minha opinião, muitos dos problemas que você resolve em C ++ pode ser resolvido muito mais rápido em C #. Não é uma língua difícil de aprender vindo de C ++ em tudo. Eu diria, antes de decidir, veja C # para uma semana ou assim e ver o quanto você como ele.

Boa sorte:)

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