powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Вопрос по проектированию
29 сообщений из 29, показаны все 2 страниц
Вопрос по проектированию
    #33607261
Giker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если сказано: "Бизнеслогика приложения должна быть реализована на сервере", то я должен в приложении только выполнять хранимые процедуры реализованные на сервере и анализировать эксепшены которые выдает мне сервер, как результат их выполнения, и уже по этим эксепшенам выдовать пользователю отчет о работе с БД, и не имею права в приложении проверять что, например, поле обязательное к заполнению заполнено не было, или имею права?
НО если я имею права, тогда бизнес логика организуеться в приложении а не на сервере.
Запутался обьясните как правильнее.
...
Рейтинг: 0 / 0
Вопрос по проектированию
    #33607311
Серега
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообще то проверка данных перед записью и бизнес логика - это не синонимы.
...
Рейтинг: 0 / 0
Вопрос по проектированию
    #33607352
Станислав C.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GikerЕсли сказано: "Бизнеслогика приложения должна быть реализована на сервере", то я должен в приложении только выполнять хранимые процедуры реализованные на сервере и анализировать эксепшены которые выдает мне сервер, как результат их выполнения, и уже по этим эксепшенам выдовать пользователю отчет о работе с БД, и не имею права в приложении проверять что, например, поле обязательное к заполнению заполнено не было, или имею права?
НО если я имею права, тогда бизнес логика организуеться в приложении а не на сервере.
Запутался обьясните как правильнее.
Поле, обязательное к заполнению, в структуре таблицы БД определяется с условием "NOT NULL"; правильность вставки/удаления/модификации контролируется триггерами автоматически (триггеры хранятся на сервере).

Заполнение данных в таблице также производится в хранимых процедурах, которые на клиенте только вызываются; данные передаются в процедуру в качестве параметров...
...
Рейтинг: 0 / 0
Вопрос по проектированию
    #33607419
Фотография Shtock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
STFF1
STFF2
STFF3
...
Рейтинг: 0 / 0
Вопрос по проектированию
    #33607473
_hike_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Из "Бизнеслогика приложения должна быть реализована на сервере"
совсем не обязательно следует что
она должна быть реализована в БД.
...
Рейтинг: 0 / 0
Вопрос по проектированию
    #33607558
проц
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Giker"Бизнеслогика приложения должна быть реализована на сервере",
Вся Бизнеслогика не может быть реализована на ХП, какая-то часть все равно останется в приложениях. другое дело что само приложение может выполняться на
сервере БД
сервере приложений
клиенте
...
Рейтинг: 0 / 0
Вопрос по проектированию
    #33607646
Giker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Допустим что есть две ситуации:
1. Из таблицы удаляються данные являющиеся родительским ключом к данным в другой таблице. Понятно что сервер выдаст ошибку, которую нужно обработать на клиенте, и выдать пользователю сообщение об ошибке.
2. Если происходит добавление в БД и есть поле NOT NULL, то есть несколько вариантов:
А. Проверяем на клиенте что бы данные были введены
Б. Проверяем На сервере по условию NOT NULL И если данных нет сервер выдаст ошибку, которую нужно обработать на клиенте, и выдать пользователю сообщение об ошибке.
В. А и Б
Как правильней?
...
Рейтинг: 0 / 0
Вопрос по проектированию
    #33607714
_hike_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИМХО 2А
Т.к. требует минимального программирования на клиенте но хорошо разгружает и сеть и сервер.
...
Рейтинг: 0 / 0
Вопрос по проектированию
    #33607778
Серега
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_hike_ИМХО 2А
Т.к. требует минимального программирования на клиенте но хорошо разгружает и сеть и сервер.
И просаживает сервер, если с ним работает не твой клиент.

авторКак правильней?
2В ИМХО
...
Рейтинг: 0 / 0
Вопрос по проектированию
    #33608121
_hike_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Серега
а я не говорил что нужно констрейнты или еще какие проверки на сервере отключать ...
...
Рейтинг: 0 / 0
Вопрос по проектированию
    #33608170
Серега
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_hike_а я не говорил что нужно констрейнты или еще какие проверки на сервере отключать ...
Ну дак тогда у тебя должно быть 2В, а ты указал 2А, вот я и решил. Сори.
...
Рейтинг: 0 / 0
Вопрос по проектированию
    #33608213
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gikerи не имею права в приложении проверять что, например, поле обязательное к заполнению заполнено не было, или имею права?
Любую здравую мысль можно довести до абсурда, и процитированное - пример его.

Подход с переносом всех проверок в СУБД в принципе имеет право на жизнь, но это пожалуй все хорошее, что о нем можно сказать. Можно утверждать, что при такой реализации невозможно сделать хорошего клиента, максимум "приемлимого". Почему: потому что логика проверки и обработки ошибок ввода существенно зависит от клиента. Например, представьте себе, что данные вводятся с помощью wizard-а - в этом случае верифицировать надо каждую очередную страницу поотдельности, в то время как вызывать ХП следовало бы по финальному OK. То есть оказывается, что серверная логика должна знать о деталях реализации клиента и учитывать их в своей реализации - это нонсенс, извращение.

Мой подход таков: большинство проверок, являясь тривиальными, должны быть реализованы и на сервере, и на клиенте. Клиент при этом обеспечивает максимально удобный интерфейс пользователя, невозможный при проверках на сервере, а серверные проверки защищают в основном от ошибок программиста - то есть ошибок в ХП и в клиенте. Сложные проверки, для реализации которых требуются изрядные усилия, делаются только на сервере.
...
Рейтинг: 0 / 0
Вопрос по проектированию
    #33608315
ModelR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Имеете право и должны проверять - не все, но многое. Основная проблема - меняющаяся логика проверок. Ну так настройку проверяемой формы нужно также хранить на сервере.
...
Рейтинг: 0 / 0
Вопрос по проектированию
    #33608432
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Зависит от ситуации. Разумеется, если условия на клиенте можно скопировать с constraint-ов - нужно так делать. Но например, довольно стандартная ситуация - набор обязательных полей зависит от статуса документа. На сервере эти наборы проверяются в соответствующих ХП "изменить статус с А на Б" - а в клиенте может быть удобнее просто реализовать независимо.

Да, разумеется возможно реализовать некий конфигурируемый движок проверок, имеющий серверную и клиентскую части, опирающиеся на общую метаинформацию. Но.. у меня не было проектов, где это оказалось бы оптимальным решением [с моей точки зрения].
...
Рейтинг: 0 / 0
Вопрос по проектированию
    #33608463
kolobok0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Giker......Как правильней?

правильней - в зависимости от чего ? То бишь не ясны критерии. По мне - надёжность и скорость...посему...
1) проверка на клиенте (позволяет оперативно, без обращения к серваку запросить все необходимые данные у клиента, либо из ОЗУ станции и не нагружать сетку)..
2) проверка на серваке...(повышает надёжность операции в целом, самих данных, атомарность и т.д..)

сразу замечу - где проходит граница атомарности операции, это не всегда очевидно..требует опыта как мне икается...лакмуссавая бамажка в этом деле - чем просче код, тем правильней...Как нистранно правильно организованный сервак приложения (к примеру) - ведёт именно к УМЕНЬШЕНИЮ кода как на клиенте, так и на сервере...


с уважением
(круглый)
...
Рейтинг: 0 / 0
Вопрос по проектированию
    #33608687
Estets
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kolobok0Как нистранно правильно организованный сервак приложения (к примеру) - ведёт именно к УМЕНЬШЕНИЮ кода как на клиенте, так и на сервере...
... и к ВОЗРАСТАНИЮ кода на сервере приложений ;)
...
Рейтинг: 0 / 0
Вопрос по проектированию
    #33608702
kolobok0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Estets... и к ВОЗРАСТАНИЮ кода на сервере приложений ;)

увы, лично мой опыт показывает именно уменьшение(!) кода как на клиенте, так и на сервере...
только не спрашивайте меня - почему...я если честно - сам до конца не нашёл ответов...но факт на лицо (лично для меня) - если код упрощаеться, в отличие от "плоской модели" - значит сечение клиент-сервер удачное....


с уважением
(круглый)
...
Рейтинг: 0 / 0
Вопрос по проектированию
    #33608735
Estets
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerЗависит от ситуации. Разумеется, если условия на клиенте можно скопировать с constraint-ов - нужно так делать. Но например, довольно стандартная ситуация - набор обязательных полей зависит от статуса документа. На сервере эти наборы проверяются в соответствующих ХП "изменить статус с А на Б" - а в клиенте может быть удобнее просто реализовать независимо.

Да, разумеется возможно реализовать некий конфигурируемый движок проверок, имеющий серверную и клиентскую части, опирающиеся на общую метаинформацию. Но.. у меня не было проектов, где это оказалось бы оптимальным решением [с моей точки зрения].
Мы пошли другим путем метаинформация о том что в данном документе, в данном состоянии такие-то поля являются редактируемыми, а такие-то доступными, хранится на сервере а проверяется на приложении. Бизнес-проверки вынесены в процедуры. А вот constraint-ов и триггеров в базе практически нет. Только в учетном блоке где проводки, чтоб ни при каких условиях не развалить баланс.

Считаю данный подход для себя оптимальным.
...
Рейтинг: 0 / 0
Вопрос по проектированию
    #33608755
123423
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Бред какой то…

На клиенте в идеале не должно быть кода вообще!
Но люди уроды поэтому на клиенте сидит код который отлавливает ошибки ввода или осуществляет подсказки пользователю или оказывает помощь в настройки перед запросом к серверу… всё это исключительно интерфейс…

Простой пример код который запрещает ввод не цифр в поле для цифр :)

Проверка подлинности клиента правильности его желаний и из выполнения все должно быть на сервере… и не обязательно в процедурах… это как у кого тиль кодинга…
...
Рейтинг: 0 / 0
Вопрос по проектированию
    #33608872
ModelR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это да. Без людей то оно б куды как проще было бы.
...
Рейтинг: 0 / 0
Вопрос по проектированию
    #33609345
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EstetsМы пошли другим путем метаинформация о том что в данном документе, в данном состоянии такие-то поля являются редактируемыми, а такие-то доступными, хранится на сервере а проверяется на приложении.
Тут всплывает та же проблема, которую Вы описывали чуть ранее - а что если задача малость нестандартна и надо делать новую настройку. Что, если поле должно обрабатываться нестандартным компонентом-редактором. Итп.

Другой аспект, возможно, связан с технологией - в дельфе часто удобно сделать компонент, хранящий такие настройки и берущий на себя их выполнение. Это куда удобнее, нежели в какой-то программе заполнять конфигурационную таблицу на сервере. Конечно, можно научить этот компонент держать свои настройки в БД, но минусов у этого скорее больше чем плюсов.

Впрочем, в любом случае здесь надо смотреть по месту, универсально лучших решений не существует.

EstetsБизнес-проверки вынесены в процедуры.
Что есть бизнес-проверки?

Если проверки уровня "дата начала должна быть меньше даты конца" - повторюсь; я не думаю, что таким образом можно сделать хороший интерфейс с разумными трудозатратами. См. пример с визардом.

EstetsА вот constraint-ов и триггеров в базе практически нет. Только в учетном блоке где проводки, чтоб ни при каких условиях не развалить баланс.
Хм. Звучит так, словно остальную базу можно разваливать :)

EstetsСчитаю данный подход для себя оптимальным.
Безусловно, надо смотреть по ситуации. Но я крайне трепетно отношусь к качеству данных в БД, поэтому в конкретной ситуации вряд ли согласился бы.
...
Рейтинг: 0 / 0
Вопрос по проектированию
    #33611298
Estets
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer EstetsМы пошли другим путем метаинформация о том что в данном документе, в данном состоянии такие-то поля являются редактируемыми, а такие-то доступными, хранится на сервере а проверяется на приложении.
Тут всплывает та же проблема, которую Вы описывали чуть ранее - а что если задача малость нестандартна и надо делать новую настройку. Что, если поле должно обрабатываться нестандартным компонентом-редактором. Итп.

Нестандартная задача тебует нестандартного решения ;) Мы пошли по пути стандартизации, т.е. пока поле не описано в настройке документа(метаинформация) оно в базе не сушествует. Правда до того что дошла Axapta, что поле удаляется физически если его удалить из насторйки мы не дошли.
softwarer
Другой аспект, возможно, связан с технологией - в дельфе часто удобно сделать компонент, хранящий такие настройки и берущий на себя их выполнение. Это куда удобнее, нежели в какой-то программе заполнять конфигурационную таблицу на сервере. Конечно, можно научить этот компонент держать свои настройки в БД, но минусов у этого скорее больше чем плюсов.

У нас 90% автогенеримых процедут по поддержке общения с базой. Так что в данном контексте это удобнее.

softwarer
EstetsБизнес-проверки вынесены в процедуры.
Что есть бизнес-проверки?

Если проверки уровня "дата начала должна быть меньше даты конца" - повторюсь; я не думаю, что таким образом можно сделать хороший интерфейс с разумными трудозатратами. См. пример с визардом.
Не совсем согласен, приведу другой пример. Пока документ находится в состоянии "редактируется", большинство его полей может быть не заполнено. Оператор может множество раз открывать его, исправлять, дозаполнять. Все бизнес-проверки начиная от "дата начала должна быть меньше даты конца" до может ли клиент уйти в минус при расчете комиссий, и разрешена ли ему короткая позиция при продаже ЦБ ;) вычисляется в момент перехода документа из состояния "редактируется" в состояние "исполнено".

softwarer EstetsА вот constraint-ов и триггеров в базе практически нет. Только в учетном блоке где проводки, чтоб ни при каких условиях не развалить баланс.
Хм. Звучит так, словно остальную базу можно разваливать :)

Ну чисто теоретически да, практически все количественные и суммовые отчеты строятся с использованием проводок, и главное что-бы они были правильные. А первичные документы, на основе которых они созданы теоретически по истечении строка хранения могут быть удалены.

softwarerБезусловно, надо смотреть по ситуации. Но я крайне трепетно отношусь к качеству данных в БД, поэтому в конкретной ситуации вряд ли согласился бы.
Часто приходилось сталкиваться, особенно при внедрении продуктов, что информация которую можно было вытащить из старых систем была неполная, и приходилось с этим мириться. Соответственно несколько полей обязательных к заполнению в новой системе в старой отсутствовали.
...
Рейтинг: 0 / 0
Вопрос по проектированию
    #33611322
Estets
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
123423
На клиенте в идеале не должно быть кода вообще!
Но люди уроды поэтому на клиенте сидит код который отлавливает ошибки ввода или осуществляет подсказки пользователю или оказывает помощь в настройки перед запросом к серверу… всё это исключительно интерфейс…

Согласен, все что можно проверить на клиенте, не обращаясь к серверу, желательно проверять на клиенте. Если требуется получать данные с сервера, по справочникам, лимитам, остаткам. То желательно это на сервере и проверять.

Единственное исключение из данного правила у нас, как я упоминал выше, получение с сервера, при открытии редактора данных о редактируемости-обязательности полей. И то это связано с тем что эта информация может динамически меняться для данного экземплята документа, в зависимости от его текущего состояния.
...
Рейтинг: 0 / 0
Вопрос по проектированию
    #33612046
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EstetsНестандартная задача тебует нестандартного решения ;)
Мы пошли по пути стандартизации,
Не возражаю, можно так идти. Соотношение цены и результата здесь имхо зависит от конкретных условий, "вообще" трудно что-то сказать.

EstetsУ нас 90% автогенеримых процедут по поддержке общения с базой. Так что в данном контексте это удобнее.
1. Я не понимаю, как этот Ваш ответ связан со сказанным мной. Я сказал: "да, можно научить". Вы говорите: "у нас научили". Я говорю: "но по сравнению с нормальным для дельфы решением это будет менее удобно". Вы говорите: "так что удобнее".

2. Я плохо отношусь к автогенеримому коду и полагаю, что единственный случай, когда он оправдан - убогие инструменты, не позволяющие решить задачу нормально. Но это отдельная тема, в которую вряд ли стоит особо углубляться.

Estets softwarer..... См. пример с визардом.
Не совсем согласен, приведу другой пример.
Хм. Если мы говорим об универсальной технологии, примеры, когда она работает хорошо никак не перекрывают примеров, когда она работает плохо. Она обязана либо [практически всегда] работать хорошо, либо же не будет универсальной.

EstetsПока документ находится в состоянии "редактируется", большинство его полей может быть не заполнено. Оператор может множество раз открывать его, исправлять, дозаполнять. Все бизнес-проверки начиная от "дата начала должна быть меньше даты конца" до может ли клиент уйти в минус при расчете комиссий, и разрешена ли ему короткая позиция при продаже ЦБ ;) вычисляется в момент перехода документа из состояния "редактируется" в состояние "исполнено".
И? Не очень понял, что показывает этот пример. Да, так можно делать. При этом никто не мешает сделать проверку грамотно: еще в состоянии "редактируется", если заполнены обе даты и дата начала больше - ругаться. Потому как одно дело "еще не заполнено", другое - "уже заполнено криво".

Какая разница между этими вариантами.... мне вспоминаются старые компиляторы. Когда-то работа с диалоговыми комплексами шла примерно так: написал код, запускаешь компилятор, он показывает ошибку. Запускаешь редактор, исправляешь ее, выходишь из редактора, запускаешь компилятор, он показывает следующую ошибку. Было очень неудобно. Были хорошие компиляторы - которые показывали разом несколько ошибок, если могли продолжить компиляцию, пропустив ошибочный кусок. Это здорово ускоряло процесс. А сейчас компилятор показывает некоторые ошибки прямо в ходе набора текста - и оно еще удобнее.

Estets softwarerХм. Звучит так, словно остальную базу можно разваливать :)

Ну чисто теоретически да
Тогда это пожалуй не очень интересный случай. Сродни "печатаю слепым методом. 850 знаков в минуту..."

EstetsЧасто приходилось сталкиваться, особенно при внедрении продуктов, что информация которую можно было вытащить из старых систем была неполная, и приходилось с этим мириться. Соответственно несколько полей обязательных к заполнению в новой системе в старой отсутствовали.
Это вовсе не обязано мешать проверкам целостности на сервере. Простой вариант:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
SQL> create table olddata as select rownum i from dual connect by level <=  100  ;

Table created

SQL> create table newdata as select i, cast ( null as integer ) j from olddata ;

Table created

SQL> alter table newdata modify j constraint newdata_j not null novalidate ;

Table altered

SQL> insert into newdata select rownum i, rownum j from dual connect by level <=  100  ;

 100  rows inserted

SQL> select * from newdata where i =  1  ;

         I          J
---------- ----------
          1  
          1            1 

SQL> insert into newdata ( i ) values (  101  ) ;

insert into newdata ( i ) values (  101  )

ORA- 01400 : cannot insert NULL into ("TEST"."NEWDATA"."J")

В более сложном, когда подобная функциональность отсутствует - никто не мешает сделать в таблице флажок "старых данных" и создавать таблицу примерно так:

Код: plaintext
1.
2.
3.
4.
5.
create table newdata ( 
  .....
  is_old char( 1 ),
  constraint check_field_not_null ( is_old = 'Y' or field is not null )
  .....
...
Рейтинг: 0 / 0
Вопрос по проектированию
    #33612346
iAndrew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Господа что Вы думаете об этом?
http://www.firststeps.ru/mfc/mcp/70-016/r.php?49
...
Рейтинг: 0 / 0
Вопрос по проектированию
    #33613823
Estets
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer2. Я плохо отношусь к автогенеримому коду и полагаю, что единственный случай, когда он оправдан - убогие инструменты, не позволяющие решить задачу нормально. Но это отдельная тема, в которую вряд ли стоит особо углубляться.
Ладно не будем касаться данной темы, пока не возникнет очередной флейм, на тему "посмотрите я сделал универсальную систему по учету всего и вся". Хотя на мой взглад оправданность такого подхода определяется "количеством работников занимающихся разработкой", если их 3 на проекте то возможны все подходы, если больше десяти в одной конторе то стоит задуматься, а если десятки тысяч франчайзеров, локализаторов и пр. ничего иного я не вижу. Свой язык, свое ядро, свой инструмент разработки.

softwarer
Не совсем согласен, приведу другой пример. Хм. Если мы говорим об универсальной технологии, примеры, когда она работает хорошо никак не перекрывают примеров, когда она работает плохо. Она обязана либо [практически всегда] работать хорошо, либо же не будет универсальной.
Абсолютных решений не бывает, мы это уже обсуждали, полностью универсальное решение требует на порядок больше затрат чем прямое решение поставленной задачи. Универсальным я называю решение которое в 90 процентах случаев позволяет упростить и ускорить решение задач. И я не спорю что в 10 оставшихся процентах затраты на программирования могут быть искуственно завышены именно для того что-бы вписаться в рамки универсального решения.

softwarerИ? Не очень понял, что показывает этот пример. Да, так можно делать. При этом никто не мешает сделать проверку грамотно: еще в состоянии "редактируется", если заполнены обе даты и дата начала больше - ругаться. Потому как одно дело "еще не заполнено", другое - "уже заполнено криво".
Нет предела совершенству, но я исповедую подход минимально-необходимых проверок. На клиента такую проверку я бы все равно не вынес, в вот если бы пользователи часто ошибались именно в этом месте я бы действительно вставил проверку при сохранении документа.

softwarerКакая разница между этими вариантами.... мне вспоминаются старые компиляторы. Когда-то работа с диалоговыми комплексами шла примерно так: написал код, запускаешь компилятор, он показывает ошибку. Запускаешь редактор, исправляешь ее, выходишь из редактора, запускаешь компилятор, он показывает следующую ошибку. Было очень неудобно. Были хорошие компиляторы - которые показывали разом несколько ошибок, если могли продолжить компиляцию, пропустив ошибочный кусок. Это здорово ускоряло процесс. А сейчас компилятор показывает некоторые ошибки прямо в ходе набора текста - и оно еще удобнее.
К сожалению принципы общения с БД не располагают к "интерактивно-диалоговому" режиму. Это можно реализовать только "толстым" клиентом. Мне ближе по идеологии "тонкий" клиент.

А по поводу проверки всего и вся в БД, и у этого подхода есть свои подводные камни. Тут недавно всплывал пример того как человек стоял у кассы магазина и держал в руках товар, но не мог его купить, так как остаток товара в БД 0 и кассовый аппарат об этом недвухсмысленно сообщал. Жизнь к сожалению преподносит еще и не такие задачи, и списать со склада минус 3 килограмма гвоздей, это еще не самая сложная.
...
Рейтинг: 0 / 0
Вопрос по проектированию
    #33614954
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EstetsХотя на мой взглад оправданность такого подхода определяется "количеством работников занимающихся разработкой", если их 3 на проекте то возможны все подходы, если больше десяти в одной конторе то стоит задуматься, а если десятки тысяч франчайзеров, локализаторов и пр. ничего иного я не вижу. Свой язык, свое ядро, свой инструмент разработки.
Само по себе разумно, но я не вижу, каким боком тут относятся автосгенеренные процедуры. Им нет места в нормальном проекте, включая свое ядро, свой язык и свой инструмент разработки.

EstetsНет предела совершенству, но я исповедую подход минимально-необходимых проверок. На клиента такую проверку я бы все равно не вынес, в вот если бы пользователи часто ошибались именно в этом месте я бы действительно вставил проверку при сохранении документа.
Хм. То есть если бы ошибались редко, Вы этой проверки вообще бы не делали?

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

EstetsК сожалению принципы общения с БД не располагают к "интерактивно-диалоговому" режиму.
Это снова глобальное неверное утверждение.

EstetsЭто можно реализовать только "толстым" клиентом. Мне ближе по идеологии "тонкий" клиент.
Я предпочитаю смотреть с точки зрения пользователя. Ему ближе по идеологии "хорошо работающая программа" и решительно наплевать на толщину клиента. Если тонкий клиент способен работать хорошо - надо делать. Если не способен - надо его выкинуть.

EstetsА по поводу проверки всего и вся в БД, и у этого подхода есть свои подводные камни. Тут недавно всплывал пример того как человек стоял у кассы магазина и держал в руках товар, но не мог его купить, так как остаток товара в БД 0
Угу. Я об этом рассказывал.

Estetsи кассовый аппарат об этом недвухсмысленно сообщал. Жизнь к сожалению преподносит еще и не такие задачи,
Угу. Как раз в тех случаях, когда разработчики изначально схалтурили и допустили в систему кривые данные, потом начинается поиск "как теперь с ними жить". И снимаются мешающие проверки. Как раз тот случай.
...
Рейтинг: 0 / 0
Вопрос по проектированию
    #33630380
1074117
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Группа Компаний Оргстрой – одна из не многих организаций, которая имеет опыт проектирования заводов. C 1935 года, мы специализируемся в области управления строительными проектами, разработке проектно-сметной документации, производстве работ по реконструкции и капитальному строительству, производстве строительных материалов.
Один из последних объектов нашей организации – завод по производству гибкой упаковки. Проектирование и строительство завода, площадь 46 000 кв.м. выполнено в соответствии современных архитектурных решений, согласовано со всеми необходимыми организациями. На территории завода построена комфортабельная гостиница на 60 номеров, котельная, электроподстанция, инфраструктура повышенной сложности.
Группа Компаний Оргстрой обладает необходимой квалификацией, лицензиями и ресурсами для проведения строительства промышленных предприятий. Имеет опыт работы по:
- Генеральному проектированию,
- Генеральному подряду.
- Субподряду, по следующим специализациям:
- П1 – Выполнение параллельного проектирования строительства (рабочая документация),
- С1 – Выполнение высокоточного и высококачественного монолитного железобетона (фундаменты под оборудование)
- Т1 – Технология производства монолитного полистиролбетона (конструкционный утеплитель)


(495)107-41-17
www.orgstroi.ru

orgstroi@nm.ru
...
Рейтинг: 0 / 0
Вопрос по проектированию
    #33630389
1074117
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Бесплатная консультация по проектированию завода.
Группа Компаний Оргстрой – одна из не многих организаций, которая имеет опыт проектирования заводов. C 1935 года, мы специализируемся в области управления строительными проектами, разработке проектно-сметной документации, производстве работ по реконструкции и капитальному строительству, производстве строительных материалов.
Один из последних объектов нашей организации – завод по производству гибкой упаковки. Проектирование и строительство завода, площадь 46 000 кв.м. выполнено в соответствии современных архитектурных решений, согласовано со всеми необходимыми организациями. На территории завода построена комфортабельная гостиница на 60 номеров, котельная, электроподстанция, инфраструктура повышенной сложности.
Группа Компаний Оргстрой обладает необходимой квалификацией, лицензиями и ресурсами для проведения строительства промышленных предприятий. Имеет опыт работы по:
- Генеральному проектированию,
- Генеральному подряду.
- Субподряду, по следующим специализациям:
- П1 – Выполнение параллельного проектирования строительства (рабочая документация),
- С1 – Выполнение высокоточного и высококачественного монолитного железобетона (фундаменты под оборудование)
- Т1 – Технология производства монолитного полистиролбетона (конструкционный утеплитель)


(495)107-41-17
www.orgstroi.ru

orgstroi@nm.ru
...
Рейтинг: 0 / 0
29 сообщений из 29, показаны все 2 страниц
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Вопрос по проектированию
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]