Linguaxe de programación D
- houbo diversas linguaxes de programación chamadas D. O que se presenta neste artigo é o desenvolvido por Walter Bright.
D é unha linguaxe de programación de uso xeral desenvolvido por Walter Bright cuxa primeira versión apareceu en 1995, resultado de décadas de investigación e experiencia de programadores expertos en moitas linguaxes.
D | |
---|---|
Paradigma | multiparadigma: orientado a obxectos, imperativo |
Data | 1995 |
Deseñador | Walter Bright |
Última versión | 1.024(estable) |
Postas en funcionamento | DMD, GDC |
Influído por | C++, C, C#, Java, Eiffel |
Web | http://www.digitalmars.com/d/ |
É dun nivel máis alto que C++, pero conserva a capacidade de escribir código de alto rendemento e de interconectar directamente con el os APIs dun sistema operativo ou o hardware. Ademais compórtase ben con programas de grande escala cun millón de liñas, que desenvolven equipos de programadores.
D é fácil de aprender, proporciona moitas funcións para axudar a/o programador/a, e cumpre ben coa tecnoloxía agresiva de optimización do recopilador. É unha linguaxe compilada, non interpretada. É unha linguaxe práctica para programadores que necesitan conseguir un traballo finalizado rapidamente, cun código fácil de entender.
C++ é a linguaxe á que D aspira a substituír. É unha linguaxe evolucionaria, non revolucionaria e nun principio pode parecer que non achega demasiado sobre C++, Pero non son as características xerais senón os seus detalles os que marcan a diferenza. En primeiro lugar D conserva todas as características de expresividade de C++ (cousa que nin C# nin moito menos Java conseguen no seu afán por facerse linguaxes máis accesibles), pero cunha sintaxe e unhas construcións moito máis sinxelas e lóxicas. Ademais, outro dos puntos fortes de C++, o seu rendemento, tamén se ve reflectido en D (nalgunhas ocasións ata superado).
Doutra banda D conta con moitas outras melloras e ata características das que C++ non dispón, as cales se enumeran a continuación. Ao contrario do que pasa con Java ou C#, estas características non supoñen unha perda apreciable de rendemento para D en comparación con C++:
- Xestión automática de memoria (recolección de lixo)
- Delegados, funcións aniñadas e funcións literais
- Sobrecarga de operadores e propiedades sen sobrecargar a/o programador/a
- Estruturación: Módulos e paquetes
- Propiedades
- Programación xenérica moi mellorada
- Programación por contratos
- Mantenibilidade e fiabilidade
- Compilación condicional sen sucios preprocesadores
- Compatibilidade con C sen cargar con C
- Arrays asociativos
Vantaxes e inconvenientes
editarVantaxes
editar- Linguaxe máis intuitiva e fácil de aprender que C, C++ ou Java, con gran cantidade de melloras respecto destas.
- Compatibilidade cos binarios de C (non C++).
- Linguaxe compilada (non se executa nunha máquina virtual, como Java).
- Garbage collector ou colector de lixo (sistema que libera a memoria dinámica cando xa non se necesita, como Java, pero con posibilidade de desactivalo se se desexa maior control).
- Elimina parte da complexidade de sintaxe de C++.
Inconvenientes
editar- A única documentación é a especificación oficial.