![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| drug007 |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 3.11.2011 Репутация: нет Всего: 1 |
Изучаю boost::pool и решил для общего развития перевести документацию на русский, пример. Встал вопрос о переводе того или иного термина. Например такое предложение:
Forward declarations of all the exposed symbols for this library are in the header made inscope by #include <boost/pool/poolfwd.hpp>. если перевести буквально: Опережающие объявления всех доступных из других единиц трансляции (?!) символов библиотеки находятся в заголовочном файле, включаемым с помощью #include <boost/pool/poolfwd.hpp> Меня смущает слово "опережающие" и перевод терминов exposed и symbol (в данном контексте). Кто что скажет? Также как лучше перевести the include file guards - страж заголовочного файла? З.Ы. и ресурс слишком рекламистый, не посоветуете что-либо менее отвлекающее? |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 12 Всего: 459 |
drug007, я бы советовал вместо дословного перевода делать смысловой. Такой текст воспринимается намного лучше.
Опережающее вроде подходит, а вот "всех доступных из других единиц трансляции" мне не понятно даже по русски. exposed, я так понимаю, используется как синоним public . -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| boostcoder |
|
||||||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
это лучше не переводить. к примеру так:
да.
прям на википедии пиши. не? ;) Это сообщение отредактировал(а) boostcoder - 1.12.2011, 09:23 |
||||||
|
|||||||
| drug007 |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 3.11.2011 Репутация: нет Всего: 1 |
Согласен на счет смыслового перевода. Но первоначально все равно делаю близко к оригиналу, потом перечитываю и то, что не по-русски переписываю уже своими словами. Кстати, приходится обращать внимание на детали, что помогает самому лучше понять предмет, как в анекдоте - пока вам объяснял, сам уже понял.
Да, exposed именно в смысле public, но как это красиво перевести на русский? И symbols тут же не в значении "символ", а в смысле "конструкция", скорее всего. Надо будет попробовать википедию Это сообщение отредактировал(а) drug007 - 1.12.2011, 09:27 |
|||
|
||||
| boostcoder |
|
||||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
в переводе, exposed не нужен. это в английском без него предложение разорванное получится.
да, конструкция. но лучше оставить символ. в контексте, все равно ничего другого мне в голову не пришло. Добавлено через 3 минуты и 32 секунды в поиске вводишь "boost.pool", тебе говорят что такой страницы нет. и там есть красная ссылочка "Создать страницу". имхо, стабильнее и более популярного ресурса для доки не сыскать. |
||||
|
|||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 12 Всего: 459 |
drug007, боюсь что термин symbols слишком специфичен, в литературе часто так и пишут символ. symbol скорее это символьный идентификатор. Тут используется термин symbol в значении линковочных символов, т.е. языковых конструкций, которые попадают в объектный файл в символьном представлении вместо подстановки адреса.
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| drug007 |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 3.11.2011 Репутация: нет Всего: 1 |
Тогда сделаю так 'symbol' = "символ".
Что-то вики не дает сохранять изменения - одну страницу сохранил и все. :( Надеюсь это временно. Хмм... Что-то на вики меня встретили недружелюбно - статьи пометили как спам. Там можно размещать доки все-таки или нет? Вопрос там этот, конечно , тоже задам. Что-то с викой не очень дружно получается, но надежды не теряю. По крайней мере перевод делаю и возник такой вопрос (описывается упорядоченный pool, где указатели на свободные блоки памяти хранятся в сортированном по адресам блоков списке): However, freeing an object can be O(N) in the number of currently free blocks which can be prohibitively expensive in some situations. Я перевел как: Тем не менее, освобождение объекта может быть O(N) от текущего числа свободных блоков, которое может быть запредельно дорогим в некоторых ситуациях. Вот меня смущает перевод фрагмента "... in the number of currently free blocks..." Вообще здесь идет обсуждение того факта, что в упорядоченном списке свободных блоков памяти при освобождении объекта и появлении свободного блока, его нужно добавить в список свободных блоков, что может привести к итерации по всему списку этих свободных блоков, что не есть гуд. Или я не прав? Это сообщение отредактировал(а) drug007 - 1.12.2011, 14:01 |
|||
|
||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
как спам может быть до проверки админами. и зарегался? дай ссылку.
сам я никогда не создавал записи. дописывал/редактировал. как спам не помечали.
так?: Тем не менее, освобождение объекта может иметь сложность O(N) от текущего числа свободных блоков, которое может быть запредельно дорогим в некоторых ситуациях. прав. |
|||
|
||||
| UniBomb |
|
|||
|
Новичок ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 1754 Регистрация: 24.10.2006 Где: Санкт-Петербург Репутация: 2 Всего: 97 |
||||
|
||||
| drug007 |
|
||||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 3.11.2011 Репутация: нет Всего: 1 |
Викиучебник мне тоже уже посоветовали на самой вики, но теперь проблема в том, что вики не дает редактировать большие тексты, только буквально 10 предложений. Вчера весь день промучался - при чем эта проблема уже известна на той же вики, но полноценного решения не имеет. Решил пока не потерял запал на перевод заняться самим переводом, а выложить уже потом можно будет.
Например удаленная статья в вики - вообще обвинили в нарушении авторских прав. Чьи права я там нарушил? А вот сам викиучебник Но тут все криво, т.к. я еще не очень уверенно работаю в вики + недоступно полноценное редактирование.
Да, сложность как раз нужный термин. Спасибо за ответы. |
||||||
|
|||||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
||||
|
||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
drug007, пообщался я с модератором Википедии, и он извинился за то что не внимательно прочитал "Boost Software License", и сказал что страница будет восстановлена. Вот только нужно подать заявку админу. Об этом сейчас и треплюсь.
|
|||
|
||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
drug007, в общем, тут описан процесс подачи заявки.
|
|||
|
||||
| drug007 |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 3.11.2011 Репутация: нет Всего: 1 |
Спасибо за поддержку. Пока восстанавливать не буду - решил сосредоточиться именно на переводе, потому что времени не очень хватает. А там уже посмотрим - может оставить в виде викиучебника, а может на страницу выложить. |
|||
|
||||
| drug007 |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 3.11.2011 Репутация: нет Всего: 1 |
Подскажите, как правильнее перевести:
1) Simple segregated storage - Хранилище с простым разделением/разбиением? может какой-то соответствующий устоявшийся термин уже есть? 2) Simple segregated storage addresses both of these issues. Almost all memory overhead is done away with, and all allocations can take place in a small amount of (amortized) constant time. - как здесь перевести amortized - я не совсем понял. |
|||
|
||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
разбиением. приближенное/устредненное. |
|||
|
||||
| spyswamp |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 349 Регистрация: 18.8.2006 Репутация: 1 Всего: 7 |
Ого, вот это надмозг-стайл.
-------------------- - why you call it beta? - cuz it's betta then nothin' |
|||
|
||||
| drug007 |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 3.11.2011 Репутация: нет Всего: 1 |
Ваши варианты? |
|||
|
||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
http://ru.wikibooks.org/wiki/Boost.Pool
думаю, стОит добавить ссылку на источник. а вообще, замечательно потрудился! на википедии страницу восстановить не желаешь? зы раскидаю ссылку по известным мне сборникам переводов. |
|||
|
||||
| drug007 |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 3.11.2011 Репутация: нет Всего: 1 |
Спасибо за оценку и за продвижение ссылки! =) Правда я еще не закончил - у меня проблемы с редактированием, сохраняет результат редактирования даже не через раз, а через 10. Очень много времени уходит на пустое ожидания сохранения результатов. Поэтому все медленно идет. По той же причине пока не планирую восстанавливать страницу на википедии, хотя по идее это будет просто. Пока планирую завершить викиучебник в ближайшее время (как инет дома появится). З.Ы. Если держать и в википедии и в викиучебнике - не будет ли лишнего дублирования? |
|||
|
||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
||||
|
||||
| drug007 |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 3.11.2011 Репутация: нет Всего: 1 |
Не дают мне забыть про перевод доки к boost::pool
Может есть какой-то еще нюанс, что я упустил? |
|||
|
||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
все правильно.
я там кстати ссылку на буст.пул добавил ;) |
|||
|
||||
| drug007 |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 3.11.2011 Репутация: нет Всего: 1 |
Ок там это где? =) |
|||
|
||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
||||
|
||||
| drug007 |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 3.11.2011 Репутация: нет Всего: 1 |
Тьфу, точно, как не догадался? =) Скоро дело вообще "попрет". Вот бы еще какую статистику получить, пользуется ли народ учебником или нет. А еще бы обратную связь получить - ух! А то я сам чувствую иногда, что мало перевода, надо бы живых мыслей добавить. Да на все не замахнешься, а вот на "оживление" каких-то наиболее важных моментов можно было бы. |
|||
|
||||
| Absinthe |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 526 Регистрация: 4.5.2011 Репутация: 1 Всего: 11 |
Термины лучше не переводить. Так и писать транслитом.
Аббревиатуры НИ В КОЕМ СЛУЧАЕ не переводить. Только зараженный грибами мозг может перевести IDE как ИСР(В книге Программист-прагматик). |
|||
|
||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
||||
|
||||
| drug007 |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 3.11.2011 Репутация: нет Всего: 1 |
Про ИСР - хороший пример, как не надо делать. =) Но некоторые термины (как alignment и padding) лучше перевести - мне кажется выравнивание и заполнение понятнее будет алаймента и паддинга. На всякий случай я в скобках оставляю оригинальный термин. |
|||
|
||||
| drug007 |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 3.11.2011 Репутация: нет Всего: 1 |
Не могу точно перевести следующий текст (сам смысл не 100% понимаю):
New-выражение первым аргументом типа std::size_t передает функции выделения размер выделяемой памяти. Значение аргумента не должно быть меньше размера создаваемого объекта; значение может быть больше размера создаваемого объекта только если объект является массивом. Для массивов типов char и unsigned char разница(?) между результатом new-выражения и адресом, возвращаемым функцией выделения должна быть целым, кратным(??) наиболее строгим требованиям к выравниванию (3.9) объекта любого типа, чей размер не превышает размер создаваемого массива. [Примечание: В следствии того, что предполагается, что функции выделения возвращают указатели на хранилище, имеющее необходимое выравнивание для объектов любого типа, это ограничение на выделение массивов разрешает использование распространенной идиомы выделения символьных массивов, которые используются для размещения объекты других типов.] Вот мне самому не понятно, что это за разница и чему она должна быть равна. |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 63 Всего: 196 |
думаю речь о том, что выделенный массив char должен быть выровнен по самой строгой границе. Т.е. если объекты размером 8 байт должны быть выровнены по границе 64-х битного слова. Т.е. адрес приведенный к int должен делиться без остатка на 8.
|
|||
|
||||
| drug007 |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 3.11.2011 Репутация: нет Всего: 1 |
Это понятно. Непонятно что за разница имеется в виду между new-выражением и функцией выделения. Как следует из стандарта, new-выражение вызывает функцию выделения для непосредственного выделения памяти. При этом new-выражение знает о типе для которого выделяется память, а функция выделения нет. Т.е. возможно, что функция выделения выделит память невыравненную нужным образом и выравнивание должно выполнить new-выражение? Может быть это имеется в виду под разницей? Т.е. new-выражение должно выделить память для типа с выравниванием 8 байт, а функция выделения выделила блок памяти с адреса 0х0ААА4, т.е. выравненный по 4 байтной границе. Тогда new-выражение проигнорирует первые четыре байта и вернет не 0хААА4, а вернет 0хААА8? Может здесь это имеется в виду? В пользу моих логических рассуждений еще говорит фраза "...this constraint on array allocation overhead permits the common idiom...", буквально означающая "...это ограничение накладных расходов на выделение массивов позволяет использовать общую идиому..." |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 63 Всего: 196 |
drug007, в любом случае, malloc возвращает область выровненную по самой строгой границе. Если ты используешь ее, то расслабься.
|
|||
|
||||
| drug007 |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 3.11.2011 Репутация: нет Всего: 1 |
Да я вообще не напрягаюсь. Просто при переводе столкнулся с нюансом и теперь хочу это выяснить - честно говоря, лично я бы и без этого нюанса прожил, но поскольку перевод выложен для всех, чувствую ответственность, чтобы перевод был правильный, а не абы как. malloc как раз возвращает память с самым слабым выравниванием, подходящим для объектов любого типа - мы же тип объекта в нее не передаем, а только размер в байтах и она просто не в состоянии выровнять память по какому-либо конкретному типу. |
|||
|
||||
| bsa |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 63 Всего: 196 |
Это сообщение отредактировал(а) bsa - 26.1.2012, 10:33 |
||||
|
|||||
| drug007 |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 196 Регистрация: 3.11.2011 Репутация: нет Всего: 1 |
bsa, конечно же вы правы, именно строгое выравнивание.
Вообще, я решил оставить этот вопрос про разницу между результатом new-выражения и результатом функции выделения памяти - буду считать что понял и перевел правильно. А если неправильно - то все равно всем без разницы |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |