HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > Общие вопросы программирования
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #141  
Старый 07.02.2016, 04:04
Visor123
Постоянный
Регистрация: 22.06.2015
Сообщений: 766
С нами: 5732336

Репутация: 0


По умолчанию

Цитата:
Сообщение от gattsu  

здесь был smeli и отсыпал травки.

Только что подумал, если бы ваш код пихнули в книгу "совершенный код", начал ржать как гиена, в слух. Эталон...
Для кода на скорость любой java-код не эталон - и твой в том числе. Не веришь? Можешь написать свои рассуждения о конкатенции строк на форуме сишников - я посмеюсь вместе с ними.

Когда же я обращаю внимание на конкретное решение задачи в 1 посте, то почему-то задача уже не считается?

Ты уже определись для себя, либо общие решения скорости выполнения, либо решение конкретной задачи.
 
Ответить с цитированием

  #142  
Старый 07.02.2016, 04:09
velafrys
Участник форума
Регистрация: 03.02.2016
Сообщений: 148
С нами: 5407316

Репутация: 0
По умолчанию

Цитата:
Сообщение от Visor123  

Для кода на скорость любой java-код не эталон - и твой в том числе. Не веришь? Можешь написать свои рассуждения о конкатенции строк на форуме сишников - я посмеюсь вместе с ними.
Вот только речь у нас тут а джава коде, а не о Си и ассемблере.

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

Мы говорим о двух случаях - с конкатенацией и без.
 
Ответить с цитированием

  #143  
Старый 07.02.2016, 04:11
Visor123
Постоянный
Регистрация: 22.06.2015
Сообщений: 766
С нами: 5732336

Репутация: 0


По умолчанию

То есть когда я говорю о конкретном коде в 1 посте, мне пишут про 100000 итераций, когда я пишу о 100000 итераций, что быстрее когда их нет - то сразу съезд на код в 1 посте.

Определитесь господа, о чем конкретно вы пишете, и где 100000 итераций конкатенции, которые вы оптимизируете.

Цитата:
Сообщение от velafrys  

Вот только речь у нас тут а джава коде, а не о Си и ассемблере.
И да, я уже намекал о том, что Вы не способны реализовать это на ассемблере внутри Вашего злополучного класса, поэтому хватит оперировать этим.
Мы говорим о двух случаях - с конкатенацией и без.
Речь у нас либо о частном решении, то есть мы имеем в цикле 0-1 итерацию - расскажи, что ты в ней будешь оптимизирвоать, или ты будет оптимизировать конкатенцию строк в каждой строке отдельно?

Ассемблер не в этой классе, класс тут вообще не при чем, если рассуждать о том, что быстрее вообще. А когда в частном случае 1 поста и 0 итераций - то все твои велосипеды ни к чему вообще.

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

  #144  
Старый 07.02.2016, 04:13
velafrys
Участник форума
Регистрация: 03.02.2016
Сообщений: 148
С нами: 5407316

Репутация: 0
По умолчанию

Мы говорим о плохом подходе решения задачи.

"Конкатенация В ТОМ ВИДЕ В КОТОРОМ ОНА ЕСТЬ СЕЙЧАС У КЛАССА STRING В ЦИКЛЕ, КАКИМ БЫ ОН НИ БЫЛ,хуже, чем использование StreamBuilder", вот и все. Любой человек, который работает в команде согласится со мной, т.к. он уважает других разработчиков.
 
Ответить с цитированием

  #145  
Старый 07.02.2016, 04:20
Visor123
Постоянный
Регистрация: 22.06.2015
Сообщений: 766
С нами: 5732336

Репутация: 0


По умолчанию

Цитата:
Сообщение от velafrys  

Мы говорим о плохом подходе решения задачи.
"Конкатенация В ТОМ ВИДЕ В КОТОРОМ ОНА ЕСТЬ СЕЙЧАС У КЛАССА STRING В ЦИКЛЕ, КАКИМ БЫ ОН НИ БЫЛ,хуже, чем использование StreamBuilder", вот и все. Любой человек, который работает в команде согласится со мной, т.к. он уважает других разработчиков.
Любой человек согласится со мной, что то что ты написал, это очевидно.

Но твой пример не подходит к решению в 1 посте, там в цикле будет от 0 до 1. Перепиши свой цикл так, чтобы поменять там число 100000 0, потом на 1 и расскажи нужно ли там придумывать велосипед или нет.

Любой человек тут согласится со мной, что если цикл конкатенции будет от 0 до 0, то в примере что билдер, что стринг будут работать с одинаковой скоростью. Или это не очевидно?

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

И как ты вообще можешь говорить о задаче, если ты ее не знаешь?
 
Ответить с цитированием

  #146  
Старый 07.02.2016, 04:25
velafrys
Участник форума
Регистрация: 03.02.2016
Сообщений: 148
С нами: 5407316

Репутация: 0
По умолчанию

Когда говорю о подходе и качестве кода, Вы переводите стрелки на эффективность)

Меня крайне утомило это действо. Вы даже не можете закончить диалог, не оставив за собой слово.

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

  #147  
Старый 07.02.2016, 04:30
Visor123
Постоянный
Регистрация: 22.06.2015
Сообщений: 766
С нами: 5732336

Репутация: 0


По умолчанию

Цитата:
Сообщение от velafrys  

Когда говорю о подходе и качестве кода, Вы переводите стрелки на эффективность)
Меня крайне утомило это действо. Вы даже не можете закончить диалог, не оставив за собой слово.
Настоятельно рекомендую прочесть и изучить достойную литературу, а-ля банда четырех и того же Макконнелла, может быть это ещё не поздно в Вашем случае.
Я не перевожу стрелки на эффективность, чел же выкинул в 1 посте конкретный код, а не абстракцию, в которой может быть много итераций цикла, если бы там было много итераций цикла, я бы сразу поставил еще один билдер. Это очевидно. Я не пойму, почему ты не хочешь понять простые вещи, а упираешься в какие-то циклы с 100000 итераций конкатенции - нет там такого и быть не может в предметной области.

Для того, чтобы увидеть конкретный код в 1 посте тебе, мне не нужно читать литературу. Там прямо в коде возможны варианты либо 0 либо 1, стоит там городить велосипед для выигрывания пары наносекунд? Городи, я считаю что для решения задачи этого не нужно.

Почитай литературу сам, там люди же не глупые пишут, что полезно делать, а что не очень.

Когда я говорю про абстракции, ты съезжаешь на код в 1 посте. Так ты определись о чем ты пишешь о своем примере или о решении в 1 посте - именно решении, а не абстракции. Клоун его взял не абстрактно, а из конкретного проекта, и класс сделан именно для решения конкретной задачи, а не оптимизирован под решение множества задач.
 
Ответить с цитированием

  #148  
Старый 07.02.2016, 04:31
gattsu
Участник форума
Регистрация: 24.11.2015
Сообщений: 165
С нами: 5509192

Репутация: 1457
По умолчанию

Цитата:
Сообщение от Visor123  

Любой человек согласится со мной, что то что ты написал, это очевидно.

Но твой пример не подходит к решению в 1 посте, там в цикле будет от 0 до 1. Перепиши свой цикл так, чтобы поменять там число 100000 0, потом на 1 и расскажи нужно ли там придумывать велосипед или нет.

Любой человек тут согласится со мной, что если цикл конкатенции будет от 0 до 0, то в примере что билдер, что стринг будут работать с одинаковой скоростью. Или это не очевидно?

Мертвый код это просто супер.... Ваше ПО нельзя детерминировать, нарушается машина Тьюринга. У Вас квантовый компьютер?
 
Ответить с цитированием

  #149  
Старый 07.02.2016, 04:36
Visor123
Постоянный
Регистрация: 22.06.2015
Сообщений: 766
С нами: 5732336

Репутация: 0


По умолчанию

Цитата:
Сообщение от gattsu  

Мертвый код это просто супер.... Ваше ПО нельзя детерминировать, нарушается машина Тьюринга. У Вас квантовый компьютер?
Если класс не использовался в 2012 году в том паке, откуда клоун взял код, то это не значить что он не используется на конкретных инстансах серверов. Если эвент подключен - то он используется, а нет, то не используется - это очевидно.

Мое ПО не хуже других ПО, сервер имеет модульность, что-то подключено, а что-то нет. В любом сервере л2 в комплекте идут эвенты, но это не значить что все они используются. Это очевидно и это тут может любой подтвердить.

Но в том паке нет эвентов этого типа.

Цитата:
Сообщение от gattsu  

Мертвый код это просто супер.... Ваше ПО нельзя детерминировать, нарушается машина Тьюринга. У Вас квантовый компьютер?
Я и пытаюсь достучаться, что конкретно этот класс, что приведен в 1 посте "заточен" под конкретный тип задач с крайне малым количеством вызовов.

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

А теперь, как я и обещал - я показываю вам эту тему.

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

Человек, который не может сформулировать свою мысль ("с точки зрения написания") вдруг вкидывает ни с того ни с сего агро-кусок на кого-то. Естественно мои намеки никак не подействовали - вы попали в "типичную колею" и додумали остальное сами, а чувак просто сидит и улыбается, ведь ему ничего не пришлось делать - вы сами, создав поток глупости, ринулись в атаку.

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

Вот конструкция, которая позволяет легко агрить тру-программеров на других людей. Я ее привожу для тех, кто не вникал в подробности.

Код:


Код:
String b = "b";
StringBuilder sb = new StringBuilder();
sb.append("a"+b);
Она при компиляции преобразуется в конструкцию

Код:


Код:
String b = "b";
StringBuilder sb = new StringBuilder();
sb.append((new StringBuilder()).append("a").append(b).toString());
Я хотел сразу разложить все по полочкам, но готовый ответ сразу был бы не очевиден - нужен конкретный пример.

Эта тема - это и есть пример: вы были участниками типичного использования умных людей на простом шаблоне программирования.

Оказалось, что сделать это проще, чем многие думают и это работает.

Запомните этот навык и это чувство, когда вас втянули в ненужную для вас ситуацию.

Вывод: есть люди умнее или такие-же как вы, есть люди глупее вас, а есть люди, которые будут вас использовать.

Я ничего не придумал, просто показал это все в "объеме" с нетипичной для вас точки зрения и постарался "разложить по полочкам" общий сценарий.

Администрацию прошу закрыть тему, чтобы ключевое пояснение примера не закидали сообщениями и мое время не пропало зря. Спасибо за внимание.
 
Ответить с цитированием

  #150  
Старый 07.02.2016, 14:29
gattsu
Участник форума
Регистрация: 24.11.2015
Сообщений: 165
С нами: 5509192

Репутация: 1457
По умолчанию

Цитата:
Сообщение от Visor123  

Код:


Код:
String b = "b";
StringBuilder sb = new StringBuilder();
sb.append("a"+b);
серьезно, вместео sb.append("a").append(b) делать sb.append("a" + b) зачем

У Вас, что код как пророк Мохамед, его никто не должен читать, святой.

Тот код который в первом посте, является грязным, и в продакшн такое пускать нельзя.
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.

×

Внести депозит

Введите сумму USDT:

Принимается только USDT TRC20. Fake/Flash USDT не засчитывается.

×

Вывести депозит

Сумма USDT:

Ваш USDT TRC20 кошелек:

Заявка будет отправлена администратору. Комиссия форума: 2%.

×

Создать сделку

Продавец: ник или ID

Название сделки:

Сумма USDT:

Срок сделки, дней:

Кто платит комиссию:

Условия сделки:

После создания сделки средства будут зарезервированы в холде до завершения сделки.

×

Мои сделки

Загрузка...
×

Сделка


Загрузка чата...
×

ESCROW ADMIN PANEL

Загрузка...
Загрузка...