URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 114393
[ Назад ]

Исходное сообщение
"Бета-версия клиентского C++ API Pgfe к PostgreSQL"

Отправлено opennews , 23-Май-18 22:48 
Доступна (http://www.postgresql-archive.org/Announcement-of-a-new-C-AP...) бета версия Pgfe (https://github.com/dmitigr/pgfe) -  неофициального  клиентского API для PostgreSQL, написанного на  языке C++ и упрощающего работу с PostgreSQL в проектах на C++. Для сборки необходим компилятор с поддержкой C++17, такой как GNU GCC 8+ или Microsoft Visual C++ 15.7+.


Основные
возможности (http://dmitigr.ru/pgfe/doc): соединение в блокирующем и неблокирующем режимах, обработка заранее подготовленных выражений (prepared statement) с именованными параметрами, коды SQLSTATE, динамический SQL и преобразование расширяемых типов данных (например, преобразования между массивами PostgreSQL и контейнерами STL). В будущем ожидается появление Large Objects, операции COPY, C API, типы dmitigr::pgfe::Composite и dmitigr::pgfe::Dynamic_array для работы с составными типами и массивами произвольной размерности.

URL: http://www.postgresql-archive.org/Announcement-of-a-new-C-AP...
Новость: https://www.opennet.me/opennews/art.shtml?num=48646


Содержание

Сообщения в этом обсуждении
"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено Аноним , 23-Май-18 22:48 
Отличия от libpqxx?

"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено анонимный анонимус2 , 23-Май-18 22:53 
судя по коду, pgfe - самостоятельная реализация, не привязан к libpq. А вот libpqxx - враппер над libpq

"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено Аноним , 23-Май-18 22:55 
https://github.com/dmitigr/pgfe/blob/master/lib/dmitigr/pgfe...

> #include <libpq-fe.h>

Судя по коду, оно использует libpq.


"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено анонимный анонимус2 , 23-Май-18 22:58 
Только для openssl подключений.

"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено Аноним , 23-Май-18 23:00 
> Только для openssl подключений.

https://github.com/dmitigr/pgfe/blob/master/lib/dmitigr/pgfe...

Да нет, не только. Код напичкан вызовами PQ*.


"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено анонимный анонимус2 , 23-Май-18 23:04 
Ага, пропустил.

"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено Аноним , 23-Май-18 23:40 
Ох уж мне этот c++17. От override в глазах рябит.

"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено Аноним , 24-Май-18 15:23 
override - без преувеличения самая полезная фича современного С++

"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено Аноним , 23-Май-18 23:15 
Судя по коду, Pgfe - *может* быть самостоятельной реализацией. Интерфейс полностью абстрагирован. Сейчас под катом libpq, а завтра может быть и самостоятельная реализация протокола.

"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено Tantrido , 23-Май-18 23:00 
Мне pqxx очень нравится: удобный и реактивный. Как эта штука работает - ещё быстрее?

"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено Tantrido , 23-Май-18 23:05 
Судя по описанию - БУДЕТ гораздо мощнее штука: большие объекты, сигналы, уведомления и т.д.

"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено лютый охохоня , 24-Май-18 07:07 
>удобный и реактивный

Что будет если реактивный ранец приделать к жирному и неповоротливому слону? Нет, Джамбо бывает только у Деснеев... Сколько слону липосакций не делай, Монго не получится.


"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено Аноним , 24-Май-18 15:25 
>>удобный и реактивный
> Что будет если реактивный ранец приделать к жирному и неповоротливому слону? Нет,
> Джамбо бывает только у Деснеев... Сколько слону липосакций не делай, Монго
> не получится.

Да, такую дрисню трудно повторить


"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено лютый охохоня , 28-Май-18 05:45 
>такую дрисню трудно повторить

Всё страдаешь, что Монгу начали в 2007 писать 10 русских хакеров Ген и легко обогнали 100500 фафанов Постгреса? Дык, bazaar он и есть bazaar.


"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено Аноним , 23-Май-18 23:10 
я фигею. чем сишное то API не устраивает? нынешние программисты C++ какие-то хронические ленивцы и язык превращают в язык для ленивцев, все нововведения C++ за последние годы нужны только хроническим ленивцам!!!

"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено Crazy Alex , 23-Май-18 23:22 
Не, ну кому не нравится вменяемое управление ресурсами - чтобы без мороки, но контролируемо - могут на сях писать, кто ж запретит.

А вообще - язык эволюционирует, потому что софт всё сложнее и на закат солнца вручную никаких мозгов и времени не хватит.


"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено Аноним , 24-Май-18 00:02 
>язык эволюционирует

язык обрастает уродливыми свистоперделками, становится похож на php


"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено Аноним , 24-Май-18 04:38 
очевидно, что к плюсам вы никакого отношения не имеете

"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено Аноним , 24-Май-18 13:33 
очевидно ваши выводы не обоснованы

"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено qrKot , 24-Май-18 07:38 
Специально погуглил код на C++ и на PHP.
Не вижу сходства...

"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено XoRe , 24-Май-18 11:13 
> Специально погуглил код на C++ и на PHP.
> Не вижу сходства...

"Впервые вижу, но мнение имею"


"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено Аноним , 24-Май-18 00:36 
Я что-то пропустил и в текущем сишном API появилась поддержка асинхронного взаимодействия с БД?

"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено Аноним , 24-Май-18 01:43 
Она была.

"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено Аноним , 24-Май-18 11:08 
epoll/kqueue кто мешал заюзать?

"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено Аноним , 24-Май-18 12:07 
> Я что-то пропустил и в текущем сишном API появилась поддержка асинхронного взаимодействия
> с БД?

Ты что-то пропустил.


"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено КО , 24-Май-18 11:13 
>я фигею. чем сишное то API не устраивает?

Если человек работает в ООП, то ему нужны объекты. Как из чисто сишной функции получить результат объект? Например, PreparedStatement. С его методами (привязкой параметров, очисткой, перепривязкой, переиспользованием).
А внутре да - те же функции. Те же переменные. Только слегка инкапсулированные.


"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено Аноним , 24-Май-18 13:35 
я вам открою секрет, вы можете создавать объекты и на C

"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено anonymous , 24-Май-18 22:53 
Так костыли писать не мешки ворочать.

"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено Аноним , 25-Май-18 14:58 
И из спичек с клеем и жвачкой :)

"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено ваноним , 24-Май-18 11:49 
так толсто, что даже тонко

"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено Аноним , 24-Май-18 13:41 
мы можем открыть на википедии статьи о функционале который был внесен за последние 10 лет в C++ и разобрать по пунктам все что там было добавлено. 100% того что было добавлено - свистоперделки для ленивцев. ничего нового, только мусор ухудшающий читабельность кода и упрощающий написание для тупых макак которые теперь создают более бажный код

"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено Аноним , 24-Май-18 15:28 
"мы можем открыть на википедии статьи о функционале который был внесен в C++ по сравнению с С и разобрать по пунктам все что там было добавлено. 100% того что было добавлено - свистоперделки для ленивцев. ничего нового, только мусор ухудшающий читабельность кода и упрощающий написание для тупых макак которые теперь создают более бажный код"

"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено Аноним , 24-Май-18 15:45 
почитайте что Торвальдс думает про C++

"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено Аноним , 24-Май-18 16:52 
Что-то вроде того. Но если человек все-таки признает, что С++ нужен, то надо признать и то, что С++11 чинит многие его недостатки

"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено Аноним , 24-Май-18 17:15 
какие? auto? треды? какие к чертям недостатки?

"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено ваноним , 05-Июл-18 13:03 
вы либо не в теме, либо очень голодны

"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено ваноним , 05-Июл-18 13:01 
действительно, это всё жалкие отговорки — лишь бы не писать программы в машинных кодах!

"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено Аноним , 24-Май-18 15:30 
> я фигею. чем сишное то API не устраивает? нынешние программисты C++ какие-то
> хронические ленивцы и язык превращают в язык для ленивцев, все нововведения
> C++ за последние годы нужны только хроническим ленивцам!!!

Лень - одна из трех добротелей программиста


"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено anonymous , 24-Май-18 23:02 
В нормальных проектах для него всё равно так и так обёртку лепить. Теперь хоть появится шанс уменьшить число велосипедов. Если ты против этого, то я даже не знаю, что тебе предложить. Наверное, лучше не вылезать дальше сишки, дабы не увеличивать энтропию.

"Бета-версия клиентского C++ API Pgfe к PostgreSQL"
Отправлено Аноним , 26-Май-18 20:09 
> #include "dmitigr/pgfe/connection_options.hpp"
> #include "dmitigr/pgfe/connection_options.cxx"
> #include "dmitigr/pgfe/internal/debug.hxx"

а в чём разница между hpp, cxx и hxx?