#конкатенация_строк — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #конкатенация_строк, aggregated by home.social.
-
Конкатенация строк в Java: почему советы 2008 года всё ещё работают — и почему этого уже недостаточно
Вы наверняка видели такой код - for (String s : data) { result += s; } сотни раз. Что с ним не так? Ведь он выглядит безобидно, почти идиоматично. Но в продакшене под нагрузкой этот цикл способен генерировать сотни мегабайт мусора в секунду - даже если сам результат никому не нужен. И казалось бы, проблема конкатенации строк в Java давно решена. Джунам говорят: используй StringBuilder и будет тебе щастье. А статьи десятилетней давности сравнивают + и append() в бенчмарках и ставят точку. В сегодняшней статье я копнул немного глубже и оказалось, что реальность сложнее. Вред не исчез - он принял новые, менее очевидные формы. Заглянуть
https://habr.com/ru/articles/1031336/
#конкатенация_строк #stringbuilder #invokedynamic #stringconcatfactory #escape_analysis #аллокации_памяти #сборщик_мусора_gc #String_Templates #java #jvm
-
Конкатенация строк в Java: почему советы 2008 года всё ещё работают — и почему этого уже недостаточно
Вы наверняка видели такой код - for (String s : data) { result += s; } сотни раз. Что с ним не так? Ведь он выглядит безобидно, почти идиоматично. Но в продакшене под нагрузкой этот цикл способен генерировать сотни мегабайт мусора в секунду - даже если сам результат никому не нужен. И казалось бы, проблема конкатенации строк в Java давно решена. Джунам говорят: используй StringBuilder и будет тебе щастье. А статьи десятилетней давности сравнивают + и append() в бенчмарках и ставят точку. В сегодняшней статье я копнул немного глубже и оказалось, что реальность сложнее. Вред не исчез - он принял новые, менее очевидные формы. Заглянуть
https://habr.com/ru/articles/1031336/
#конкатенация_строк #stringbuilder #invokedynamic #stringconcatfactory #escape_analysis #аллокации_памяти #сборщик_мусора_gc #String_Templates #java #jvm
-
Конкатенация строк в Java: почему советы 2008 года всё ещё работают — и почему этого уже недостаточно
Вы наверняка видели такой код - for (String s : data) { result += s; } сотни раз. Что с ним не так? Ведь он выглядит безобидно, почти идиоматично. Но в продакшене под нагрузкой этот цикл способен генерировать сотни мегабайт мусора в секунду - даже если сам результат никому не нужен. И казалось бы, проблема конкатенации строк в Java давно решена. Джунам говорят: используй StringBuilder и будет тебе щастье. А статьи десятилетней давности сравнивают + и append() в бенчмарках и ставят точку. В сегодняшней статье я копнул немного глубже и оказалось, что реальность сложнее. Вред не исчез - он принял новые, менее очевидные формы. Заглянуть
https://habr.com/ru/articles/1031336/
#конкатенация_строк #stringbuilder #invokedynamic #stringconcatfactory #escape_analysis #аллокации_памяти #сборщик_мусора_gc #String_Templates #java #jvm
-
Так как же всё-таки быстро конкатенировать строки в C++?
Всем практикующим программистам приходится конкатенировать строки. Именно конкатенировать, у нас не какой-то там JavaScript или PHP, у нас в C++ это называется вот таким заумным словом. Программисты на других языках без излишних мудрствований строки просто "складывают", даже не особо задумываясь об этой операции. Ведь что может быть проще, чем return "The answer is " + str_answer + ", count is " + count; Но если для скриптописателей простительно не думать о том, что стоит за такой простой записью, для опытного разработчика не приемлемо так безответственно подходить к такому важному вопросу. Опытный разработчик, представив такой код на C++, сразу видит ужасающую бездну проблем, которые может породить такой подход.
https://habr.com/ru/articles/993240/
#string #strings #concatenation #c++ #строки #конкатенация_строк
-
Так как же всё-таки быстро конкатенировать строки в C++?
Всем практикующим программистам приходится конкатенировать строки. Именно конкатенировать, у нас не какой-то там JavaScript или PHP, у нас в C++ это называется вот таким заумным словом. Программисты на других языках без излишних мудрствований строки просто "складывают", даже не особо задумываясь об этой операции. Ведь что может быть проще, чем return "The answer is " + str_answer + ", count is " + count; Но если для скриптописателей простительно не думать о том, что стоит за такой простой записью, для опытного разработчика не приемлемо так безответственно подходить к такому важному вопросу. Опытный разработчик, представив такой код на C++, сразу видит ужасающую бездну проблем, которые может породить такой подход.
https://habr.com/ru/articles/993240/
#string #strings #concatenation #c++ #строки #конкатенация_строк
-
Так как же всё-таки быстро конкатенировать строки в C++?
Всем практикующим программистам приходится конкатенировать строки. Именно конкатенировать, у нас не какой-то там JavaScript или PHP, у нас в C++ это называется вот таким заумным словом. Программисты на других языках без излишних мудрствований строки просто "складывают", даже не особо задумываясь об этой операции. Ведь что может быть проще, чем return "The answer is " + str_answer + ", count is " + count; Но если для скриптописателей простительно не думать о том, что стоит за такой простой записью, для опытного разработчика не приемлемо так безответственно подходить к такому важному вопросу. Опытный разработчик, представив такой код на C++, сразу видит ужасающую бездну проблем, которые может породить такой подход.
https://habr.com/ru/articles/993240/
#string #strings #concatenation #c++ #строки #конкатенация_строк
-
Так как же всё-таки быстро конкатенировать строки в C++?
Всем практикующим программистам приходится конкатенировать строки. Именно конкатенировать, у нас не какой-то там JavaScript или PHP, у нас в C++ это называется вот таким заумным словом. Программисты на других языках без излишних мудрствований строки просто "складывают", даже не особо задумываясь об этой операции. Ведь что может быть проще, чем return "The answer is " + str_answer + ", count is " + count; Но если для скриптописателей простительно не думать о том, что стоит за такой простой записью, для опытного разработчика не приемлемо так безответственно подходить к такому важному вопросу. Опытный разработчик, представив такой код на C++, сразу видит ужасающую бездну проблем, которые может породить такой подход.
https://habr.com/ru/articles/993240/
#string #strings #concatenation #c++ #строки #конкатенация_строк