[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Строка -> Дата
Страницы: 1, 2, 3, 4, 5
AllesKlar
Цитата (Valick @ 16.06.2015 - 14:45)
бла-бла-бла...
Ступайте с миром
Я не собираюсь дискутировать о важности умения работать с датами на уровне СУРБД, как хотите так и поступайте, можно подумать мне теплее от ваших "бизнесс-процессов"...

Цитата
осталось еще 522448894269 ситуаций, когда скрипту перед отправкой в базу необходимо знать исходное значение

не надо так много, приведи всего один пример, время пошло

Любой пример, когда нужно изменить дату на динамическое количество времени, рассчитаное скриптом.

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

Вот это и будет говнокод.
Нет, это будет мега-крутой sql-код из серии "сертифицированный администратор базы Oracle может убить человека одним SQL запросом", но все, кто в последствии будет разгребать это, проклянут этого гения.

_____________
[продано копирайтерам]
Valick
AllesKlar, вы сильно утрируете. Запрос не будет монструозным. Во всяком случае при грамотной архитектуре БД.

_____________
Стимулятор ~yoomoney - 41001303250491
chee
Все понятно, БД-маниак детектид.

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

если запрос к БД быстрее чем это сделать в пхп значит это должен быть запрос
S.Chushkin
Цитата (chee @ 16.06.2015 - 00:21)
Отучайтесь работать с датами на уровне mysql.

Вы не правы.

_____________
Рекламка / ad.pesow.com Хрень / mr-1.ru
chee
Цитата (S.Chushkin @ 17.06.2015 - 10:56)
Вы не правы.

Я не отрицаю, что есть рабочие ситуации в которых я не прав. Но замечу что их в практике программста очень мало. Смотри сообщения AllesKlar, так как моё мнение близко к его. Ну и конечно же, вы тоже не правы.

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

У меня в соседнем кабинете сидит монстр SQL
Напишет что угодно.
Один из последних примеров:
Есть договор, нужно создать счет по оказанным услугам договора.
В php коде у него для этой цели всего несколько строк:
$sql = 'EXEC create_invoice @contract_id = ' . $contract_id;
$db->execute($sql);
$result = $db->fetch_assoc();

Все остальное делает эта монстраическая sql-процедура
Проверка существования договора, его позиций, статус, скидки и тд. и тп

Процедура возвращает xml, где либо статус ОК, либо описание ошибки, коих несметное множество может быть.

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

Спрашиваю: нахера так? Тяжело было выделить отдельно блок создания счета с уже подготовленными данными, без проверок? Трудно было в php проверить?
Говорит, что он сторонник инкапсуляции. У него одна процедура, которую он может использовать повсеместно и она вернет всегда одинаковый результат.

Ну зашибись, чо.

Ну я по натуре спокойный, написать практически уже написанное еще раз? Не вопрос, руководство платит.

_____________
[продано копирайтерам]
Invis1ble
Цитата
написать практически уже написанное еще раз

вот. часто бывает, что нужное api уже написано, покрыто тестами и преспокойно работает.
и тут появляется какой-нибудь адепт и предлагает продублировать логику ради мифического профита и потому что "так правильно" (видимо он не в курсе DRY)

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

AllesKlar
Цитата (Invis1ble @ 17.06.2015 - 12:37)
Цитата
написать практически уже написанное еще раз

вот. часто бывает, что нужное api уже написано, покрыто тестами и преспокойно работает.
и тут появляется какой-нибудь адепт и предлагает продублировать логику ради мифического профита и потому что "так правильно" (видимо он не в курсе DRY)

Нект, не так.
Я сторонник лаконичности и дробления кода на независимые компоненты.
А когда херачат закрытую коробку, которую удобно использовать при условии жесткого соблюдения определенных условий, то это плохо.
Если мне нужен тот же результат, но при других входных данных, которые сия коробка отрицает, что делать?
Идем потрошим "нужное api, которое уже написано, покрыто тестами и преспокойно работает", обвешиваем его кучей условий, симулируем ему значение параметров, которые он страстно желает. В итоге оно превращается в такое чудовище, в котором через полгода ничего и никому не понятно.

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

_____________
[продано копирайтерам]
Invis1ble
не понял, что не так? smile.gif я не отрицаю, что декомпозиция - это хорошо

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

Valick
Цитата (AllesKlar @ 17.06.2015 - 13:30)
в соседнем кабинете сидит монстр SQL

Цитата (AllesKlar @ 17.06.2015 - 13:30)
остальное делает эта монстраическая sql-процедура


юзнул процедуру - ты уже не монстр...
монстр - это тот кто делает одним запрросом.

_____________
Стимулятор ~yoomoney - 41001303250491
AllesKlar
Цитата (Valick @ 17.06.2015 - 18:47)
Цитата (AllesKlar @ 17.06.2015 - 13:30)
в соседнем кабинете сидит монстр SQL

Цитата (AllesKlar @ 17.06.2015 - 13:30)
остальное делает эта монстраическая sql-процедура


юзнул процедуру - ты уже не монстр...
монстр - это тот кто делает одним запрросом.

Ок, завтра передам ему.
Ты, кстати, языками владеешь? А то он мексиканец и посылать, скорее всего, будет на испанском smile.gif

_____________
[продано копирайтерам]
Valick
AllesKlar, пусть учит русский, я ему дам пару уроков по части SQL wink.gif


_____________
Стимулятор ~yoomoney - 41001303250491
AllesKlar
Седня чуть не убил этого любителя SQL.

Вы думаете, что MVC уже разжована-пережована?
А как вам такая связка: контроллер -> темплейт -> яваскрипт -> запрос аякс -> котроллер -> запрос в базу -> БАЗА ВОЗВРАЩАЕТ HTML КОД!!!

Нет, html там не типа контент страницы, там тупо форма платежной системы.
Запрос типа $db->exec('EXEC GET_PAY_FORM');
И вот эта чудесная процедура, пошла по таблицам, собрала все данные для платежа, данные для авторизации в платежной системе, сгенерировала HTML и выплюнула ее назад, вместе с ява-скрипт редиректом.

Вообще, человек с устойчивой психикой может ожидать, что редирект происходит на уровне запроса к базе??? Как это, пилять, дебажить???

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

_____________
[продано копирайтерам]
killer8080
AllesKlar
Осталось только научить браузерный JS напрямую обращатьмя к БД laugh.gif
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.