|
Вынос кода в отдельный модуль
|
|||
---|---|---|---|
#18+
Артем GskyANAпропущено... Ну это же хрень. Обработчики должны быть лёгкими :) Да согласен. Но в данном контексте это не суть важно. Я поднял вопрос не из праздного любопытства. Хотелось бы услышать конкретный, короткий ответ. Вот по сути тот же пример... но с другими сущьностями. Есть класс OrderRepository. Где есть метод Add. И вдруг "разработчик" по каким-то причинам решает что логика в методе Add класса OrderRepository слишком длинная, и тут его еще осеняет что она похожа на логику в методе Add класса StudentRepository. И тут у него возникает желание вынести этот большой да еще и повторяющийся кусок кода в МОДУЛЬ Этому "разработчику" нравиться что не нужно объявлять переменную, а просто пишешь название модуля и появляется функция (похоже на static class) По мне такое можно написать не зная теории aka матчасти. Почему я против был такого выноса логики отдельно в модуль. Возьму пример на зверях. Есть жираф. У него голова, ноги, хвост. Он может жрать и срать. Бегимот имеет тоже самое и делает тоже самое. МОй коллега пытается вынести сранье жирафа только потому что это слишком сложный процесс у жирафа, добавляя при этом что бегимот тоже срет... и процессы у них схожи. ПО моему ОПП нам говорит что описывать сранье нужно у каждого в своем классе - это часть логики инкапсуляции. Вот как то так...а по мне так Вы тупо не освоили ООП дальше инкапсуляции. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2015, 00:04 |
|
Вынос кода в отдельный модуль
|
|||
---|---|---|---|
#18+
Присоединяюсь. В ооп 3 базовых принципа. И помимо указанного есть еще наследование и полиморфизм. И что мешает реализовать указанную логику в базовом классе, я так и не понял. Если же ваша третья будущая форма начнет "испражняться золотом", то всегда можно будет ее метод переопределить ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2015, 00:27 |
|
Вынос кода в отдельный модуль
|
|||
---|---|---|---|
#18+
должно быть я один так и не понял что такое "модуль" :( ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2015, 02:58 |
|
Вынос кода в отдельный модуль
|
|||
---|---|---|---|
#18+
Mike_zaИ что мешает реализовать указанную логику в базовом классе, я так и не понял. 1. Отсутствие множественного наследования классов может сыграть злую шутку. 2. При наследовании форм/юзерконтролов возможны проблемы с дизайнером. Артем GРассудите спор двух коллег. Пример такой. Есть 3 формы с 1ой кнопкой на каждой форме. При нажатии на кнопку на любой форме Background меняет цвет (то есть выполняется одна и таже функция). Можно ли вынести эту функцию в отдельный Модуль или правильнее будет написать один и тот же код в каждой форме 3 раза? В жизни этот код может быть 100-200 итд строк.Конечно нужно произвести выделение класса (по Фаулеру). ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2015, 07:19 |
|
Вынос кода в отдельный модуль
|
|||
---|---|---|---|
#18+
Артем GPallarisпропущено... SOLID (object-oriented design) Почитаем. Ясности не добавило ( ввиду отсутствия прямых ответов Здесь есть множество прямых ответов. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2015, 07:23 |
|
Вынос кода в отдельный модуль
|
|||
---|---|---|---|
#18+
skyANAа по мне так Вы тупо не освоили ООП дальше инкапсуляции.по-моему автор просто пришел за поддержкой против коллеги, поэтому и не видит "прямых ответов" - они не в его пользу. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2015, 07:41 |
|
Вынос кода в отдельный модуль
|
|||
---|---|---|---|
#18+
Артем GPallarisпропущено... И что? Создал класс-хэлпер, который реализует некоторую логику. Далее класс-форма может либо пользоваться методом этого класса, либо нет. Вот тот же довыд приводит и коллега. Мол и что? Поэтому и вопрос. Кто прав? Почему прав? и хотелось бы услышать кто-нибудь делает так у себя в проектах. Заранее спасибо за Ваши ответы.У меня проекты состоят из WinForms + ASP.NET приложений + Web, Web API, WCF и Win сервисы + Мобильные клиенты... Как Вы думаете, что я размазываю по баттон кликам? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2015, 07:47 |
|
Вынос кода в отдельный модуль
|
|||
---|---|---|---|
#18+
AntonariyskyANAа по мне так Вы тупо не освоили ООП дальше инкапсуляции.по-моему автор просто пришел за поддержкой против коллеги, поэтому и не видит "прямых ответов" - они не в его пользу.+1 Если нет аргументов в пользу того, почему код задублирован в трёх местах, то пусть коллега пишет по своему (в отдельный "модуль") ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2015, 08:07 |
|
Вынос кода в отдельный модуль
|
|||
---|---|---|---|
#18+
Алексей КАртем Gпропущено... Почитаем. Ясности не добавило ( ввиду отсутствия прямых ответов Здесь есть множество прямых ответов.Или здесь . ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2015, 08:09 |
|
Вынос кода в отдельный модуль
|
|||
---|---|---|---|
#18+
Артем GРассудите спор двух коллег. Пример такой. Есть 3 формы с 1ой кнопкой на каждой форме. При нажатии на кнопку на любой форме Background меняет цвет (то есть выполняется одна и таже функция). Можно ли вынести эту функцию в отдельный Модуль или правильнее будет написать один и тот же код в каждой форме 3 раза? В жизни этот код может быть 100-200 итд строк. Топик не читал. Вынести обязательно даже если там одна строка. Зато потом вы в одном месте можете управлять поведением всех трех форм, а не искать как умалишенный поиском по VS методов нажатия кнопак! ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2015, 09:40 |
|
Вынос кода в отдельный модуль
|
|||
---|---|---|---|
#18+
Mike_zaПрисоединяюсь. В ооп 3 базовых принципа. 4 батенька! ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2015, 18:12 |
|
Вынос кода в отдельный модуль
|
|||
---|---|---|---|
#18+
Алексей К Здесь есть множество прямых ответов. Скучная книга. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2015, 18:13 |
|
Вынос кода в отдельный модуль
|
|||
---|---|---|---|
#18+
skyANAУ меня проекты состоят из WinForms + ASP.NET приложений + Web, Web API, WCF и Win сервисы + Мобильные клиенты... Как Вы думаете, что я размазываю по баттон кликам? WWF нету? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2015, 18:15 |
|
Вынос кода в отдельный модуль
|
|||
---|---|---|---|
#18+
ЕвгенийВskyANAУ меня проекты состоят из WinForms + ASP.NET приложений + Web, Web API, WCF и Win сервисы + Мобильные клиенты... Как Вы думаете, что я размазываю по баттон кликам? WWF нету?Нету. Исследовали возможность применения в одном месте, но как-то слишком сложно применимо оказалось. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2015, 18:48 |
|
Вынос кода в отдельный модуль
|
|||
---|---|---|---|
#18+
skyANA, Есть вероятность что и инкапсуляцию я не понимаю так как надо )) Antonariy, В споре всегда кто-то против кого-то. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.04.2015, 00:39 |
|
Вынос кода в отдельный модуль
|
|||
---|---|---|---|
#18+
Артем GВ споре всегда кто-то против кого-то. "В споре умные выясняют истину, а глупые - кто прав" (с) ... |
|||
:
Нравится:
Не нравится:
|
|||
23.04.2015, 03:49 |
|
Вынос кода в отдельный модуль
|
|||
---|---|---|---|
#18+
ЕвгенийВАлексей К Здесь есть множество прямых ответов. Скучная книга.Не скучнее Паустовского. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.04.2015, 04:53 |
|
|
start [/forum/topic.php?fid=20&msg=38947901&tid=1401607]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
42ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
others: | 351ms |
total: | 491ms |
0 / 0 |