Добро пожаловать в справочную систему библиотеки V Library.

<under construction>

Содержание

Обзор исходного кода библиотеки.

Цели создания библиотеки.

Соглашения о форматировании кода.

Организация библиотеки.

Алфавитный перечень типов данных.

Алфавитный перечень функций.

Алфавитный перечень классов.

Цели создания библиотеки.

Известно, что каждый программист со временем накапливает код, который затем постоянно перносит из одного проекта в другой. Со временем код "оттачивается": в нем устраняются ошибки, для него пишутся комментарии, код приводится в "удобочитаемый" вид.

Успешное использование такого кода - который со временем должен превратиться в "лицо программиста" - зависит от множества факторов. В настоящее время практически лишенной смысла является попытка написания, скажем, графической библиотеки, или библиотеки классов для организации оконного интерфейса. Сущестуют аналогичные продукты промышленного качества; однако зачастую в них (по мнению программиста !) не хватает нескольких мелочей ...

Работа начинается именно с "залатывания дыр" в программных интерфейсах промышленных библиотек. Можно привести массу примеров подобного "залатывания": "ручное" добавление размещаемого заголовка к метафайлу (кстати, VCL-евские классы по человечески с метафайлами НЕ РАБОТАЮТ); написание сканеров, разбирающих содержимое текстовых файлов; инкапсуляция громоздкого вспомогательного кода и т.д.

Со временем выясняется, что простое "залатывание" приносит мало пользы. Код, претендующий на простоту повторного использования, должен быть переносим как минимум в пределах одной платформы (например, существует масса разновидностей Win32 и масса компиляторов для Win32). Достижение переносимости даже в таком монимании - весьма непростая задача: сущестует множество отличий в реализациях Win32, а многие компиляторы для Win32 попросту генерируют неверные двоичные файлы (редактор ресурсов и компоновщик от WatcomC 11 не работают корректно ни на одной известной автору Win32 платформе; работоспособность под NT 3.51 проверить нет возможности). Однако пределом мечтаний программиста-"инструментальщика" является истинная кросплатформенность библиотеки.