Re[18]: История одной оптимизации
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 10.11.05 12:09
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>Я бы это утверждение расширил. Без религиозно-фанатичного обожания надо относиться к оптимизации, паттернам, абстракциям, С++, C#, Java, .Net и т.д. и т.п. И вообще — не сотвори себе кумира


PD>Боюсь только, что объяснять это некоторым — все равно, что агитировать римского папу вступить в общество атеистов


Можно попросить указать на тот кусок, где я относился с религиозно-фанатичным обожанием к паттернам?
... << RSDN@Home 1.2.0 alpha rev. 617>>
AVK Blog
Re[16]: История одной оптимизации
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 10.11.05 12:09
Оценка:
Здравствуйте, vdimas, Вы писали:

V>Где именно?


Я тебе цитату твою уже раза три приводил.
... << RSDN@Home 1.2.0 alpha rev. 617>>
AVK Blog
Re[19]: История одной оптимизации
От: Pavel Dvorkin Россия  
Дата: 10.11.05 12:12
Оценка:
Здравствуйте, AndrewVK, Вы писали:


AVK>Можно попросить указать на тот кусок, где я относился с религиозно-фанатичным обожанием к паттернам?


Нельзя . Вопрос не ко мне — я только процитировал из постинга eao197
With best regards
Pavel Dvorkin
Re[15]: История одной оптимизации
От: vdimas Россия  
Дата: 10.11.05 12:21
Оценка: 1 (1) +2 -1
Здравствуйте, VladD2, Вы писали:

VD>Поясную свою оценку...


VD>Это за увертывание от прямого ответа и попытку переиначить свои же слова.


Ненавижу это занятие — приводить отрывки недавних постов, с целью "разбора полетов", но вынуждаешь:

VD>Нет, дело как раз не очень понятное. Кроме знаний о тонкостях реализации нужно еще иметь знания по грамотному дизайну приложений и желание этот самый грамтоный дизайн культивировать.


Может я не правильно истолковал выделеное? Что это за знания такие? Относительно дизайна мне кажется более уместным понятие умение. Почему именно так? Потому как сам современный ОО дизайн (как процесс) — это все еще лишь набор практик, которые надо уметь применять (как и само ОО — суть набор практик, встроенных в языки, и что смешно, в разные языки встроен разный набор практик, именующихся одним понятием ОО). Потому-то и не может быть единого формального подхода, если уж речь заходит о применении практик. И слово "применять" мне кажется здесь не точно выражающим смысл. Можно применять эти практики вообще в проекте, в смысле просто использовать (вчера был констатирован факт использования таких-то практик в таком-то проекте), или же можно применять практики в процессе анализа (вот AndrewVK это слово не дает покоя ), т.е. в том смысле, что накладывать имеющиеся практики на конкретные требования текущего уровня проектирования. Эти накладываемые практики должны быть наложены успешно. В чем измеряется успешность? Грубо — в степени реалиации требований. В чем измеряется "удачность"? — обратно пропорциональна сложности полученного решения. В области ПО удачность еще измеряется легкостью повторного применения (опять же — в случае нужды, и кстати, касательно общей темы — борьбы с оптимизациями, ведь это тоже один из частных случаев оптимизации — доведение кода до возможности повторного использования. И менеджеры тоже часто борятся с точно такой же "необоснованной" оптимизацией. Обоснование всегда может быть только одно — требования)

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

Ну а дальше — мой ответ. Есть шанс попытаться судить повторно о моих словах:

Добавлю еще насчет грамотного дизайна. Опять все встает с ног на голову. Раньше люди решали путем анализа вполне конкретные программистские задачи. Потом обнаружили их похожесть. Потом дали имена паттернам и использовали так: спроектировал что-либо, максимально удовлетворяющее требованиям, а потом _обяснил_ разработку на языке паттернов. Т.е. язык паттернов — это всего лишь терминологическая база. А молодежь как сейчас что-то проектирует??? Вместо того, чтобы решать поставленную задачу, крутит эти паттерны как кубики Лего, путем полного перебора стараясь подобрать нечто условно отвечающее поставленной задаче. И выходят монстры, один другого страшнее. И _паттэрны_ вроде есть, и неграмотно при этом...


Что же именно меня немного раздражает в описанной мной ситуации? Из бесед с молодыми и горячими проектировщиками мне показалось, что сам факт применения паттернов уже сам по себе означает тот самый грамотный дизайн (который упомянул ты). Т.е. будто бы существует прямая связь: наличие паттернов в проекте ==> удачное решение. И мне так и не удалось объяснить отсутствие этой зависимости, т.е. разницу между необходимым и достаточным. (хотя и факт необходимости — тоже спорный)

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

-------------
Что же такое есть анализ в процессе проектирования — я отвечу Андрею в его ветке. И не только об ОО.
Re: Готовность системы к её последующим изменениям
От: IT Россия linq2db.com
Дата: 10.11.05 12:27
Оценка: 34 (3) +5
Здравствуйте, Odi$$ey, Вы писали:

OE>а паттерны-шматтерны не способствуют разве большей прозрачности (понятности) реализации? что в конечном итоге и равно готовности к изменениям. Или как ты эту готовность обеспечиваешь?


Давай на это глянем с другой стороны. Паттерны-шматтерны и прочие ООП — это средства достижения наших целей. Именно средства. Сами же цели — это функциональность системы, удовлетворение её функциональных и нефункциональных требований. В дополнение к этим целям у меня всё чаще и чаще появляется ещё одна цель — обеспечение сопровождабельности программы. Раньше это тоже было средством, скорее всего средсвом самосохранения, но сейчас это переходит в разряд целей. Как я обеспечу достижение этих целей мне всё равно. Поэтому средствами я могу манипулировать как угодно, менять их, применять, заменять, отменять и т.п.

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

В общем, конечно же я всё это использую. Но если я вижу что это плохо работает, то "поступиться принципами" для меня раз плюнуть.
... << RSDN@Home 1.2.0 alpha rev. 0>>
Если нам не помогут, то мы тоже никого не пощадим.
Re[11]: История одной оптимизации
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 10.11.05 12:29
Оценка: 11 (2) +1
Здравствуйте, Дарней, Вы писали:

Д>...Нет никакого общего понятия красоты, ибо понятие это субъективное и к тому же подверженное изменениям со временем...


– Так, может, вы нам откроете сию тайну, – язвительно буркнул главный из художников, – раз уж вы такой знаток.
– Я не знаток, я просто врач, но я много думал над вопросами анатомии. Если упростить определение, которое на самом деле гораздо сложнее, как и вообще все в мире, то надо сказать прежде всего, что красота существует как объективная реальность, а не создается в мыслях и чувствах человека. Пора отрешиться от идеализма, скрытого и явного, в искусстве и его теории. Пора перевести понятия искусства на общедоступный язык знания и пользоваться научными определениями. Говоря этим общим языком, красота – это наивысшая степень целесообразности, степень гармонического соответствия и сочетания противоречивых элементов во всяком устройстве, во всякой вещи, всяком организме. А восприятие красоты нельзя никак иначе себе представить, как инстинктивное. Иначе говоря, закрепившееся в подсознательной памяти человека благодаря миллиардам поколений с их бессознательным опытом и тысячам поколений – с опытом осознаваемым. Поэтому каждая красивая линия, форма, сочетание – это целесообразное решение, выработанное природой за миллионы лет естественного отбора или найденное человеком в его поисках прекрасного, то есть наиболее правильного для данной вещи. Красота и есть та выравнивающая хаос общая закономерность, великая середина в целесообразной универсальности, всесторонне привлекательная, как статуя.
Нетрудно, зная материалистическую диалектику, увидеть, что красота – это правильная линия в единстве и борьбе противоположностей, та самая середина между двумя сторонами всякого явления, всякой вещи, которую видели еще древние греки и назвали аристон – наилучшим, считая синонимом этого слова меру, точнее – чувство меры. Я представляю себе эту меру чем-то крайне тонким – лезвием бритвы, потому что найти ее, осуществить, соблюсти нередко так же трудно, как пройти по лезвию бритвы, почти не видимому из-за чрезвычайной остроты. Но это уже другой вопрос. Главное, что я хотел сказать, это то, что существует объективная реальность, воспринимаемая нами как безусловная красота. Воспринимаемая каждым, без различия пола, возраста и профессии, образовательного ценза и тому подобных условных делений людей.


Иван Ефремов, Лезвие Бритвы.
... << RSDN@Home 1.1.4 stable rev. 510>>


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[20]: История одной оптимизации
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 10.11.05 12:30
Оценка: 1 (1) +1 :))
Здравствуйте, Pavel Dvorkin, Вы писали:

AVK>>Можно попросить указать на тот кусок, где я относился с религиозно-фанатичным обожанием к паттернам?


PD>Нельзя . Вопрос не ко мне — я только процитировал из постинга eao197


Не смешно. Подобные подколки отнюдь не способствуют конструктивному стилю общения.
... << RSDN@Home 1.2.0 alpha rev. 617>>
AVK Blog
Re[18]: История одной оптимизации
От: vdimas Россия  
Дата: 10.11.05 12:39
Оценка:
Здравствуйте, AndrewVK, Вы писали:

AVK>Я что то совсем перестал понимать твой русский язык. Как может оценочный критерий быть практикой?


Было сказано "относится к разряду практик". Или же он имеет под собой теоретическое обоснование?
Re[12]: История одной оптимизации
От: Andrei N.Sobchuck Украина www.smalltalk.ru
Дата: 10.11.05 12:40
Оценка: +1
Здравствуйте, eao197, Вы писали:

E>Здравствуйте, Дарней, Вы писали:


Д>>...Нет никакого общего понятия красоты, ибо понятие это субъективное и к тому же подверженное изменениям со временем...


E>

E>[/i]красота – это наивысшая степень целесообразности, степень гармонического соответствия и сочетания противоречивых элементов во всяком устройстве, во всякой вещи, всяком организме[/i]. А восприятие красоты /.../ закрепившееся в подсознательной памяти человека благодаря миллиардам поколений с их бессознательным опытом и тысячам поколений – с опытом осознаваемым


О. Оно! Лучше и не скажешь. Спасибо.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Я ненавижу Hibernate
Автор: Andrei N.Sobchuck
Дата: 08.01.08
!
Re[12]: История одной оптимизации
От: Дарней Россия  
Дата: 10.11.05 12:43
Оценка:
Здравствуйте, eao197, Вы писали:

E>

E> – Так, может, вы нам откроете сию тайну, – язвительно буркнул главный из художников, – раз уж вы такой знаток.
E> – Я не знаток, я просто врач, но я много думал над вопросами анатомии. Если упростить определение, которое на самом деле гораздо сложнее, как и вообще все в мире, то надо сказать прежде всего, что красота существует как объективная реальность, а не создается в мыслях и чувствах человека. Пора отрешиться от идеализма, скрытого и явного, в искусстве и его теории. Пора перевести понятия искусства на общедоступный язык знания и пользоваться научными определениями. Говоря этим общим языком, красота – это наивысшая степень целесообразности, степень гармонического соответствия и сочетания противоречивых элементов во всяком устройстве, во всякой вещи, всяком организме. А восприятие красоты нельзя никак иначе себе представить, как инстинктивное. Иначе говоря, закрепившееся в подсознательной памяти человека благодаря миллиардам поколений с их бессознательным опытом и тысячам поколений – с опытом осознаваемым. Поэтому каждая красивая линия, форма, сочетание – это целесообразное решение, выработанное природой за миллионы лет естественного отбора или найденное человеком в его поисках прекрасного, то есть наиболее правильного для данной вещи. Красота и есть та выравнивающая хаос общая закономерность, великая середина в целесообразной универсальности, всесторонне привлекательная, как статуя.
E> Нетрудно, зная материалистическую диалектику, увидеть, что красота – это правильная линия в единстве и борьбе противоположностей, та самая середина между двумя сторонами всякого явления, всякой вещи, которую видели еще древние греки и назвали аристон – наилучшим, считая синонимом этого слова меру, точнее – чувство меры. Я представляю себе эту меру чем-то крайне тонким – лезвием бритвы, потому что найти ее, осуществить, соблюсти нередко так же трудно, как пройти по лезвию бритвы, почти не видимому из-за чрезвычайной остроты. Но это уже другой вопрос. Главное, что я хотел сказать, это то, что существует объективная реальность, воспринимаемая нами как безусловная красота. Воспринимаемая каждым, без различия пола, возраста и профессии, образовательного ценза и тому подобных условных делений людей.


E>Иван Ефремов, Лезвие Бритвы.


сначала призывает отрешиться от идеализма, а потом начинает втирать про существование некоего "единственно верного и наилушего варианта" — не что иное, как тот самый идеал

рассмотрим в качестве примера женскую красоту — я думаю, этот предмет близок сердцу большинства читателей
были времена, когда красивыми считали бледных и худых женщин — чем худее и бледнее, тем красивее. Особенно красивыми считались женщины, больные чахоткой.
Бывали времена, когда красивыми считались полные и "мощные" женщины — сейчас такой бы сказали "иди занимайся фитнесом, корова!"
Бывали времена, когда красивыми считались женщины с плоской грудью — с этой целью девочкам-подросткам туго затягивали грудь и накладывали на грудь специальные металлические пластины, в конце концов она становилась не то чтобы плоской, а скорее даже "вогнутой"
список можно еще продолжить — например, вспомнить про аборигенов, для которых идеал красоты — это длинная шея. Так что для улушения внешности тамошние женщины надевают на шею множество колец, постепенно добавляя новые и новые.
Ну как, где тут единственно верный вариант, который понравится всем?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Всех излечит, исцелит
добрый Ctrl+Alt+Delete
Re[11]: История одной оптимизации
От: vdimas Россия  
Дата: 10.11.05 12:55
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Здорово! То есть ты перечитал текст, понял что сморозил ерунду и вместо того чтобы сказать "извини, плохо прочел" решил перевести разговор на обсуждение моих опечаток? А не объяснишь ли ты чем в донном случае мои опечатки помешали тебе отличить смысл слов "им" и "тобой"?



V>>Конкретно в приведенном примере, да, получается что я домыслил твое предложение неверно.


Так оказалось недостаточно?

VD>Причем тут пообзацное оценивание? Я выразил легкий сарказм по поводу того, что он поставил оценку за сообщение которое во многом противоречит его суждениям.


Но кое что и близко, потому я и заметил насчет по-абзацного оценивания.

VD>Вообще меня угнетает мысль о том, что необходимо разжевывать любую мысль, а такие вещи как сарказм и юмор вообще восринимаются не адекватно. Подозреваю, что конечно в этом виноват я.


+1 насчет разжевывать

в ветке насчет паттернов вынужден был убить на это прилично времени. Виновато конечно стремление выдавать свои мысли как можно более сжато, надеясь на адекватное восприятие коллегами.
Re[27]: История одной оптимизации
От: WolfHound  
Дата: 10.11.05 12:57
Оценка: +1
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>В С++ такое в принципе невозможно.

Да ну?
PD>Есть AnotherClass — должен быть у него конструктор копирования.
PD>Как он устроен — меня не интересует, а работать будет.
Не факт.
Например у меня в программах на С++ у большенства классов конструктор копирования и копирующие присваивание заблокированы тем или иным образом.
И пошол я на это абсолютно сознательно ибо логика этих классов не предусматривает копирования.
А всякие ADT, умные указатели и тп это разговор отдельный.
... << RSDN@Home 1.1.4 beta 6a rev. 436>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[13]: История одной оптимизации
От: Andrei N.Sobchuck Украина www.smalltalk.ru
Дата: 10.11.05 13:12
Оценка:
Здравствуйте, Дарней, Вы писали:


Д>рассмотрим в качестве примера женскую красоту — я думаю, этот предмет близок сердцу большинства читателей

Д>были времена, когда красивыми считали бледных и худых женщин — чем худее и бледнее, тем красивее. Особенно красивыми считались женщины, больные чахоткой.
Д>Бывали времена, когда красивыми считались полные и "мощные" женщины — сейчас такой бы сказали "иди занимайся фитнесом, корова!"
Д>Бывали времена, когда красивыми считались женщины с плоской грудью — с этой целью девочкам-подросткам туго затягивали грудь и накладывали на грудь специальные металлические пластины, в конце концов она становилась не то чтобы плоской, а скорее даже "вогнутой"
Д>список можно еще продолжить — например, вспомнить про аборигенов, для которых идеал красоты — это длинная шея. Так что для улушения внешности тамошние женщины надевают на шею множество колец, постепенно добавляя новые и новые.
Д>Ну как, где тут единственно верный вариант, который понравится всем?

Так это всё ориентация на вторичные половые признаки. Например, бледные — следствие ориентации на аристократический образ жизни, в то время, как бедным приходилось работать под открытым небом где они загорали. То есть тогда, брали в жены не женщину, а замок А уж логику дикарей предсказать не берусь. Может "плоская" вылезла из какой-то ловушки, и все ей подражать начали
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Я ненавижу Hibernate
Автор: Andrei N.Sobchuck
Дата: 08.01.08
!
Re[28]: История одной оптимизации
От: Pavel Dvorkin Россия  
Дата: 10.11.05 13:14
Оценка:
Здравствуйте, WolfHound, Вы писали:

WH>Здравствуйте, Pavel Dvorkin, Вы писали:


WH>Не факт.

WH>Например у меня в программах на С++ у большенства классов конструктор копирования и копирующие присваивание заблокированы тем или иным образом.
WH>И пошол я на это абсолютно сознательно ибо логика этих классов не предусматривает копирования.

Да бога ради. Это просто означает, что создание копий запрещено. И не у тебя только. В MFC таких классов полно, начиная с CWnd. Потому как бессмысленно создавать копию.

Но если копию создавать разработчик класса не запрещает — он обязан обеспечить конструктор копирования (и операцию присваивания)
With best regards
Pavel Dvorkin
Re[13]: История одной оптимизации
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 10.11.05 13:16
Оценка:
Здравствуйте, Дарней, Вы писали:

Д>рассмотрим в качестве примера женскую красоту — я думаю, этот предмет близок сердцу большинства читателей


У кого-то, может быть у того же Ефремова, я читал опровержение как раз тех фактов, которые ты приводишь ниже. В частности то, что на картинах старых мастеров часто были нарисованы очень худосочные, чахоточные женщины -- это из-за того, что в те времена позировать художником считалось грехом и на это отчаивались те, кому терять уже было нечего (в частности, беднота, которая никогда не могла похвастаться здоровьем). А по поводу издевательств над организмом, то следует отметить, что:
-- это не были массовые явления, в основном, подобными вещами занималась "знать", которым безделие в голову давало и на всякие придури тянуло;
-- это не прижилось, поэтому можно считать это всего лишь тупиковой мутацией. Правилом, всего лишь подтверждающем исключения.
... << RSDN@Home 1.1.4 stable rev. 510>>


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[15]: История одной оптимизации
От: vdimas Россия  
Дата: 10.11.05 13:19
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Возможно, но тогда спор терминалогический.


Что считать оптимизацией? Безусловно, без определения трудно спорить, а то может оказаться, что обе стороны скорее согласны, чем нет.

V>>Мне, например, не хватает что-то типа оператора with из VB. Приходится ручками заводить локальные переменные. Если кому-то это делать лень, то в случае нетривиального кода свойств можно получить серьезные тормоза на ровном месте. И таких примеров предостаточно.


VD>А это очередной пример предположенческой оптимизации. И вообще, такие вещи должен оптимизировать компилятор.


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

VD>Да и with от "ручками заводить локальные переменные" мало чем отличается. Разве что на одну строчку короче.


Примерно на такую:

OnlyHereOnceUsedNamespace.AnotherPrettyNamespace.VeryLongTypeIdentifier tmp2 = tmp1.Prop1.Prop2;

правда, сейчас Resharper неплохо помогает, пишешь tmp1.Prop1.Prop2, жмешь Alt+Ctrl+V и имеешь указанное длинное объявление бесплатно
Re[15]: История одной оптимизации
От: GlebZ Россия  
Дата: 10.11.05 13:20
Оценка: 1 (1) +2
Здравствуйте, AndrewVK, Вы писали:

AVK>Польза очень простая — товарищь агитирует за крайне вредную для новичком идею — что паттерны вредны.

Опа. Тут появились новички?
А кто тебе сказал что все иогурты полезны. Паттерны дают словарь, пытаются описать условия и цели, но не учат применять на практике. Поэтому вредная идея состоит в том, что паттерны полезны и вредны одновременно. Я вообще не понимаю, каким образом архитектора можно сделать архитектором по книгам хотя паттерны дают такое впечатление. Поэтому не все иогурты одинаковы полезны. Особенно новичкам. Научить думать, сомневаться и оценивать свое решение значительно сложней и значительно полезней чем чтения книжки. И паттерны(за исключением пожалуй тех паттернов о которых я сказал) тут не помогут.
Паттерны безусловно полезны не новичкам, поскольку расширяют его кругозор и дает дополнительное поле для игры ума в построении решений. Ну и дает некоторую терминологию в общении.
Ну и нельзя не упомянуть, что у каждого разработчика свой используемый набор паттернов.

С уважением, Gleb.
ЗЫ судя по всему, позиция вдимаса не отрицала паттерны как таковые и чем-то похожа на мою.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[27]: История одной оптимизации
От: GlebZ Россия  
Дата: 10.11.05 13:28
Оценка: +1
Здравствуйте, eao197, Вы писали:

Честно говоря я, в этом замечании, и не возражал и никуда не призывал. В большинстве своем у ссылки и у передачи по значению(если это не элементарные типы) разные цели.

С уважением, Gleb.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[27]: История одной оптимизации
От: GlebZ Россия  
Дата: 10.11.05 13:28
Оценка: 1 (1)
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>и у AnotherClass ICloneable не реализован. Как его deep copy сделать ?

Никак. Может быть это самим классом не поддерживается не просто так. Как стандартные варианты обхода — через сериализацию, или вручную через интероп. В принципе можно сделать и через маршалинг.

PD>В С++ такое в принципе невозможно. Есть AnotherClass — должен быть у него конструктор копирования. Как он устроен — меня не интересует, а работать будет.

А если конструктора нет?

С уважением, Gleb.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[2]: Готовность системы к её последующим изменениям
От: vdimas Россия  
Дата: 10.11.05 13:28
Оценка:
Здравствуйте, IT, Вы писали:

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


+3 за удачно выраженную мысль (кою я выразил не столь удано в этой подветке)
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.