Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Вопрос о технологии "клиент-сервер" (+)
|
|||
|---|---|---|---|
|
#18+
Estets KezyaTemplar сказал, что есть специализированные инструменты, но пока ничего про них не написал. Но очень хотелось бы почитать. Т.к. написал он в этой теме, то и спросил про инструмент я здесь же. ... У меня VC++, учить Delphi нет желания. Вот насчет отсутствия коммитов и отложенных обновлений стоит подумать. Если есть желание изучать VC++ то конечно Delphi не более заточено под работу с БД чем VC++. А вот если есть желание написать программу работающую с БД, то я бы воспользовался советом Templar и искал языки изначально расчитанные на работу с БД. А спросить возможности можно на соседних форумах. Могу, конечно, ошибаться. Но вот Delphi разве расчитан изначально на работу с БД? Именно сам язык, без дополнительных возможностей? VC++ я уже давно изучаю, поэтому менять язык и среду разработки - уже как-то поздно :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2005, 18:50 |
|
||
|
Вопрос о технологии "клиент-сервер" (+)
|
|||
|---|---|---|---|
|
#18+
Estets KezyaВот насчет отсутствия коммитов и отложенных обновлений стоит подумать. Вот мое мнение, прямая работа с таблицами допустима только если создается телефонный справочник работающий в однопользовательском режиме. Любая более менее сложная задача включает в себя отношения мастер-детейл, кучу расчетных ХП, и в этом случае транзакционная целостность жизненно необходима. это я имел в виду под нормальной работоспособностью. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2005, 18:54 |
|
||
|
Вопрос о технологии "клиент-сервер" (+)
|
|||
|---|---|---|---|
|
#18+
Kezya Могу, конечно, ошибаться. Но вот Delphi разве расчитан изначально на работу с БД? Именно сам язык, без дополнительных возможностей? Я тоже конечно могу ошибаться но ноги у Delphi растут из Паскаля который ничего не знал о БД ;). Практически все продукты разработки имеют компоненты или модули работы с БД, но продукты расчитанные на работу с БД практически невозможно без БД использовать, начиная с Clipper, FoxPro, Clarion, Paradox, PowerBuilder, Access. Сам я работаю на PowerBuilder и мне иногда сложно понять всех проблем возникающих на других средствах разработки. На PB все это выглядит так :) Положил на окно компоненту "Грид" основанную на SQL запросе передал ей коннект к бд По кнопочке с единственной коммандой Retrieve() получил набор строк, которые пользователь может изменять, удалять, добавлять новые. По кнопочке с единственной коммандой Update() записал все изменения в базу. Приложение само разберется какие строки обновлять, какие удалять. Хотите мастер-детейл положил еше один "Грид" настроил связь между главным и подчиненным списком через ключевое поле. И приложение опять само сохранит Мастер, получит из базы значение Identity поля подставит его в Детейл, сохранит Детейл. Закроет или откатит транзакции при необходимости. Ну вообщем если не все так красиво, но по крайней мере близко к этому. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2005, 19:13 |
|
||
|
Вопрос о технологии "клиент-сервер" (+)
|
|||
|---|---|---|---|
|
#18+
Estets На PB все это выглядит так :) Положил на окно компоненту "Грид" основанную на SQL запросе передал ей коннект к бд По кнопочке с единственной коммандой Retrieve() получил набор строк, которые пользователь может изменять, удалять, добавлять новые. По кнопочке с единственной коммандой Update() записал все изменения в базу. Приложение само разберется какие строки обновлять, какие удалять. Хотите мастер-детейл положил еше один "Грид" настроил связь между главным и подчиненным списком через ключевое поле. И приложение опять само сохранит Мастер, получит из базы значение Identity поля подставит его в Детейл, сохранит Детейл. Закроет или откатит транзакции при необходимости. Ну вообщем если не все так красиво, но по крайней мере близко к этому. Теперь понятно, что Вы имели в виду. В VC++ тоже есть гриды :) Начиная от стандартных (имею в виду MS гриды), и заканчивая сторонними инструментами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2005, 19:56 |
|
||
|
Вопрос о технологии "клиент-сервер" (+)
|
|||
|---|---|---|---|
|
#18+
KezyaТеперь понятно, что Вы имели в виду. В VC++ тоже есть гриды :) Начиная от стандартных (имею в виду MS гриды), и заканчивая сторонними инструментами. Только в PowerBuilder объект DataWindow который может быть гридом, редактором, отчетом позволяет настраивать все что относится к связи между визуальным отображением данных (поля, колонки, заголовки, маски) и тем как все это живет в БД, вплоть до какую хранимую процедуру надо вызвать при удалении строчки из "грида". Именно настраивать а не писать код. Я не спорю что все можно написать самому, но не стоит забывать что "время-деньги" ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2005, 20:08 |
|
||
|
Вопрос о технологии "клиент-сервер" (+)
|
|||
|---|---|---|---|
|
#18+
Estets KezyaТеперь понятно, что Вы имели в виду. В VC++ тоже есть гриды :) Начиная от стандартных (имею в виду MS гриды), и заканчивая сторонними инструментами. Только в PowerBuilder объект DataWindow который может быть гридом, редактором, отчетом позволяет настраивать все что относится к связи между визуальным отображением данных (поля, колонки, заголовки, маски) и тем как все это живет в БД, вплоть до какую хранимую процедуру надо вызвать при удалении строчки из "грида". Именно настраивать а не писать код. Я не спорю что все можно написать самому, но не стоит забывать что "время-деньги" ;) А вот это действительно здорово и интересно. Попробую найти нечто подобное и для vc++ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.07.2005, 21:02 |
|
||
|
Вопрос о технологии "клиент-сервер" (+)
|
|||
|---|---|---|---|
|
#18+
авторМогу, конечно, ошибаться. Но вот Delphi разве расчитан изначально на работу с БД? Именно сам язык, без дополнительных возможностей? Дабы не искать языков, которые якобы рассчитаны на работу с БД, а потом устраивать их сравнение с теми, которые якобы не рассчитаны , позволю себе сказать вот чего: это детский сад!!!! Нет языков, сильно или слабо рассчитанных на работу с БД. С БД нужно работать внутре БД, или средствами самой БД: хранимые процедуры или просто запросы, которые выполняются в БД и являются тиак сказать языком БД для работы с данными. Откуда бы их не вызывали - они одинаково работают. Это раз! А вот Два: Системы можно разделить по удобству показа информации из БД (заметьте, не работы с БД!). Тут вообще говорить не об чем - кому как удобно. Визуальные системы конечно намного проще и удобнее. Влияет еще язык системы - кто любит с++ и ненавидит pascal, тому не стоит предлагать Дельфи :) И наоборот. Ну и Три: где бы ни писать, писать нужно грамотно. :) -- Tygra's -- ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2005, 10:19 |
|
||
|
Вопрос о технологии "клиент-сервер" (+)
|
|||
|---|---|---|---|
|
#18+
Языки, ориентированные на работу с данными плохо справляются с остальными работами (графика, работа с оборудованием, создание DLL, COM, CGI) При этом универсальные IDE уже давно научились хорошо работать с данными. Поэтому, ИМХО, специализированные срЕды будут вымирать. В пользу более универсальных. Истерические выпады в сторону Паскаля - от элементарного дремучего невежества. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2005, 10:55 |
|
||
|
Вопрос о технологии "клиент-сервер" (+)
|
|||
|---|---|---|---|
|
#18+
Есть 4 вариант Создаешь копию документа на сервере с пометкой редактируется (на тех же таблицах) и работаешь с ней. Потом одной транзакцией отменяешь старый и проводишь новый. Автоматически поддерживается версионность и история изменений. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2005, 12:38 |
|
||
|
Вопрос о технологии "клиент-сервер" (+)
|
|||
|---|---|---|---|
|
#18+
мдя читаешь и волосы дабов встают... массивы и всякое х... не знаю как там в vc++ но в делфях есть компонент memtable или memdata так вот как у нас в проге реализовано детище документ при открытии сущ-го ... 3 квери тянут данные одна шапку -> которая ни в каких структурах не храниться а данные сразу присваиваються нужнам компонентам на форме вторая позиционку --> которая сразу загоняеться в мемтаблу ну и треться доп историю и то по необходимости если юзверь перешол на соот-ю закладку... по поводу блокировок .. тот тут два варианта 1 не блокировать строчку в таблице шипки ... тоесть дать двум юзверям открыть один и тот же документ и второй блокировать запись в таблице шапки не давая таким образом двум юзверям открыть один и тот же документ. ну и обновления если док новый то данне закидываються на сервер и хранимкой пишут что угодно куда угодно если старый то просто апдейтяться ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2005, 13:31 |
|
||
|
Вопрос о технологии "клиент-сервер" (+)
|
|||
|---|---|---|---|
|
#18+
tygraНет языков, сильно или слабо рассчитанных на работу с БД. По поводу языков, абсолютно согласен. Я например говорил о продуктах. А продукты включают в себя например нативные и универсальные интерфейсы к БД, средства разработки структуры БД, ну и конечно средства отображения "визуализации" данных. Это конечно мое ИМХО, но недостаточное внимание компании Borland к этим компонентам, не позволило дельфям занять свою нишу на рынке разработки всяких информационных систем. Даже в России где позиция Borland была более сильной чем во всем мире, огромное количество клиентских приложений пишутся на С. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2005, 13:54 |
|
||
|
Вопрос о технологии "клиент-сервер" (+)
|
|||
|---|---|---|---|
|
#18+
LSVИстерические выпады в сторону Паскаля - от элементарного дремучего невежества. Здесь выпадов в сторону Паскаля не было, не так ли? Об удобстве той или иной среды разработки говорить бессмысленно, tygra абсолютно прав. Каждый сам решит, что ему больше подходит для решения той или иной задачи. То, что я документ представлял в памяти - ну да, не самый удобный вариант, но дело в том, что структура документа не очень проста, и в виде связанных массивов в памяти мне это было очень удобно реализовать :) Может быть, я не совсем понятно описал задачу: пользователь открывает документ у себя на компьютере, редактирует его и потом либо сохраняет либо отменяет редактирование. Как его представить на компьютере - это уже дело десятое (в памяти, на рекордсетах и т.д.) Вот варианты, которые предложили: 1. Все изменения в документе фиксируются "на лету". Вероятно, для этого придется открывать транзакцию на сервере для того, чтобы можно было сделать откат (если пользователь выберет "не сохранять документ"). Не нужны ни массивы, ни списки ни рекордсеты. 2. На компьтер сохраняется копия документа (как эту копию представить на локальном компьютере, уже можно придумать). Документ редактируется и потом уже сохраняется в базе. Тоже ХП и транзакции, но транзакции уже не для отката сохранения, а для поддержания целостности. 3. Делать копию документа на тех же таблицах. Т.к. история изменений и версионность не нужна, то отличие от первого варианта я не понимаю :( Вот я что хотел узнать Большое всем спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2005, 14:07 |
|
||
|
Вопрос о технологии "клиент-сервер" (+)
|
|||
|---|---|---|---|
|
#18+
авторЭто конечно мое ИМХО, но недостаточное внимание компании Borland к этим компонентам, не позволило дельфям занять свою нишу на рынке разработки всяких информационных систем. Даже в России где позиция Borland была более сильной чем во всем мире, огромное количество клиентских приложений пишутся на С. ??? Куда еще то внимательнее? Вроде бы Дельфи предоставляет сделать все, что только душе угодно и мозгам под силу :) И при чем тут информационные системы? А про С не будем - я о том и писал, что большая часть сишников до сих пор считают, что паскаль ведет с ними войну, и потому не перейдут ни на что другое, особенно на Дельфи(потому что паскаль) или СиБилдер (потому что Борланд => это Дельфи и т.д.). Им конечно неудобно.... но пишут :) -- Tygra's -- ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2005, 16:01 |
|
||
|
Вопрос о технологии "клиент-сервер" (+)
|
|||
|---|---|---|---|
|
#18+
KezyaКлиент у меня на VC++, база MS SQL Server, доступ через ADO. Какие инструменты именно Вы имеете в виду? :( Инструменты, позволяющие избежать неоправданной траты времени при использования VC для решения подобных задач. Навскидку, то что вы описали в заголовке решается одним из перечисленных инструментов примерно за 1 день. Если требования позволяют, переходите на .NET. Порядок трудозатрат выйдет такой же. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2005, 16:33 |
|
||
|
Вопрос о технологии "клиент-сервер" (+)
|
|||
|---|---|---|---|
|
#18+
tygra авторЭто конечно мое ИМХО, но недостаточное внимание компании Borland к этим компонентам, не позволило дельфям занять свою нишу на рынке разработки всяких информационных систем. Даже в России где позиция Borland была более сильной чем во всем мире, огромное количество клиентских приложений пишутся на С. ??? Куда еще то внимательнее? Вроде бы Дельфи предоставляет сделать все, что только душе угодно и мозгам под силу :) Я имел ввиду, не то как это сейчас, а то как все это начиналось. Когда в конторе встал вопрос с переходом с Парадокса на более продвинутую систему смотрели Дельфи 2.0 и PowerBuilder 4.0 написали простенькую програмку по работе с SQL, выбрали PowerBuilder за скорость разработки. А по поводу ошибок Борланд на мой взгляд это БДЕ и весьма посредственный, особенно в ранних, версиях генератор отчетов. tygraИ при чем тут информационные системы? Может быть я и ошибаюсь но 70% рынка прикладного ПО в количественном и 90% в стоймостном выражении это всевозможные информационные, бухгалтерские, учетные системы работающие с SQL серверами. Чего небыло 10 лет назад. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2005, 09:34 |
|
||
|
Вопрос о технологии "клиент-сервер" (+)
|
|||
|---|---|---|---|
|
#18+
Нуууу, когда начиналось.... Мне и тогда Дельфи нравилась. Да и сейчас уж в России она занимает очень большую часть рынка. По поводу информационных систем - сорри, проглядел слово " разработки информа...". Но все-таки ниша огромна. В России. За рубежом - нет. Не из-за самой Дельфи, в силу менталитета зарубежа: там сто лет назад писали на с++ и vb, так и пишут, ведь чтобы перейти на что-то новое нужно мало того, что купить это новое за неслабые деньги, да еще программеров обучить, потому и корячатся :). У нас такой проблемы нет - все стоит по 70 руб и программеров навалом. -- Tygra's -- ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2005, 10:48 |
|
||
|
Вопрос о технологии "клиент-сервер" (+)
|
|||
|---|---|---|---|
|
#18+
tygraНо все-таки ниша огромна. В России. За рубежом - нет. Не из-за самой Дельфи, в силу менталитета зарубежа: там сто лет назад писали на с++ и vb, так и пишут, ведь чтобы перейти на что-то новое нужно мало того, что купить это новое за неслабые деньги, да еще программеров обучить, потому и корячатся :). Скорее наш менталитет ;) Спасибо советскому образованию, если бы изучение в институтах основывалось не на паскале а на С++, то и ситуация могла быть координально противоположной. Плюс активная политика представительства Борланда по крайней мере в Москве в середине 90-х годов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2005, 13:19 |
|
||
|
Вопрос о технологии "клиент-сервер" (+)
|
|||
|---|---|---|---|
|
#18+
чтобы вы не спорили скажу что VC2005 по набору компонент работы с данными не уступает дельфи -даже мягко сказано. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2005, 21:13 |
|
||
|
Вопрос о технологии "клиент-сервер" (+)
|
|||
|---|---|---|---|
|
#18+
Lepsikчтобы вы не спорили скажу что VC2005 по набору компонент работы с данными не уступает дельфи -даже мягко сказано. Тут надо корректно сравнивать. Стандартный набор компонентов у Делфи, увы местами очень даже слаб: плохие репортеры, грид, доступ к данным. Однако существуют мощные и недорогие (и даже фришные) сторонние компоненты. Так что мы сравниваем ? Стандартные наборы ? Тут Делфи вполне может проиграть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2005, 10:27 |
|
||
|
Вопрос о технологии "клиент-сервер" (+)
|
|||
|---|---|---|---|
|
#18+
LSVПри этом универсальные IDE уже давно научились хорошо работать с данными. Поэтому, ИМХО, специализированные срЕды будут вымирать. В пользу более универсальных. LSVТут надо корректно сравнивать. Стандартный набор компонентов у Делфи, увы местами очень даже слаб: плохие репортеры, грид, доступ к данным. Как говорится почему на форуме Access нет вопросов типа как подключать отчеты на Crystal Reports или Fast Reports (точнее мало и ответы на них обычно "Нафига?")? Именно по тому, что стандартных средств Access хватает для полного решения небольших задач. По этому пока специализированные продукты держат свои позиции. И есть подозрение будет это продолжаться достаточно долго. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2005, 11:15 |
|
||
|
Вопрос о технологии "клиент-сервер" (+)
|
|||
|---|---|---|---|
|
#18+
Именно по тому, что стандартных средств Access хватает для полного решения небольших задачСогласен. Однако хочу сделать акцент на словосочетании "небольших задач" . Очень верно подмечено. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2005, 15:38 |
|
||
|
Вопрос о технологии "клиент-сервер" (+)
|
|||
|---|---|---|---|
|
#18+
> Kezya. 1. Создавать похожую структуру таблиц, связей и т.д., но в памяти клиента-компьютера, ... Данный вариант изящно реализуется средствами DataSet технологии .Net. Локальный фрагмент базы данных в памяти. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2005, 10:18 |
|
||
|
Вопрос о технологии "клиент-сервер" (+)
|
|||
|---|---|---|---|
|
#18+
Прочитал весь топик. Уважаемые мне кажестя все уже забыли про суть вопроса. Вопрос касался, на мой взгляд, архитектуры. Умные люди говорят, что реализаций может быть три [Фаулер]: 1. Транзакционная модель 2. Объектная модель 3. "Модуль таблицы" (не помню как пишется по англ. на русский иногда переводят так) В принципе перечислены были все, только понятия смешивались #3 это как раз та реализация которая заложена в Дельфях и VS.NET - а именно, возможность работы с объектами типа DataSet или Recordset, обычно ее сочетают с транзакционной моделью (#1) - поскольку логику вносят по большей части в транзакции или хран процедуры. Изначально человек как раз спрашивал что лучше... такое впечатление что в данный момент он реализовал нечто похожее на объектную модель (#2). Тут вот все в резких выражениях высказывались против такой модели, когда логика живет в промежуточном слое, в виде объектов (списков и т.д.). Дескать проще все сложить в Datasetы и хран процедуры. Спорить не буду все зависит от сложности задачи и вариантов развития. Однако, одно замечание в защиту: Язык программирования любой СУБД это процедурный язык. Проектируя приложение по схеме "Наделаю табличек - накликаю формочки с гридами - все заработает" вы сами отказываетесь от возможностией представляемых объектно ориентированными языками (будь то дельфи или VS) представьте себе - ведь класс "Документ" можно отнаследовать от другого, или представить его в виде композиции классов... возможности неисчерпаемы, но вы их похороните в хранимых процедурах с множеством операторов IF, CASE и тд, а тот кто будет ковырять ваше программство после вас, станет неврастеником, разбирая все эти ветки условных операторов... А язык это вообще детали - главное программировать не "На языке" а "С использованием языка" (конечно я про объектно ориентированные :)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2005, 10:33 |
|
||
|
Вопрос о технологии "клиент-сервер" (+)
|
|||
|---|---|---|---|
|
#18+
А еще забыл Фаулер "Архитектура корпоративных систем" - наиболее часто цитируемая книжка, там все есть. Включая и паттерны сохранения в бд. "Шлюзы" и "Мапперы" там всякие... :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2005, 12:23 |
|
||
|
Вопрос о технологии "клиент-сервер" (+)
|
|||
|---|---|---|---|
|
#18+
jocko3. "Модуль таблицы" (не помню как пишется по англ. на русский иногда переводят так) Боюсь, я не понимаю этих слов. Можно объяснение или ссылку, что имеется в виду? jockoЯзык программирования любой СУБД это процедурный язык. Проектируя приложение по схеме "Наделаю табличек - накликаю формочки с гридами - все заработает" вы сами отказываетесь от возможностией представляемых объектно ориентированными языками (будь то дельфи или VS) представьте себе - ведь класс "Документ" можно отнаследовать от другого, или представить его в виде композиции классов... возможности неисчерпаемы, но вы их похороните в хранимых процедурах с множеством операторов IF, CASE и тд, а тот кто будет ковырять ваше программство после вас, станет неврастеником, разбирая все эти ветки условных операторов... Боюсь, это типичное высказывание человека, который читал рекламные высказывания в книжках и не особо думал о сути. "Объектно-ориентированных языков", если понимать слова в их прямом значении, не существует; существуют языки, поддерживающие объектно-ориентированный синтаксис. Мне в свое время очень повезло - когда я взахлеб рассказал одному старому программисту про ООП, он сказал мне: "Так посмотри код нашей системы - она так и построена". Я посмотрел, и увидел великолепную реализацию идей "ООП" на классическом Си. ООП здесь взято в кавычки, поскольку как ни странно, в нем практически нет собственных идей - это скорее удачно собранный набор принципов, придуманных до того. Честно говоря, лень предметно разбирать выдвинутые Вами лозунги - поскольку Вы их скопировали. Просто возьмите хорошие исходники и посмотрите. Впрочем, если Вы не хотите идти этим путем - программируйте хранимки на java и используйте все преимущества ООП-синтаксиса. Ни от чего отказываться совершенно не обязательно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2005, 13:01 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=33186847&tid=1545699]: |
0ms |
get settings: |
5ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
47ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
1ms |
| others: | 222ms |
| total: | 337ms |

| 0 / 0 |
