Re[9]: Куда девать ф-ции внешние для класса
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 25.07.08 17:03
Оценка:
Здравствуйте, stump, Вы писали:

S>AndrewVK делает исключение, что в случае когда важна производительность, можно поступится правилом и перенести функцию в класс чтобы она смогла работать с приватными данными.


Это не исключение. Если функция должна работать с приватными данными, неважно по какой причине, значит функцию вынести не получится. Все в точном соответствии с предложенным принципом.
... << RSDN@Home 1.2.0 alpha 4 rev. 1095 on Windows Vista 6.0.6001.65536>>
AVK Blog
Re[10]: Куда девать ф-ции внешние для класса
От: adontz Грузия http://adontz.wordpress.com/
Дата: 25.07.08 17:08
Оценка:
Здравствуйте, AndrewVK, Вы писали:

AVK>Это не исключение. Если функция должна работать с приватными данными, неважно по какой причине, значит функцию вынести не получится. Все в точном соответствии с предложенным принципом.


Крайне несостоянтельный у тебя получился ответ, ведь можно сказать, что функция должна работать с приватными данными, потому что все другие функции класса работают с приватными данными. Это, Андрей, не что-нибудь, а логика! Была проведена аналогия! Это такой метод логического мышления.

Кто и как пределяет это самое "должна"?
A journey of a thousand miles must begin with a single step © Lau Tsu
Re[11]: Куда девать ф-ции внешние для класса
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 25.07.08 17:10
Оценка:
Здравствуйте, adontz, Вы писали:

A>Крайне несостоянтельный у тебя получился ответ, ведь можно сказать, что функция должна работать с приватными данными, потому что все другие функции класса работают с приватными данными.


Нельзя.

A> Это, Андрей, не что-нибудь, а логика!


Нет, на логику это совсем не похоже.

A> Была проведена аналогия! Это такой метод логического мышления.


Ну если это твой метод логического мышления, тогда все понятно.
... << RSDN@Home 1.2.0 alpha 4 rev. 1095 on Windows Vista 6.0.6001.65536>>
AVK Blog
Re[12]: Куда девать ф-ции внешние для класса
От: adontz Грузия http://adontz.wordpress.com/
Дата: 25.07.08 17:14
Оценка:
Здравствуйте, AndrewVK, Вы писали:

A>> Это, Андрей, не что-нибудь, а логика!

AVK>Нет, на логику это совсем не похоже.

На самом деле это очень даже логика, просто неуместная. Ничего, скоро ты тоже научишься различать.

A>> Была проведена аналогия! Это такой метод логического мышления.

AVK>Ну если это твой метод логического мышления, тогда все понятно.

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

На основной вопрос "Кто и как пределяет это самое "должна"?" есть что ответить или опять к деталям будешь придираться?
A journey of a thousand miles must begin with a single step © Lau Tsu
Re[13]: Куда девать ф-ции внешние для класса
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 25.07.08 17:15
Оценка:
Здравствуйте, adontz, Вы писали:

A>На самом деле это очень даже логика, просто неуместная. Ничего, скоро ты тоже научишься различать.


Не, не научусь.

AVK>>Ну если это твой метод логического мышления, тогда все понятно.


A>Нет, это не мой метод, это шутка. Я специально поставил три смайлика для людей без чувства юмора чтобы и им было понятно. Видимо, надо было поставить пять. В следующий раз так и поступлю. А может поэксперементировать с чётными числами, что думаешь?


Лучше, если уж отметил завершение рабочей недели, не пиши в форум.
... << RSDN@Home 1.2.0 alpha 4 rev. 1095 on Windows Vista 6.0.6001.65536>>
AVK Blog
Re[14]: Куда девать ф-ции внешние для класса
От: adontz Грузия http://adontz.wordpress.com/
Дата: 25.07.08 17:18
Оценка:
Здравствуйте, AndrewVK, Вы писали:

>> Если функция должна работать с приватными данными, неважно по какой причине, значит функцию вынести не получится. Все в точном соответствии с предложенным принципом.


Видимо у тебя проблемы со зрением и ты не разглядел мой вопрос. Попробуем иначе.

Кто и как пределяет это самое "должна"?

A journey of a thousand miles must begin with a single step © Lau Tsu
Re[31]: Куда девать ф-ции внешние для класса
От: IB Австрия http://rsdn.ru
Дата: 25.07.08 20:05
Оценка: -1
Здравствуйте, adontz, Вы писали:

A>Я так понял, ты согласен с тезисом, что LeftSubstring и RightSubstring,

Я уже тебе говорил, что ты не умеешь читать. .
Ты выдвинул тезис, что у меня железная логика и на это утверждение мне совершенно нечего возразить.. =)

A>Ты неоднократно утверждал, что если не выделять методы в хелперы, то будет больше багов.

Утверждал и даже объяснял почему, не однократно.

A> Тебя неоднократно и не только я просили привести факты подтверждающие эту теорию.

Почитай топик, там все есть.. =)

A>То есть сам указать не можешь. Ч.Т.Д.

Я уже указал, и не однократно. Я что, для каждого ленивого должен заново все повторять?
Мы уже победили, просто это еще не так заметно...
Re[9]: Куда девать ф-ции внешние для класса
От: IB Австрия http://rsdn.ru
Дата: 25.07.08 20:52
Оценка:
Здравствуйте, stump, Вы писали:

S>Приехали. Формулировка не влияет на суть. Видимо по тому что сути нет никакой.

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

S>Заметь, ведь никто не спорит с тобой о том, что функции работающие с публичным контрактом класса можно выносить за пределы класса.

Я уже ничему не удивлюсь.

S> Но почему это надо делать всегда, ты толком объяснить не можешь.

Да куда уж толковей-то?! Я потратил кучу времени, приводя и теоретические выкладки и различные сценарии и поясняя, почему в данном конкретном случае лучше выносить — не читал? Или что-то было не понятно? Тогда надо было просто спросить, я бы объяснил.

S>Тот же Мейерс делает исключения, для случая когда необходимо виртуальное поведение, и для целого ряда случаев специфических для C++.

В том-то и дело, что для C++, для C# вы так и не смогли привести ни одного убедительного сценария.

S>AndrewVK делает исключение, что в случае когда важна производительность, можно поступится правилом и перенести функцию в класс чтобы она смогла работать с приватными данными.

Ты так до сих пор и не удосужился понять, как работает правило? О чем мы тут тогда вообще разговариваем?
Так. Еще раз. Просто чтобы меня опять не обвинили в том, что я ухожу от разговора. Все построено очень просто. Дизайн функции делается сначала, правило не диктует — должна функция пользоваться приватными переменными или нет. Правило лишь определяет где ей находиться, после того как ее спроектировали. Таким образом, это не исключение. Это понятно?

S>Другие коллеги справедливо замечают, что в большинстве используемых библиотек рассматриваемое правило не соблюдается, и находят этому различные объяснения.

"Большинство" — это FCL? Объяснение тоже было одно, так что не надо ненужных гипербол.
Кроме того, во-первых, кривой дизайн конкретной библиотеки не означает, что и все остальные надо так же уродовать, а во вторых, есть масса обратных примеров.

S>Но ты продолжаешь упроствовать в этом своем "всегда",

Упорствовать продолжаете вы. Причем я уже даже не понимаю в чем. У меня складывается очень четкое ощущение, что у вас уже чисто принципиальное желание, поймать меня уже хоть на чем-нибудь.

S>теперь уже даже не утруждаясь аргументировать свою позицию

Сколько можно выдвигать новые и повторять старые аргументы, пытаясь построить их так чтобы дошло, если их просто игнорируют? Аргументов было больше чем достаточно.
Вынужден констатировать, что и с упертостью борьбу я так же проиграл, мне уже стало не интересно.
По началу было, конечно, забавно ловить тебя на неуклюжих попытках интерпретировать все в свою пользу (чего, честно говоря не ожидал), но потом стало утомлять.
Мы уже победили, просто это еще не так заметно...
Re[11]: Куда девать ф-ции внешние для класса
От: IB Австрия http://rsdn.ru
Дата: 25.07.08 21:10
Оценка:
Здравствуйте, adontz, Вы писали:

Yess!! Черт возьми, когда появляется персональный клоун, это, пожалуй, действительно слава.

A>Ah, the uniformity of it all!

A>Согласованность во всём!
Ром, ты здесь правда иронию не уловил или тебя просто что-то вштырило? =)

A>Собственно далее, Мейерс расставляет все точки над i, полностью превознося синстаксическую согласованность над инкапсуляцией: "People just look up which syntax is appropriate for the functions they want to call, then they call them".

Ром, отсыпь пожалуйста, я тоже так хочу.. )
У меня просто не получается настолько изменить сознание, чтобы фразу о том, что людям пофиг как вызвается функция, интерпретировать как пропаганду синтаксической согласованности.. =)
Это у вас там что-то местное?
Мы уже победили, просто это еще не так заметно...
Re[11]: Куда девать ф-ции внешние для класса
От: IB Австрия http://rsdn.ru
Дата: 25.07.08 21:12
Оценка:
Здравствуйте, adontz, Вы писали:

A>Опять переврал,

Конкретно, что именно я переврал? Вот можешь прям взять мой текст, взять оригинал и точно указать, где и что я "переврал", по сути, конечно, на буквальный перевод я не претендую.

A>специально для тебя пришлось найти и перевести текст полностью.

На пользу тебе это, судя по всему, не пошло.
Мы уже победили, просто это еще не так заметно...
Re[10]: Куда девать ф-ции внешние для класса
От: MozgC США http://nightcoder.livejournal.com
Дата: 26.07.08 12:59
Оценка: -1
Здравствуйте, IB, Вы писали:

IB>Да куда уж толковей-то?! Я потратил кучу времени, приводя и теоретические выкладки и различные сценарии и поясняя, почему в данном конкретном случае лучше выносить — не читал? Или что-то было не понятно? Тогда надо было просто спросить, я бы объяснил.

Ключевое слово выделено. Практики от тебя не было, ты на каждый конкретный вопрос только отвечаешь "я уже писал, вы не умеете читать".

IB>"Большинство" — это FCL? Объяснение тоже было одно, так что не надо ненужных гипербол.

IB>Кроме того, во-первых, кривой дизайн конкретной библиотеки не означает, что и все остальные надо так же уродовать, а во вторых, есть масса обратных примеров.
Ты так и не объяснил в чем же такой кривой FCL и конкретно, например, класс String. Да, давай напиши что ты уже писал, конкретики от тебя не будет никогда.
Re[12]: Куда девать ф-ции внешние для класса
От: MozgC США http://nightcoder.livejournal.com
Дата: 26.07.08 13:02
Оценка:
Здравствуйте, IB, Вы писали:

IB>Ром, отсыпь пожалуйста, я тоже так хочу.. )

Лучше ты отсыпь, наверное тогда тоже будут глюки якобы всем всё конкретно объяснил, а они не умеют читать.
Re[11]: Куда девать ф-ции внешние для класса
От: IB Австрия http://rsdn.ru
Дата: 26.07.08 17:42
Оценка:
Здравствуйте, MozgC, Вы писали:

MC>Практики от тебя не было, ты на каждый конкретный вопрос только отвечаешь "я уже писал, вы не умеете читать".

На каждый действительно конкретный вопрос, был дан конкретный ответ. Я человек ленивый, и повторять дважды мне совершенно не интересно, особенно для товарищей, которые даже не читают — не вижу смысла.

MC>Ты так и не объяснил в чем же такой кривой FCL и конкретно, например, класс String.

Если ты не в состоянии понять, что, скажем, пример с классом Rectangle ничем не отличается от примера с классом String, то тебе уже ничто не поможет. Тем более не вижу смысла тратить усилия.
А то в библиотек много, классов еще больше — ты мне будешь приплачивать за подробное объяснение по каждому?

MC>Да, давай напиши что ты уже писал, конкретики от тебя не будет никогда.

My favorite:

- Иногда письма не доходят.
— Да, бывалыча пишешь письмо, пишешь, получаешь ответ и понимаешь — не дошло письмо, не дошло..."

Мы уже победили, просто это еще не так заметно...
Re[12]: Куда девать ф-ции внешние для класса
От: Cyberax Марс  
Дата: 26.07.08 17:47
Оценка: +1
Здравствуйте, IB, Вы писали:

MC>>Да, давай напиши что ты уже писал, конкретики от тебя не будет никогда.

IB>My favorite:
IB>

IB> — Иногда письма не доходят.
IB> — Да, бывалыча пишешь письмо, пишешь, получаешь ответ и понимаешь — не дошло письмо, не дошло..."

Кстати, а кто автор этого высказывания? Я где-то это видел (в ФИДО?) но не могу вспомнить.
Sapienti sat!
Re[13]: Куда девать ф-ции внешние для класса
От: IB Австрия http://rsdn.ru
Дата: 26.07.08 17:52
Оценка:
Здравствуйте, MozgC, Вы писали:

MC>Лучше ты отсыпь, наверное тогда тоже будут глюки якобы всем всё конкретно объяснил, а они не умеют читать.

Нет, вот твоя трава мне не нравится, она тупая, занудная и на зрение влияет.
Мы уже победили, просто это еще не так заметно...
Re[13]: Куда девать ф-ции внешние для класса
От: IB Австрия http://rsdn.ru
Дата: 26.07.08 17:56
Оценка:
Здравствуйте, Cyberax, Вы писали:

C>Кстати, а кто автор этого высказывания? Я где-то это видел (в ФИДО?) но не могу вспомнить.

Да, это было в ФИДО в humor.filtered =)
Автора, увы, не помню, хотя если покопаться в архивах, возможно получится найти..
Мы уже победили, просто это еще не так заметно...
Re[14]: Куда девать ф-ции внешние для класса
От: MozgC США http://nightcoder.livejournal.com
Дата: 26.07.08 18:06
Оценка: :)
Здравствуйте, IB, Вы писали:

IB>Здравствуйте, MozgC, Вы писали:


MC>>Лучше ты отсыпь, наверное тогда тоже будут глюки якобы всем всё конкретно объяснил, а они не умеют читать.

IB>Нет, вот твоя трава мне не нравится, она тупая, занудная и на зрение влияет.
Я тебе не предлагал, да у меня и нет. Ты опять тупишь и не в тему отвечаешь.
Re[20]: Куда девать ф-ции внешние для класса
От: minorlogic Украина  
Дата: 26.07.08 18:28
Оценка:
Предлагаю рассмотреть имплементацию класса String для работы строк .

Во первых и пользы будет больше и конкретики и может понимания.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Ищу работу, 3D, SLAM, computer graphics/vision.
Re[21]: Куда девать ф-ции внешние для класса
От: Аноним  
Дата: 26.07.08 18:48
Оценка:
Давайте вернемся к примеру о котором написал adontz. Есть наш класс String. У него есть методы LeftSubstring() и RightSubstring(). LeftSubstring() по правилу Бодягина оставлен в классе, т.к. использует внутренние данные класса, а метод RightSubstring() вынесен во внешний сервис.

class String
{
    public String LeftSubstring(int symbolCount);
}

class StringService
{
    public static String RightSubstring(String value, int symbolCount);
}


По правилу Бодягина это правильно и нормально. Правильно ли я в данном случае применил правило или вы хотите что-то уточнить?
Re[22]: Куда девать ф-ции внешние для класса
От: MozgC США http://nightcoder.livejournal.com
Дата: 26.07.08 18:52
Оценка:
Последнее сообщение под анонимом это я написал. Что-то меня залогаутило..
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.