Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Всем: Какие компоненты хотелось бы видеть в KOL?


Страницы:   1 2

Psychedelic ©   (2007-01-11 16:05:00) 

Вопрос ко всем. Какие компоненты хотелось бы видеть в KOL?
Кому чего не хватает?


heilong   (2007-01-30 09:02:00) [1]

точно 6.5.


Vladimir Kladov   (2007-01-29 17:12:00) [2]

6.5 ?


heilong   (2007-01-29 08:45:00) [3]

Если я не работаю, это не значит, что я не знаю.
   MS-SQL работает по протоколу TDS(Tabular Data Stream) со своими клиентами. Microsoft предоставляет две библиотеки реализующие этот протокол - ODBC драйвер и OLEDB Provider, ранее для 5 версии была эта пресловутая dll-ка(db-lib) и она даже работает с 7 и 2000, но с большими ограничениями, типа VARCHAR не более 255 символов и нет поддержки многих новых типов. Не верите мне зрите в Инет.
И еще - мне ADO тоже не нравиться по тем же причинам, однако микрософт все равно рекоммендует.


Vladimir Kladov   (2007-01-27 09:14:00) [4]

Вы с ним не работаете. Чего тогда говорите. Где эта dll-ка для ms sql, которая и есть единственно нужный инструмент.

На голой NT 4 у вас не получится работать через ADO, пока вы не установите MDAC. Для работы через ODBC ничего не нужно, драйвер ODBC уже в системе есть.

Я знаю это потому, что делал АСУП для секретки. ADO не сертифицирована, требование - делать через ODBC, на клиентской машине с NT4 не должно быть установлено НИ-ЧЕ-ГО, даже Explorer 3.0 не разрешается. И тем более MDAC, которой не поставится без IE 4.


heilong   (2007-01-26 18:06:00) [5]

Хорошо, давайте по-другому. Клиент SQL сервера в минимальном виде одна длл-ка. В случае использования ODBC это еще одна длл-ка работающая через предыдущую, есть для них и OLEDB Provider там цепочка еще длинее, но главное что есть всего один реальный драйвер(клиент) нужный для работы, все остальное надстройки для обеспечения универсальности - так принято для всех SQL-серверов. Всех кроме MS-SQL(берем 2000), у него клиент написан только в виде COM-объектов OLEDB и параллельно существует ODBC драйвер, второй работает быстрее но с некоторыми ограничениями(подробности ищите сами, я с ним не работаю). Разработчик (мелкософт) рекомендует работать через ADO.


ANTPro   (2007-01-26 16:58:00) [6]

> [29] homm ©   (26.01.07 15:24)
> сам не с ткм не другим мелов не имел

: )


homm   (2007-01-26 15:24:00) [7]

> ADO работает через ODBC

сам не с ткм не другим мелов не имел, но неоднократно слышал о простоте использования и кривости, тормознутости ADO, но что-бы так!!! :)


ANTPro   (2007-01-26 15:17:00) [8]

> [24] AndreyRus   (25.01.07 22:42)
> ADO(интегрировано в OS)

ADO работает через ODBC


Vladimir Kladov   (2007-01-26 14:58:00) [9]

Ну и что же является клиентом api для MS SQL ?
Когда я стал работать без ADO, напрямую через ODBC-драйвер, все стало летать по сравнению с ADO. MS SQL 6.5.


heilong   (2007-01-26 08:21:00) [10]

Прямой доступ - это работа непосредственно с API клиента SQL сервера, или даже интеграция клиента в код приложения(возможно в случае sqlite, mysql).

И кстати XXSocket исп. синронные сокеты с событийностью.


Dimaxx   (2007-01-26 01:38:00) [11]


> неужто 2 Мбайта, ай-я-яй. Я по нужде за этот месяц на диалапе
> уже 202 Мб всякой фигни закачал... не, еще 2 метра мне никак
> не потянуть

У мну программулина весит всего 100кб. Зачем мне к ней качать 2 метра, когда я кинул 200кб либу к ней и получил полнофункциональное приложение. А вдруг у клиента МДАК не последний, да еще чего-то не хватает? Тянуть? Нафик! Все есть вместе с приложением.


AndreyRus   (2007-01-25 22:42:00) [12]

IMHO. Самая рулезная связка - ADO(интегрировано в OS) + MS SQL Server (есть даже для WinCE). Быстро, масштабируемо, надежно!


Vladimir Kladov   (2007-01-25 20:30:00) [13]

прямой доступ, это конечно хорошо, но не для всех БД он есть (что такое прямой доступ к ms sql?), и потом, для каждой базы свой двиг - перебор. odbc - это стандарт (неужто 2 Мбайта, ай-я-яй. Я по нужде за этот месяц на диалапе уже 202 Мб всякой фигни закачал... не, еще 2 метра мне никак не потянуть :) )


heilong   (2007-01-25 16:40:00) [14]

to Vladimir Kladov
для mysql нормальный ODBC драйвер есть называется Mysql Connector/ODBC2Мб размер, от разработчиков MySQL, просто надо на сайте порыться - его нет в дистрибутиве.
Проблема с ODBC касается всего множества драйверов, которые как правило предлагают ограниченный функционал, и нередко плохо справляются с обработкой ошибок. И опять же это дополнительный (несомненно универсальный) но все таки малонадежный код.

Может это не в тему, но у меня приоритеты расставлены так:
- надежность (меньше кода меньше ошибок)
- простота (сложный код источник ошибок)
- функционал (не нарушая вышеизложенного).

Поэтому рулит КОЛ и прямой доступ к БД (без посредников).

Опять же не в тему про построение модуля по работе с сокетами, если брать в качестве примера сам КОЛ, пишется один класс скажем TBlockSocket и все, расписываются методы и информация с какими протоколами их применять. Собственно я так и сделал, создавай класс и сам решай - клиент, сервер TCP, UDP, RAW. Получается порядка 30 публичных методов в классе - не запутаешься. Вот это и есть мое виденье простоты.

У вас устаревшая информация, посмотрите например здесь http://ru.wikipedia.org/wiki/Qt, я уже в исходниках ковырялся (друг меня все старается пересадить на QT VС++ ) но из-за слабого знания С++ и принципа построения визуальных контролов в QT, не разобрался.


Vladimir Kladov   (2007-01-25 15:41:00) [15]

первый раз слышу, что нужны какие-то примочки для работы с одбс, кроме самих драйверов одбс. Вот для АДО - вы работать вряд ли сможете, пока последний мдак не всунете.

А вот с одбс ничего не надо было ставить, того что есть в поставке ХП например хватает, чтобы работать с любым mssql - от 6.5 и до XP/2003. mysql же бесплатный вроде, у него, что нет odbc-драйверов?

Кто б вам еще исходники qt дал для переделки... Это коммерческая либа, совсем не бесплатная.


heilong   (2007-01-25 13:19:00) [16]

Поддерживаю Dimaxx ©, по опыту могу сказать что это же касается и interbase, трудно найти толковый бесплатный ODBC-драйвер.

Для работы напрямую один раз переделать под KOL можно (из бесплатных например http://libsql.sourceforge.net/), сославшись на источник, но для того чтобы вести библиотеку по работе с mysql сервером (или любым другим ) нужно постоянно следить за изменениями и вносить их, потому как все сервера развиваются. А кто этим будет заниматься?

to Vladimir Kladov:
Я не говорю что асихронные сокеты работают хуже синхронных, есть задачи которые можно реализовать только на асинхронных из соображений производительности, просто лично мне удобней синхронные(и судя по популярности synapse не только мне и опять же SSL,SSH уже есть).

Насчет qt, я не думаю что есть смысл копировать ф-циональность лейеров один ко одному, просто посмотреть исходники и поиграться, поискать как будет удобней. Единственная сложность что возможные изменения коснуться всех визуальных контролов, а это может потянуть за собой целый паровоз проблем.


Dimaxx   (2007-01-25 01:07:00) [17]

Владимир, с mysql через ODBC работать имея стандартные средства винды нельзя (ну разве что в самом примитивном виде). Нужно ставить дополнительные примочки, чтоб достучаться и юзать по-человечески. Есть такая приблуда (названия не помню) пакет MySQL ODBC. Он ставит всякую всячину для полноценной работы. Но меня этот вариант не устраивал по той же причине, как и любой софт, написанный с использованием .NET. Получалось, что юзеру к софтине весом 200кб надо было качать пакет весом 24 Мб. Увольте...

У мну есть либа для работы с mysql напрямую. До нее пытался работать через odbc. Плюнул на это гиблое дело через пару часов. Порылся в инете и скачал. Пашет "на ура" и никаких тебе привязок к разным компонентам. Открыл базу, выбрал таблицу, отправил sql-запрос, получил результат, закрыл базу. Работаем с данными... И все.

Хотя работа с БД довольна специфична и лепить компонент или модуль для работы с БД как обязаловку нет смысла.


Vladimir Kladov   (2007-01-24 20:43:00) [18]

1. Все правильные БД обязаны работать через ODBC. В том числе mssql, mysql, oracle. Соотв-но есть KOLODBC. Порт для VCL я использую на работе, летает - по сравнению с ADO.

2, 3 - я не очень в курсе. Мне вполне хватило для NetPlay в эмуляторе и чата в нем XXSockets (которые я сделал из XSockets, даже не особенно вникая, просто поправив явные огрехи). Для локальной сетки - нормально, 50 сообщений от сервера клиентам (от 1К до 4К) в сек. гарантированно шло, мне хватило, чтобы отображать на 8 клиентах анимацию 50 кадров/сек практически без тормозов, и еще чататься при этом.

4 qt мне не нравится только тем, что она заточена под классы С++, а значит, нужен специальный враппер (немаленький), чтобы заюзать его из паскаля.


heilong   (2007-01-24 17:03:00) [19]

Очень часто приходиться адаптировать код под KOL из-за того что ооооооочень многие невизуальные объекты реализуют в виде компонентов. Мне нравиться простой код, ясно читаемый, легко понимаемый.
Короче хватит романтики, конкретно:

1. Нет простых библиотек для работы с БД (ibase, mysql, oracle, mssql, sqllite). Простые значит с возможностью выполнять 'select, insert, update' и возвращать значения полей в виде строки. Конечно простыми в смысле написания их не назовешь каждая потянет на 1000-1500 строк кода. Но ведь сделал же для себя, правда не все.
На счет необходимости: мне по работе (металлург. завод) очень часто приходится передавать данные из разных БД. Опять же если брать myqsl,sqllite для маленьких приложений с исп. БД незаменимая вещь даже в каком-то смысле замена STL :)))).

2. Не знаю как вам но мне асинхронные сокеты не нравяться жуть, очень неудобно програмить, а из синхронных только synapse(openssl, cryptlib), для себя я конечно его переработал но сколько же можно паровоз библиотек таскать с собой(SSH рулит).

3. Нет толковой библиотеки по послед. портам - событийность здесь уже явный избыток (пописали бы вы обмен данными по протоколу Siemens 3964R).

4. Опять же лейеры из qt которые так не нравяться господину Кладову.


GMax   (2007-01-20 21:43:00) [20]

ну отстой или не отстой, а управлять десктопом только так и получается


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо