Jump to content

D (Русский)

From ArchWiki
Состояние перевода: На этой странице представлен перевод статьи D. Дата последней синхронизации: 9 марта 2026. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

Из Wikipedia:D (programming language):

  • Это обьектно-ориентированный, императивный,многопарадигмальный системный язык программирования,
  • По большей части он вдохновлён C++, но не является его вариантом,
  • Так же он был вдохновлён концептами использованными в C#, Eiffel и Java_(Русский).

Установка

Чтобы программировать на D вам нужно две вещи—компилятор D и библиотеки. Самый простой вариант начать это установить dlang-dmd пакетную группу. Она предоставляет официальный компилятор dmd, стандартную библиотеку libphobos, и dtools—коллекцию небольших инструментов разработки.

Проверка установки

Чтобы убедиться что всё установлено и настроено правильно,подойдёт простой "Hello World".

hello.d
import std.stdio;

void main() {
   string yourName = "archer";
   writefln("Hello %s!", yourName);
}

И выполните:

$ dmd hello.d

в той же директории что и файл. Потом вы сможете выполнить программу с:

$ ./hello

Также вы можете выполнить

$ dmd -run hello.d

который просто скомпилирует и запустит код без оставления файлов в директории.

Размышления

Вообще есть несколько компиляторов на выбор. Образцовая имплементация это dmd, но gcc-d (D фронтенд для GCC) и ldc (LLVM D Компилятор) также доступны.

В Апреле 2017 бекенд dmd стал FOSS (Boost-лицензированным). Все компиляторы делят один френтенд и из-за этого функции языка поддерживаются пактически идентично (при учёте одинаковой фронтенд версии).

Полезные библиотеки и привязки

  • DDT - Eclipse плагин для управления проектом и кодом D
  • Mono-D - MonoDevelop аддон для программирования на D
  • QtD - Qt привязки для D
  • GtkD - Объектно-ориентировананя GTK оболочка для D
  • Derelict - Привязки для мультимедиа библиотек, сфокусировано на разработку игр(?????)
  • Deimos - Проект содержащий множество привязок к различным C библиотекам

Смотрите также