Немного теории.
Работа со стороками. Самый базовый элемент работы любой платформы. Конкатенация (соединение строк). Казалось бы - ну что может быть проще и однозначнее? Ан нет. Выражение T = "А"+"Б"; (если оно не вычислено на этапе компиляции/разбора) требует выделения памяти для "А", памяти для "Б", анализа длин "А" и "Б", выделение памяти для T,
(
Read more... )
2. Строки immutable, насколько я помню не только в доднед, но и в жабе, да и многих других средах. Подозреваю, что когда принималось решение, то выбор был между эффективностью изменябельных и простотой и надёжностью неизменябельных.
3. В описанную проблему в 1С на самом деле очень сложно уткнуться. Случаев, когда надо копировать/соединять строки многократно - раз-два и обчёлся. А учитывая, что даже просто передать управление на сервер приложения и вернуть обратно на клиент уже стоит почти 1 мс, то экономить на спичках просто нет смысла - в 99% случаев можно поднять производительность куда более очевидными способами (особенно, если учесть, что с кодом потом будет работать типичный программист 1С, 25% которых не в курсе что у таблиц в БД могут быть индексы).
Reply
Тема хорошая, заставляет подумать над простыми вещами.
Reply
Reply
Leave a comment