por Red Neck Guy » 09 Mar 2011 20:59
Eu uso c# em conjunto com o .net desde a versão 2.0 do framework. Anteriormente eu utilizava object pascal com o Delphi 5,6 e 7. Em 2007 tive contato com Java que é a plataforma oficial do curso de ciências da computação que iniciei.
Bem, o Delphi tinha aquele problema de POG. A maioria do pessoal fazia aplicações orientada à eventos, não criava estruturas e usava aquele monte de componentes, as vezes chegando ao extremo de usar componentes para tarefas básicas de programação. A integração com porta serial, link com DLL's win32 e acesso a API nativa do windows era razoavelmente estável e fácil de se fazer.
Com o Java, me desculpem os amantes do software livre, mas as IDEs tipo Eclipse, NetBeans e afins ainda tem muito que amadurecer para chegarem no nível do VS e Delphi. O java tem como foco a portabilidade, e isso é o que o torna chato para quem trabalha com softwares que não são de negócios. Acessar uma DLL win32, ou mesmo fazer algum acesso a API do windows são um parto. (Aqueles malditos JNIs).
O conjunto c# e dotnet ganha pela facilidade de acesso a DLLs win32, acesso à API do SO, o VS é uma IDE muito poderosa e intuitiva. A sintaxe do c#, agora com o LINQ, possuí uns açúcares sintáticos que facilitam muito a codificação. Sem contar que classes do framework que acessam a serial, por exemplo, são super estáveis.
Até o momento não precisei portar nenhuma aplicação comercialmente para o Linux, mas o dia que precisar, posso trabalhar com a versão 2.0 e executar sobre o MONO.
ASM51 descanse em paz!