![]() |
Модераторы: LSD |
![]() ![]() ![]() |
|
krundetz |
|
||||
![]() Вечный странник ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1400 Регистрация: 14.6.2007 Где: НН(Сормово) |
1. Видимо что то не так со структурой и логикой, раз нужен объект прослойка только для передачи параметров методу(хотя не стоит забывать про шаблоны проектирования Адаптер, Прокси и Декоратор). Либо мы можем использовать этот объект в других местах, либо у нас этот метод работает как не пришей собаки хвост. Вообще все преимущество объектов и их методов, в том что первые могут хранить состояние, а вторые с этим состоянием работать. 2. Производительность разговор отдельный поэтому я его и не затрагивал. А вот логику программы наличие объектов облегчает, при условие конечно грамотного проектирования, так как объект хранит состояние и этим состоянием можно управлять через него. Ведь можно сделать так:
а можно так:
На первый взгляд второй вариант будет проще но, только до тех пор пока программа будет рисовать только одину окружность и ничего больше. Как только нужно рисовать кроме нее ещё квадрат и треугольник, да так чтобы они могли менять наложение друг на друга и передвигаться по экрану, получаем головную боль и трудно расширяемый код, если нам вдруг потребуется. Если кто мне не верит может попробовать реализовать такую программку только через функции и без использования структур( к коим относится и массив ). Если у вас получится легко расширяемая программа я с удовольствием сниму перед вами шляпу. Это сообщение отредактировал(а) krundetz - 28.3.2013, 16:53 |
||||
|
|||||
krundetz |
|
|||
![]() Вечный странник ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1400 Регистрация: 14.6.2007 Где: НН(Сормово) |
ты так говоришь, как будто эти параметры не зависят ни от чего, просто с воздуха их взяли и на бум решили что здесь применим? |
|||
|
||||
IKM2007 |
|
|||
![]() Зима близко ![]() ![]() Профиль Группа: Участник Сообщений: 702 Регистрация: 26.4.2008 Где: olmedreca |
Параметры могут быть из разных классов, никак не связанных между собой. Какой смысл взять и сунуть все в структуру если так более понятно. Получается каждой Функции по Структуре. -------------------- "К чёрту обстоятельства, я создаю возможности." Брюс Ли |
|||
|
||||
krundetz |
|
||||
![]() Вечный странник ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1400 Регистрация: 14.6.2007 Где: НН(Сормово) |
если они никак не связаны между собой но используются в одной функции или методе то это как минимум странно, возможно эта функция может быть спокойно разбита на две, так как похоже в ней выполняются одновременно два не связанных между собой действия. Если можно примерчик приведи, посмотрю что ты имеешь в виду.
Ситуации разные бывают, но если дополнительная структура действительно делает код понятнее то ее стоит использовать, даже больше если вдруг появляется желание где то использовать структуру так как это более понятно и логично, а раньше такой структуры у вас нигде не было, то у вас ошибка в проектирование. Не стоит утрировать. Это сообщение отредактировал(а) krundetz - 29.3.2013, 08:39 |
||||
|
|||||
baldina |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва |
вот такой пример: класс доступа к веб сервису. для его инициализации требуется
1) параметры сервера 2) параметры для вывода в лог-файл 3) параметры, связанные с задачей каждая группа параметров содержит несколько подпараметров (например, сервер: url, и информация о прокси - тип, адрес, порт, логин, пароль). как делать в этом случае? |
|||
|
||||
Zloxa |
|
|||
![]() Чо? ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3473 Регистрация: 12.9.2008 |
-------------------- Достоверно известно, что 89% людей доверяют статистике взятой с потолка ![]() |
|||
|
||||
krundetz |
|
||||||||||
![]() Вечный странник ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1400 Регистрация: 14.6.2007 Где: НН(Сормово) |
DI нам в помощь, но наблюдатель будет более предпочтительным. сколько какие? вот и получается, что здесь лучше использовать несколько структур, чем кучу разрозненных параметров, никак в струкутры не объединенные на мой взгляд код вида:
более удобен, чем:
и удобнее такого:
самым оптимальным при функциональном подходе будет что то наподобие такого:
но даже в этом варианте, я вижу много минусов, так как не получиться скрыть работу с прокси, то есть если они будут не только HTTP, но и Socks, то нам придётся выносить работу с разными вариантами прокси в createConnection, вместо того чтобы подставлять разные классы прокси реализующие один интерфейс. В общем приведенный тобой пример, говорит больше в пользу ООП или хотябы структурного подхода.
Ознакомлюсь, выскажу своё мнение. Это сообщение отредактировал(а) krundetz - 29.3.2013, 10:45 |
||||||||||
|
|||||||||||
baldina |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва |
это те же структуры, только сбоку Добавлено через 2 минуты и 34 секунды возможно... но я не для тебя пример писал, хотелось бы мнение другой стороны услышать Добавлено через 3 минуты и 12 секунд хабр лежит уже который час |
|||
|
||||
LSD |
|
||||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin |
Бу-го-га, наш старый холивар теперь и на хабре ![]() -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
||||
|
|||||
Freyzer |
|
|||
![]() обаятельный нахал ![]() ![]() Профиль Группа: Участник Сообщений: 277 Регистрация: 12.12.2009 Где: на Марсе |
Господи, чушь какая, если что - то изучаем, обычно вопросы задаем конкретные, что явно непонятно. А тут тупая болтовня
![]() -------------------- Advocatus Dei ![]() ![]() |
|||
|
||||
IKM2007 |
|
|||
![]() Зима близко ![]() ![]() Профиль Группа: Участник Сообщений: 702 Регистрация: 26.4.2008 Где: olmedreca |
Хороший пример привел baldina, можно еше что-то такое: Например функция для добавления нового графического обьекта в конкретную сцену. Параметры:э ссылка на соответствующую сцену ссылка на хранилище данных чтобы своевременно обновить графические елементы в зависимости от поступающих данных ссылка на обьект трансформатор для перевода значении из хранилища в соответствующие значения для сцены ссылка на параметры графического обьекта получилось 4 параметра, если еще подумать, можно еще добавить. Да, программа должна быть обьектно ориентированной, но не могу понять какое отношение имеют структуры-обертки для параметров к ООП. P.S. если честно мне все равно ) -------------------- "К чёрту обстоятельства, я создаю возможности." Брюс Ли |
|||
|
||||
krundetz |
|
||||
![]() Вечный странник ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1400 Регистрация: 14.6.2007 Где: НН(Сормово) |
видимо у нас с тобой расхождение в терминологии, да и диалог о структурах больше относиться к передаче параметров методу, а не к ООП. Выше я писал следующие:
а что тогда дискутируешь? ты про что? это ж флейм! сразу не понял мне бы тоже, но видимо не судьба |
||||
|
|||||
![]() ![]() ![]() |
Правила раздела «Флейм» | |
|
Добро пожаловать в «Флейм». В разделе не действуют многие правила:
Строго запрещено:
Напоминаем о существовании волшебной кнопочки "Репорт". Если вы увидели сообщение, несовместимое с жизнью, просьба подвести на нее курсор и клацнуть левой клавишей мышки. Тем самым вы сможете призвать злого, но жутко справедливого джина-модератора, который нашлет порчу на злостного нарушителя. Кстати - счётчик сообщений здесь не растёт. Глас Винграда:
Глас Философии:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Sneg0k |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Флейм | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |