lo que existe guía está fuera de fecha y no debería existir más. No creo que haya ningún tipo de guía de estilo D que se considere válida, y no creo que Walter Bright, Andrei Alexandrescu, etc. quieran que exista una. Además, según recuerdo, en C++ Coding Standards: 101 Rules, Guidelines, and Best Practices, Herb Sutter y Andrei dijeron que las guías de estilo eran una mala idea (o al menos las realmente específicas), pero tendrían que sacar el libro para estar seguro de lo que dijeron exactamente. . Así que más bien dudo que Phobos (del cual Andrei está a cargo) tenga algún tipo de guía de estilo; Ciertamente no estoy al tanto de ninguno. Puede haber algún tipo de pautas para el código de formato que va a Phobos (como hacer que su código se vea similar al resto del módulo o algo así), pero alguien como Andrei o uno de los otros desarrolladores de Phobos tendría que responder eso. Ciertamente, con alrededor de 15 desarrolladores diferentes trabajando en Phobos, es probable que obtenga varios estilos diferentes en el código si no hay una guía de estilo aplicada.
Por lo tanto, no creo que realmente haya ningún tipo de estilo de codificación recomendado para D o Phobos. Según entiendo, los principales detrás de D no son particularmente partidarios de las guías de estilo, y ciertamente no han presionado. Entonces, no hay uno en este momento, y no espero que haya uno en el futuro.
EDIT: Bien, fui y busqué exactamente lo que dijeron Herb Sutter y Anderi Alexandrescu en C++ Coding Standards: 101 Rules, Guidelines, and Best Practices. No es exactamente que estén en contra de los estándares de codificación tanto como están en contra de los particularmente restrictivos que imponen los gustos personales o las prácticas obsoletas. No voy a citar todo aquí (es un buen libro, y probablemente deberías retomarlo), pero aquí hay algunos puntos clave.
- No especifique la cantidad de sangría, pero haga sangría para mostrar la estructura.
- No aplique una longitud de línea específica, pero mantenga las longitudes de línea legibles.
- No overlegislate la denominación, pero haznos una convención de nomenclatura coherente.
- No excluya los estilos de comentarios (excepto cuando las herramientas extraen ciertos estilos en la documentación), pero sí escriba comentarios útiles.
Algunos ejemplos que dieron fueron que
- colocación Brace no debería importar, pero debe ser consistente y legible.
- En los espacios frente a las pestañas, no parece importarles si el estándar de codificación dice algo al respecto.
- Están en contra de la notación húngara en C++, pero piensan que podría ser valioso en lenguajes menos seguros.
- Están completamente en contra de hacer cumplir que haya una única declaración de devolución en una función.
Independientemente, creen que el formato debe ser coherente dentro de un archivo de origen. Obviamente, Phobos no necesariamente se apega a eso en este punto, pero Andrei simplemente mencionó algunas de las convenciones que normalmente se han mantenido y estaba estudiando la posible aplicación de algunas de ellas (la publicación actual está archivada here).
Sin embargo, mientras Phobos es de código abierto y cualquiera puede enviar revisiones, recuerde que es la API destinada al consumo público. Solo los desarrolladores de Phobos necesitan para ver el código (al menos si los documentos están debidamente completados); sin duda, son los únicos que van a trabajar directamente en él, por lo que no es necesario un estándar de codificación listado públicamente. , incluso si usan uno. Parece que podrían usar más consistencia y que pueden estar trabajando en eso, pero todo lo que va a hacer para terceros es hacerlo más legible. Nadie más necesita saber realmente cuál es el estándar (aunque si observabas suficiente código siguiendo un estándar, podrías averiguar al menos más o menos lo que decía el estándar).
En cuanto a D en general, hay son ciertas convenciones que se consideran buenas prácticas (como generalmente usando auto
en lugar de especificar un tipo, a menos que realmente tiene que especificar el tipo), pero al igual que con C++, puede codificar con el estilo de codificación que desee, y los desarrolladores D no son lo suficientemente dictatoriales para intentar imponer un estilo en toda la comunidad D.
Muy mal. Me resulta más fácil leer el código cuando es consistente. D hace exactamente lo contrario de Ir aquí: | – simendsjo
Estoy de acuerdo. Phobos está * desesperado * necesita una guía de estilo. Cada vez que mira una parte diferente de la biblioteca, el estilo cambia, incluso las convenciones de nomenclatura. Hace que Fobos sea muy difícil de usar. –
@ Peter: supongo que eventualmente pasará por una necesidad desesperada. Es aún peor en los módulos escritos por varias personas, ni siquiera intentan seguir el estilo utilizado anteriormente. – simendsjo