Hvad er D-filformatet?
.d-filer indeholder kildekode skrevet i programmeringssproget D, et systemniveau-sprog designet af Walter Bright hos Digital Mars og første gang udgivet i 2001. D kombinerer C-lignende syntaks med funktioner på højere niveau, herunder garbage collection, indbygget enhedstestning, template-metaprogrammering, mixins, ranges og Uniform Function Call Syntax (UFCS).
D-kildefiler er almindelig UTF-8-tekst. En typisk .d-fil begynder med en valgfri module-erklæring, efterfulgt af import-sætninger og derefter erklæringer for funktioner, klasser, structs, interfaces eller templates. D understøtter indlejrede dokumentationskommentarer ved hjælp af /// (linje) eller / */ (blok) syntaks. Tre kompilere understøtter .d-filer: DMD (reference-kompileren), GDC (GCC-frontend) og LDC** (LLVM-backend), som alle implementerer den nuværende D2-specifikation, der vedligeholdes på dlang.org.
D1 (den oprindelige version) blev udfaset omkring 2010 og er ikke kildekode-kompatibel med D2, som har været den aktive standard siden da. Interface-filer med filtypen .di tjener en rolle svarende til C-headere og indeholder erklæringer uden implementeringskrop. Editorer understøtter .d-filer via plugins - til VS Code giver code-d-udvidelsen syntaksfremhævning, autofuldførelse og build-integration.
Sikkerhed og tryghed
RISIKO: LOWKildekode i almindelig tekst - intet eksekverbart indhold i selve .d-filen; den skal kompileres for at køre. Sikker at åbne i enhver teksteditor. Utroværdig D-kildekode skal gennemgås og kompileres før eksekvering.
Formatdetaljer
kort fortalt- Makefile-afhængighedsfil - GNU make og kompilere (gcc -MD) genererer .d-afhængighedsfiler, der lister header-afhængigheder; almindelig tekst, ingen relation til sproget D.
- ChemDraw kemisk output - Sjældent bruger visse ChemDraw-eksportformater .d; helt urelateret til programmeringssproget D.
- Patch / diff-fragment - Nogle diff/patch-værktøjer bruger .d til unified diff-fragmenter på Unix-systemer.
Programmer der åbner D-filer
Tekniske detaljer
dyb specifikation| Format-type | Kildekode i almindelig tekst (UTF-8) |
| Kodning | UTF-8; BOM valgfri; ikke-UTF-8 kilde udløser en kompileringsfejl |
| MIME-type | text/x-dsrc |
| Typisk filstørrelse | 500 B - 200 KB pr. kildemodul |
| Modulerklæring | Valgfri `module name;` sætning øverst i filen |
| Kompilere | DMD (reference/Digital Mars), GDC (GCC-frontend), LDC (LLVM-backend) |
| Sprogversioner | D1 (udfaset ~2010) og D2 (nuværende); de to er ikke kildekode-kompatible |
| Enhedstestning | Indbyggede `unittest`-blokke, der kan indlejres direkte i kildefiler |
| Dokumentationskommentarer | `///` (linje) og `/** */` (blok) DDoc-syntaks, behandlet af DMD -D flaget |
| Betinget kompilering | `version()` og `debug` blokke i kilden |
| Platform | Windows, Linux, macOS, FreeBSD |
| Relateret fil | .di (D-interfacefil - kun erklæringer, svarende til C-headere) |
| Standardbibliotek | Phobos (importeret via `import std.*`) |
| Udgivet | 2001 (D 1.0 by Walter Bright / Digital Mars) |
| Seneste version | D 2.109.x (2026); D spec at dlang.org |
| Åben standard | Ja · royaltyfri |
| Specifikation | dlang.org |
Fællesskabets Q&A
spurgt af brugereIngen spørgsmål endnu - vær den første til at spørge om D-filer.