Sou um usuário antigo de C++ e estou começando com D. Estou mais convencido, mas há algumas falhas aparecendo. Atualmente estou trabalhando em um pequeno projeto em D que pretendo comparar com seu equivalente em C++ e possivelmente com outra ou duas linguagens concorrentes para projetos subsequentes.
Descobri dois bugs do compilador dois dias depois de usar D e, desde então, fiz duas solicitações de recursos. Tudo isso pode ser encontrado aqui.
Posso ser contatado como tortoise_74 no Google (.co.uk).
Minha página inicial é:
Não há muitas coisas relacionadas à programação no momento, mas pode haver no futuro.
O DMD oferece suporte a testes unitários e análise de cobertura, mas apenas de uma forma muito rudimentar. É melhor do que nada, mas é praticamente uma reflexão tardia em uma refatoração e aprimoramento bem pensados ​​do C++.
- A ferramenta de cobertura oferece apenas cobertura de linha. A execução de todas as linhas não prova uma boa cobertura de teste.
- assert é muito fraco por si só para uma estrutura de teste unitário. Veja, por exemplo, xunit http://en.wikipedia.org/wiki/XUnit
- As mensagens de erro dos DMDs são muito inúteis quando comparadas às mensagens de erro do g++.
- o gdc está quebrado no cygwin (windows)
- O suporte do Doxygen está incompleto - ainda não descobri o quanto isso é um problema.
- Não há contentores suficientes. As matrizes são boas, mas não são suficientes por si só.
- Muitas coisas permanecem misteriosas sem postagens repetidas em novos grupos.
Quais são as 'rachaduras' em D que mencionei acima, ouço você perguntar?
- constância enlouquecida
- A construção mixin é poderosa, mas muito parecida com uma macro glorificada. Existem maneiras melhores de fazer metaprogramação.
- __FILE__ e __LINE__ são difíceis de usar