Проектирование именования API
API спроектирован для лёгкого использования и согласованности. Простота использования измеряется количеством вызовов для достижения конкретного действия высокого уровня.
Схема именования
Библиотека использует простую схему именования, которая использует распространённые аббревиатуры, чтобы имена были короткими, но информативными. Начиная с версии 0.8.2, многие символы были переименованы в соответствии с этой схемой. Конечная цель состоит в том, чтобы программист мог предположить имя.
| Английское слово | Использовать | Примечания |
|---|---|---|
| initialize | initT |
init используется для создания типа значения T
|
| new | newP |
new используется для создания ссылочного типа P
|
| find | find | должен возвращать позицию, где что-то было найдено; для булевого результата используйте contains
|
| contains | contains | часто сокращение от find() >= 0
|
| append | add | используйте add вместо append
|
| compare | cmp | должен возвращать целое число со < 0 == 0 или > 0 семантикой; для булевого результата используйте sameXYZ
|
| put | put, []=
|
рассмотрите перегрузку []= для put |
| get | get, []
|
рассмотрите перегрузку [] для get; рассмотрите возможность не использовать get в качестве префикса: len вместо getLen
|
| length | len | также используется для количества элементов |
| size | size, len | size должен относиться к размеру в байтах |
| capacity | cap | |
| memory | mem | подразумевает операцию низкого уровня |
| items | items | стандартный итератор по коллекции |
| pairs | pairs | итератор по парам (ключ, значение) |
| delete | delete, del | del предполагается быстрее, чем delete, потому что не сохраняет порядок; delete сохраняет порядок |
| remove | delete, del | в настоящее время несогласован |
| remove-and-return | pop |
Table/TableRef псевдоним для take
|
| include | incl | |
| exclude | excl | |
| command | cmd | |
| execute | exec | |
| environment | env | |
| variable | var | |
| value | value, val | val предпочтительнее, в настоящее время несогласован |
| executable | exe | |
| directory | dir | |
| path | path | path — это строка "/usr/bin" (например), dir — содержимое "/usr/bin"; в настоящее время несогласован |
| extension | ext | |
| separator | sep | |
| column | col, column | col предпочтительнее, в настоящее время несогласован |
| application | app | |
| configuration | cfg | |
| message | msg | |
| argument | arg | |
| object | obj | |
| parameter | param | |
| operator | opr | |
| procedure | proc | |
| function | func | |
| coordinate | coord | |
| rectangle | rect | |
| point | point | |
| symbol | sym | |
| literal | lit | |
| string | str | |
| identifier | ident | |
| indentation | indent |
© 2006–2021 Andreas Rumpf
Licensed under the MIT License.
https://nim-lang.org/docs/apis.html