|
Новая работа. Может я что не понимаю? (((
|
|||
---|---|---|---|
#18+
Всем доброго дня. Нужен совет коллег. Устроился на работу , получили задачу реализовать чат между менеджер(кабинет менеджер) и клиентом (профиль клиента на другом домене). База централизована. Вооружился опытом разработки на SignalR и приступил к реализации. В итоге задачу реализовал. Так как чат должен работать в другом домене я решил прибегнуть к iframe который ссылается на страницу в домене менеджере. По сути хаб находится в проекте менеджера так же страница чата менеджера и клиента тоже находится в проекте менеджера. В итоге со старшего разработчика поступила критика такого решение. И было предложено следующее. Цитирую "Надо делать как положено. SignalR (или другая подобная технология) на обоих сайтах, верстка своя на каждом сайте, передача сообщений между сайтами http запросами - это собственно маршаллинг или подобие шины данных." Я от предложенного не много завис но собрав мысли описал минусы такого решения 1. Проблема интеграции стороны клиента в будущем в другие проекты т.е по сути для каждого проект клиента нужно будет писать свою реализацию. 2. общаться между сайтами запросами в данной задаче это лишние запросы а соотвественно риски потери сообщения и время. Может я не прав? Нужен совет. Далее нужен совет по проекту, так как ранее я такого не видел и увидев немного ужаснулся. По коду везде такая реализация. Код: c# 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.
Так же от увиденного на стороне базы волосы стали шевелится. Вся логика реализована в процедурах и функциях. К примеру что бы получить Name какого либо обьекта используют в SELECT вызов функции вместо join например вот такой Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.
Это же дополнительная нагрузка на базу В итоге не покидает мысль а оно мне надо. или может я чего не понимаю((((((( Вообщем нужен дельный совет ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2019, 17:05 |
|
Новая работа. Может я что не понимаю? (((
|
|||
---|---|---|---|
#18+
По SignalR поддерживаю. Что за шины между сайтами уточнить надо было)))) и при чём тут маршалинг это из другой темы вообще. По С#. goto сто лет не видел. out msg. может внутри какой то Exception свой отрабатывает. Хотя можно и снаружи его отловить. Скорее тоже поддерживаю какой то моразм. По sql явное не понимание у разработчиков. на отдельную колонку вешать select это сильно. В один день у них всё ляжет и устанут разгребать. Совет. Уноси ноги пока всё не упало ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2019, 17:49 |
|
Новая работа. Может я что не понимаю? (((
|
|||
---|---|---|---|
#18+
IPmenК примеру что бы получить Name какого либо обьекта используют в SELECT вызов функции вместо join например вот такойЯ бы попытался спросить о причинах. Вдруг причины есть ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2019, 18:05 |
|
Новая работа. Может я что не понимаю? (((
|
|||
---|---|---|---|
#18+
Автор, видать, в разработке довольно новенький. Года через 3-5 такие вещи перестанут удивлять, а еще через 3-5 станут восприниматься как повседневная норма. "Кто в армии служил, тот в цирке не смеется" (с) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2019, 18:54 |
|
Новая работа. Может я что не понимаю? (((
|
|||
---|---|---|---|
#18+
IPmenДалее нужен совет по проекту Значит подходишь к старшему разработчику и спрашиваешь обо всём, что не понятно. По двум твоим огрызкам кода выводы делать рано. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2019, 19:31 |
|
Новая работа. Может я что не понимаю? (((
|
|||
---|---|---|---|
#18+
fkthat, За 13 лет такого не встречал ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2019, 19:46 |
|
Новая работа. Может я что не понимаю? (((
|
|||
---|---|---|---|
#18+
Дмитрий МухIPmenДалее нужен совет по проекту Значит подходишь к старшему разработчику и спрашиваешь обо всём, что не понятно. По двум твоим огрызкам кода выводы делать рано. Бывают реализации где подобное оправдано? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2019, 19:49 |
|
Новая работа. Может я что не понимаю? (((
|
|||
---|---|---|---|
#18+
IPmenЗа 13 лет такого не встречалКритики в адрес своего решения? :) Вот встретили, и реакция на мой взгляд странная. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2019, 19:50 |
|
Новая работа. Может я что не понимаю? (((
|
|||
---|---|---|---|
#18+
IPmenДмитрий Мухпропущено... Значит подходишь к старшему разработчику и спрашиваешь обо всём, что не понятно. По двум твоим огрызкам кода выводы делать рано. Бывают реализации где подобное оправдано?Что подобное? Сколько продукту лет? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2019, 19:51 |
|
Новая работа. Может я что не понимаю? (((
|
|||
---|---|---|---|
#18+
IPmen, огрызки кода, которые вы привели, конечно страшные, но в целом ваш старший разработчик прав приложения менеджера и приложения клиента -- разные приложения. если бы весь чат был реализован как микросервис, не относящийся ни к менеджеру, ни к клиенту, другой вопрос. да и в этом случае, можно обойтись без iframe. с другой стороны, мы всего не знаем, поэтому говорить кто прав, кто не прав с полной уверенностью сложно. обсуждайте. договаривайтесь. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2019, 20:05 |
|
Новая работа. Может я что не понимаю? (((
|
|||
---|---|---|---|
#18+
Дмитрий МухIPmenЗа 13 лет такого не встречалКритики в адрес своего решения? :) Вот встретили, и реакция на мой взгляд странная. Да в том то и дело что не в критике же дело а в реализации. Такого кода я не встречал и считаю что так писать нельзя так же и по базе. Реакция наводящая на вопросы к третьим лицам, по моему адекватная. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2019, 20:05 |
|
Новая работа. Может я что не понимаю? (((
|
|||
---|---|---|---|
#18+
hVosttIPmen, огрызки кода, которые вы привели, конечно страшные, но в целом ваш старший разработчик прав приложения менеджера и приложения клиента -- разные приложения. если бы весь чат был реализован как микросервис, не относящийся ни к менеджеру, ни к клиенту, другой вопрос. да и в этом случае, можно обойтись без iframe. с другой стороны, мы всего не знаем, поэтому говорить кто прав, кто не прав с полной уверенностью сложно. обсуждайте. договаривайтесь. Да тут сложностей нет. 1-й вариант. Есть одна сторона проекта менеджера и клиента.база одна. HUB SignalR расположен на стороне manager, клиенту iframe ссылка на manager проект 2-й вариант. на каждой стороне HUB у каждого своя реализация. общение через запросы. Я не пытаюсь сказать решение моё верное я пытаюсь понять если моё решение неверное то в чём? Советуюсь на будущее ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2019, 20:18 |
|
Новая работа. Может я что не понимаю? (((
|
|||
---|---|---|---|
#18+
hVosttIPmen, огрызки кода, которые вы привели, конечно страшные, но в целом ваш старший разработчик прав приложения менеджера и приложения клиента -- разные приложения. если бы весь чат был реализован как микросервис, не относящийся ни к менеджеру, ни к клиенту, другой вопрос. да и в этом случае, можно обойтись без iframe. с другой стороны, мы всего не знаем, поэтому говорить кто прав, кто не прав с полной уверенностью сложно. обсуждайте. договаривайтесь. Всё происходит в рамках одного проекта. т.е это не интеграция с чем то потусторонним. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2019, 20:20 |
|
Новая работа. Может я что не понимаю? (((
|
|||
---|---|---|---|
#18+
Дмитрий МухIPmenпропущено... Бывают реализации где подобное оправдано?Что подобное? Сколько продукту лет? Ситуации когда пишут SELECT и на каждую колонку в виде функции тоже SELECT ну и по C#. Судя по логам можно сказать пол года может ошибаюсь . ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2019, 20:27 |
|
Новая работа. Может я что не понимаю? (((
|
|||
---|---|---|---|
#18+
IPmenВсё происходит в рамках одного проекта. т.е это не интеграция с чем то потусторонним. Проект один, а приложения разные. Но я уже об этом сказал. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2019, 20:33 |
|
Новая работа. Может я что не понимаю? (((
|
|||
---|---|---|---|
#18+
IPmenДмитрий Мухпропущено... Что подобное? Сколько продукту лет? Ситуации когда пишут SELECT и на каждую колонку в виде функции тоже SELECT ну и по C#. Судя по логам можно сказать пол года может ошибаюсь .Я не увидел функции на каждую колонку. Не увидел структуры БД, индексов, предметной области... А главное, я не увидел от вас никаких аргументов. Если бы я пришёл на проект, где мне что-то не нравится, то я бы нашёл слова для обоснования своего мнения. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2019, 20:34 |
|
Новая работа. Может я что не понимаю? (((
|
|||
---|---|---|---|
#18+
IPmenЯ не пытаюсь сказать решение моё верное я пытаюсь понять если моё решение неверное то в чём? Советуюсь на будущее Если коротко, то согласно DDD (Domain Driven Design) контексты у вас разные... ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2019, 20:37 |
|
Новая работа. Может я что не понимаю? (((
|
|||
---|---|---|---|
#18+
Причина писать такую жесть может быть одна. Отсутствие опыта. Сколько человек в команде? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2019, 20:37 |
|
Новая работа. Может я что не понимаю? (((
|
|||
---|---|---|---|
#18+
Давайте представим, что завтра сообщение должно прилетать клиенту не от менеджера, а от другого клиента, послезавтра от бота... Вы напишите, что такого не произойдёт никогда... А я вот вам не поверю :) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2019, 20:39 |
|
Новая работа. Может я что не понимаю? (((
|
|||
---|---|---|---|
#18+
lansПричина писать такую жесть может быть одна. Отсутствие опыта. Сколько человек в команде? А в чём жесть, мне просто любопытно? :) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2019, 20:43 |
|
Новая работа. Может я что не понимаю? (((
|
|||
---|---|---|---|
#18+
Дмитрий МухIPmenпропущено... Ситуации когда пишут SELECT и на каждую колонку в виде функции тоже SELECT ну и по C#. Судя по логам можно сказать пол года может ошибаюсь .Я не увидел функции на каждую колонку. Не увидел структуры БД, индексов, предметной области... А главное, я не увидел от вас никаких аргументов. Если бы я пришёл на проект, где мне что-то не нравится, то я бы нашёл слова для обоснования своего мнения. Например вот так. Слова найти могу но восприятие не доброе. Что и натолкнуло на мысль всё это дел запостить ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2019, 20:44 |
|
Новая работа. Может я что не понимаю? (((
|
|||
---|---|---|---|
#18+
Дмитрий МухДавайте представим, что завтра сообщение должно прилетать клиенту не от менеджера, а от другого клиента, послезавтра от бота... Вы напишите, что такого не произойдёт никогда... А я вот вам не поверю :) ))) В данной реализации это тоже же не проблема. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2019, 20:47 |
|
Новая работа. Может я что не понимаю? (((
|
|||
---|---|---|---|
#18+
IPmenДмитрий МухДавайте представим, что завтра сообщение должно прилетать клиенту не от менеджера, а от другого клиента, послезавтра от бота... Вы напишите, что такого не произойдёт никогда... А я вот вам не поверю :) ))) В данной реализации это тоже же не проблема. Я вам ещё подкину. Вместо зависимости функции от одного приложения, в котором имплементировано решение, вы получаете два. Вас помянут недобрым словом и разработчики, которым это придётся развивать, тестировщики, девопсы -- от всех вам достанется много нехороших эпитетов. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2019, 20:50 |
|
Новая работа. Может я что не понимаю? (((
|
|||
---|---|---|---|
#18+
IPmen, и зачем тут JOIN-ы? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2019, 20:51 |
|
Новая работа. Может я что не понимаю? (((
|
|||
---|---|---|---|
#18+
Дмитрий МухlansПричина писать такую жесть может быть одна. Отсутствие опыта. Сколько человек в команде? А в чём жесть, мне просто любопытно? :) Можно убрать все goto оставить один try catch и внутри методов убрать try catch так как наличие того то передаётся какая то ошибка в out string errMsg наталкивает на мысль что там он есть. и всю эту лабуду выкинуть к чертям. по базе уже писал выше. писать select на каждую колонку это причина уволить сотрудника. Я таких не держу. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2019, 20:52 |
|
|
start [/forum/topic.php?fid=20&fpage=15&tid=1398753]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
41ms |
get topic data: |
19ms |
get forum data: |
2ms |
get page messages: |
62ms |
get tp. blocked users: |
1ms |
others: | 249ms |
total: | 403ms |
0 / 0 |