Vibe.d-это высокопроизводительный асинхронный ввод-вывод, параллелизм и инструментарий для веб-приложений, написанный в D. Он уже содержит множество дополнительных функций, таких как поддержка базы данных, чтобы иметь возможность предложить полную среду разработки. Для более специализированных потребностей также есть много совместимых пакетов Dub.
Посетите веб -сайт по адресу https://vibed.org/ для получения дополнительной информации и документации.
#!/usr/bin/env dub
/+ dub.sdl:
name "hello_vibed"
dependency "vibe-d" version="~>0.9.0"
+/
import vibe.vibe;
void main ()
{
listenHTTP( " 127.0.0.1:8080 " , (req, res) {
res.writeBody( " Hello Vibe.d: " ~ req.path);
});
runApplication();
} Загрузите этот файл как hello.d и запустите его с Dub:
> dub hello.d
(или chmod +x и выполнить его: ./hello.d )
В качестве альтернативы вы можете быстро начать с примерами непосредственно.
Проект Vibe.D структурирован в несколько репозиториев:
vibe-d (This Repository): Функциональность Web и REST высокого уровня, HTTP, STMP и Redis/MongoDBvibe-http : реализация клиента/сервера HTTP, включая веб-билет, прокси, сеансы и т. Д.vibe-stream : расширенные типы потоков и поддержка потока TLSvibe-inet : интернет-стандартная функциональность (URL, кодирование формы, HTML-кодирование, ...)vibe-core : оптоволокно на основе ввода-вывода и реализации параллелистикиvibe-serialization : поддержка сериализации и структурированного формата данныхvibe-container : реализации контейнеров, используемые на протяжении всего проектаvibe-sdl : Sdlang Serialization Поддержка сериализации на основе sdlitevibe-compat : устаревшая функциональностьobservable : наблюдаемые, сигнальные/слот и реагирующие значения реализацииdiet : Pug.js Вдохновленный временем компиляции HTML-системы с помощью интеграции vibe.webeventcore : абстракция низкого уровня по асинхронным вводам/выводам операционной системыВы можете найти обзор API всего проекта в документации API.
Vibe.d поддерживает 10 последних незначительных выпусков DMD. Например, если текущая версия составляет v2.090.1, то поддерживают v2.089.x, v2.088.x, ... v2.080.x. Обратите внимание, что поддержка выпуска патча желательна, но гарантирована только поддержка последнего патча в несовершеннолетнем.
Кроме того, Vibe.d поддерживает все версии LDC, которые реализуют версию поддерживаемого фронта (например, предыдущим правилом LDC V1.20.0 реализует v2.090.1 и будет поддерживаться).
Вместо того, чтобы явно устанавливать Vibe.d, рекомендуется использовать Dub для создания приложений на основе Vibe.d. После установки Dub вы можете создать и запустить новый проект, используя следующие команды оболочки:
dub init <name> -t vibe.d
cd <name>
dub
Точно так же вы можете запустить пример, вызывая dub из любого из примера каталогов проектов.
Обратите внимание, что в операционных системах, не являющихся Windows, вам также необходимо установить OpenSSL - и, конечно же, компилятор. Смотрите ниже инструкции.
Если у вас нет варева, установите его в соответствии с их инструкциями по установке.
Затем вы также можете установить Dub с помощью Brew:
brew install dub
(ПРИМЕЧАНИЕ: Установите варево только в том случае, если у вас нет Macports, так как они будут конфликтовать)
Установите DMD с помощью установщика на https://dlang.org/download.html.
Необязательно, запустите ./setup-mac.sh для создания пары пользователей/группы для снижения привилегий.
Установить зависимости Vibe.d:
sudo apt-get install libssl-dev
На 32-разрядном Linux: установите DMD-I386
sudo apt-get install g++ gcc-multilib xdg-utils
wget "http://downloads.dlang.org/releases/2.x/2.098.0/dmd_2.098.0-0_i386.deb"
sudo dpkg -i dmd_2.098.0-0_i386.deb
На 64-разрядном Linux: установите DMD-AMD64
sudo apt-get install g++ gcc-multilib xdg-utils
wget "http://downloads.dlang.org/releases/2.x/2.098.0/dmd_2.098.0-0_amd64.deb"
sudo dpkg -i dmd_2.098.0-0_amd64.deb
Необязательно, запустите ./setup-linux.sh для создания пары пользователя/группы для понижения привилегий.
Вам нужно установить следующие зависимости:
Необязательно, запустите ./setup-linux.sh для создания пары пользователя/группы для понижения привилегий.
Установите зависимости компилятора DMD и Vibe.d, используя Portupgrade или аналогичный механизм:
sudo portupgrade -PN devel/pkgconf
Необязательно, запустите ./setup-freebsd.sh для создания пары пользователей/группы для понижения привилегий.
По умолчанию Vibe.d построена против OpenSSL 1.1.x. В системах, которые используют более старую ветвь 1.0.x, это может быть переопределено в командной строке Dub, используя --override-config vibe-d:tls/openssl-1.0 . В качестве альтернативы, то же самое можно сделать, используя директиву суб -конфигурации в рецепте пакета:
Синтаксис SDL:
dependency "vibe-stream:tls" version="~>1.0"
subConfiguration "vibe-stream:tls" "openssl-1.0"
JSON SYNTAX:
{
...
"dependencies": {
...
"vibe-stream:tls": "~>1.0"
},
"subConfigurations": {
...
"vibe-stream:tls": "openssl-1.0"
}
}
Наконец, существует конфигурация «Ботана» для использования порта D Ботана.