|
![]() |
#1 |
Участник
|
Цитата:
Сообщение от mazzy
![]() Стандартный функционал не разрешает пустой проект при выбранной Default company.
Но "для примера наш бизнес сценарий должен позволить". Что делаем? а) разбираемся с бизнес логикой и выясняем причину явно записанного в валидаторе условия б) сообщаем постановщику нашей задачи "для примера" о том, что в стандартной бизнес-логике есть вот такое условие валидации, чтобы он скорректировал условия задачи "для примера" в) явно изменяем стандарный валидатор, чтобы все сразу видели что происходит (возможно даже оставляя комментарии в коде) г) добавляем хуки, которые обманывают валидатор, передавая "глобальный" параметр и жестко завязываясь на конкретную реализацию и окружение валидатора. Пфффф! очевидно же - пункт г) Больше! Больше треша! ================================ Ну ведь дохренища же систем с экстеншенами/плагинами/хуками! И для этой дохренищи уже написаны бестпрактисы и рекомендации что можно делать, а что не надо. реальность гораздо страшнее нашего воображения! данный бизнес-сценарий - это то, над чем я конкретно сейчас работаю у реального клиента, которому нужно более гибко и мощно управляться со своим проектным производством. теперь по пунктам, которые ты совершенно обоснованно и чётко выделил. а и б сидели на трубе, но быстро оттуда слиняли после общения с клиентом; в - главный камень преткновения, из-за которого собственно весь сыр-бор: работаем только в парадигме расширения (в том числе и сознания, привыкшего делать простые задачи просто, а также времени разработки и бюджета, гыыы) с твоей оценкой пункта "г" (даже с буквой, которую ты ему присвоил) я полностью согласен, так как прекрасно помню речь из "полицейской академии". но это реальное решение реальной задачи для реального бизнеса. ты не представляешь, насколько мне это не нравится, но я ничего лучше придумать не смог. с интересом жду твоих идей. кстати говоря, не понял я, что имел в виду под "передавая "глобальный" параметр и жестко завязываясь на конкретную реализацию и окружение валидатора". этот хук именно что должен быть привязан к одному конкретному случаю, когда он вызывается из формы создания нового запроса на покупку (эту проверку я удалил из кода для облегчения понимания подхода); параметр самый что ни на есть локальный - существует исключительно в args. но это детали, можно их и опустить, так как меня интересует вопрос в более общей постановке: how to f***** survive in extensions? спасибо за обсуждение!
__________________
Felix nihil admirari |
|
![]() |
#2 |
Участник
|
Цитата:
это коррелирующие вещи. но согласен что разные. с замечанием согласен. Цитата:
Сообщение от wojzeh
![]() с твоей оценкой пункта "г" (даже с буквой, которую ты ему присвоил) я полностью согласен, так как прекрасно помню речь из "полицейской академии".
да, нумерация сознательная. как и подразумеваемый пятый пункт - PROFIT!!!! Цитата:
но считаю это запредельным говнокодом. и считаю, что система, которая вынуждает программировать в таком стиле, не является хорошо продуманной. и уж точно не привел бы такой код в качестве примера Цитата:
_args.getThis() - возвращает anytype https://msdn.microsoft.com/ru-ru/lib...s.getthis.aspx фиг с ним, что нет каста, фиг с ним что нет проверок. но РЕКОМЕНДОВАТЬ использовать ЭТО для ОБМАНА штатного валидатора?... впрочем, я уже создавал отдельную ветку: Что с логикой у людей на форуме? Вроде программисты. Вроде код и ТЗ должны читать и писать. |
|
![]() |
#3 |
Участник
|
Цитата:
можешь вкратце набросать бриллиантово-чистый пример? Цитата:
Цитата:
Сообщение от mazzy
![]() впрочем, я уже создавал отдельную ветку:
Что с логикой у людей на форуме? Вроде программисты. Вроде код и ТЗ должны читать и писать. я чувствую, эмоции тебя переполняют - поверь, меня тоже. но прошу, давай отвлечёмся от критики чистого разума и морального закона внутри нас и вернёмся к нашим баранам.
__________________
Felix nihil admirari |
|
|
За это сообщение автора поблагодарили: Link (1). |
![]() |
#4 |
Участник
|
Цитата:
Я бы изо всех сил постарался изменить формулировку задачи. Я бы постарался донести последствия силового решения. Если бы мои уговоры не сработали, то практическое решение было бы похоже на то, что приведено в блоге - стиль "сломать через колено". Но мне чертовски не нравится что система вынуждает писать именно так. Мне чертовски не нравится, что через несколько лет придется с последствиями решений, которые были сделаны в таком стиле. А еще больше мне не нравится, систему сейчас делают такой совершенно конкретные люди. И они это делают точно не со зла. Последний раз редактировалось mazzy; 04.10.2017 в 16:24. |
|
![]() |
#5 |
Участник
|
Цитата:
как смотришь на то, чтоб убрать весь "эмоциональный шум" из этой ветки? так чтоб читатели могли выцепить суть, не отвлекаясь на "куда катится этот мир".
__________________
Felix nihil admirari |
|
![]() |
#6 |
Участник
|
это не одобрение )
Цитата:
как смотришь на то, чтобы создать пост, в котором ты сделаешь выжимку, которую считаешь нужной, чтобы читатели могли выцепить суть? с удовольствием добавлю ссылку на твой пост. дело в том, что я не вижу никакого эмоционального шума в этой ветке. я вижу обсуждение на нескольких уровнях восприятия для разных категорий читателей. |
|
![]() |
#7 |
Участник
|
Цитата:
Сообщение от mazzy
![]() это не одобрение )
удалять документы? ))))) как смотришь на то, чтобы создать пост, в котором ты сделаешь выжимку, которую считаешь нужной, чтобы читатели могли выцепить суть? с удовольствием добавлю ссылку на твой пост. дело в том, что я не вижу никакого эмоционального шума в этой ветке. я вижу обсуждение на нескольких уровнях восприятия для разных категорий читателей. я именно такой пост в оригинале и создал - с выжимкой. полностью согласен с вашими оценками о том, что в идеальном мире за такое бы сразу в адъ. но мы уже в аду.
__________________
Felix nihil admirari |
|
![]() |
#8 |
Участник
|
Цитата:
Сообщение от mazzy
![]() Но мне чертовски не нравится что система вынуждает писать именно так.
Мне чертовски не нравится, что через несколько лет придется с последствиями решений, которые были сделаны в таком стиле. А еще больше мне не нравится, систему сейчас делают такой совершенно конкретные люди. И они это делают точно не со зла.
__________________
Felix nihil admirari |
|
![]() |
#9 |
Участник
|
все - не хорошее слово.
как только появляется слово все - жди логических ошибок ))) http://coub.com/view/vqeal |
|
![]() |
#10 |
Участник
|
и обрати внимание на то, что сказал Макс Белугин
D365: passing through public method by means of Pre- and Post-event handlers это штатные способы, ожидаемые и предполагаемые Майкрософтом. |
|
![]() |
#11 |
Участник
|
Цитата:
Сообщение от mazzy
![]() и обрати внимание на то, что сказал Макс Белугин
D365: passing through public method by means of Pre- and Post-event handlers это штатные способы, ожидаемые и предполагаемые Майкрософтом. поправь меня, если я неправ, но именно это я и сделал: Воспользоваться какой-то точкой расширения для убирания функционала (не участка кода)стандартный код остался на месте, и главное, любые будущие его изменения нас не колышат.
__________________
Felix nihil admirari |
|
![]() |
#12 |
Участник
|
Цитата:
могу сказать одно - навижиноводы давно живут в условиях закрытого кода и в условиях extensions. правда поэтому у них система более продуманная изначально. |
|
![]() |
#13 |
Участник
|
Цитата:
Сообщение от mazzy
![]() давай плакать и страдать здесь Клуб анонимных оверлейщиков
да и хрен с ними. зачем нам навик в топике про аксу? перестань увиливать уже!
__________________
Felix nihil admirari |
|
|
За это сообщение автора поблагодарили: Ace of Database (2). |
![]() |
#14 |
Участник
|
|
|
Теги |
chain of command, extensions |
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|