Yoksel: ИспользуемыеКомпоненты ...
SourceForge.net Logo

Home Page | Изменения / НовыеКомментарии / Справка / Помочь проекту | Вход:  Пароль:  

Используемые компоненты


Boost – набор библиотек различной степени полезности и качества, расширяющих возможности стандартной библиотеки C++. Серьезно облегчает жизнь в ряде случаев.


STLport – одна из реализаций стандартной библиотеки C++. Отличается качеством реализации и высокой скоростью работы. По этим параметрам превосходит реализацию STL в новых версиях Visual Studio. Не говоря уже об STL в VC6. Может работать в целом ряде различных операционных систем, обеспечивая одинаковое поведение программы.


CxImage – достаточно удачная и широко используемая библиотека для работы с изображениями из C++. Правда, пришлось столкнуться с не совсем удачной архитектурой этой библиотеки, из-за чего возникли некоторые проблемы с расширением ее под свои задачи. Также не все форматы DIB поддерживаются. Вернее, не поддерживаются некоторые достаточно интересные форматы.


Comet – весьма интересная библиотека для работы с COM. Сильный конкурент ATL. Реально серьезно упрощает работу с COM в ряде случаев. Содержит аналог import'а для TLB-файлов, при помощи которого генерирует обертки для интерфейсов и COM-классов, определенных в библиотеке типов. Однако, и содержит ряд (обходимых) проблем. Самая серьезная – код с Comet не компилируется современными компиляторами, поэтому нужно в ряде мест исправлять руками. Если знания C++ у вас недостаточно сильны, то лучше рассмотреть использование ATL. Или можно попробовать взять исправленный код Comet из проекта Yoksel. Другая проблема – некорректный генерируемый код в некоторых особо сложных случаях. Например, для одинэсного интерфейса IExtWndsSupport (содержащего параметры типа HWND) Comet создал довольно маловразумительный некомпилирующийся код. Но в целом библиотека очень удачная и интересная. В частности, Comet будет работать и с GCC, тогда как возможность Студии import'а для TLB-файлов генерит код, использующий расширения компилятора MSVC. Поэтому данный код будет работать только с MSVC или совместимым компилятором.


Omake – крайне удачная система сборки. Предоставляет настолько широкие возможности по управлению процессом сборки, что возможности управления сборкой Visual Studio после Omake представляются крайне ограниченными (если не сказать убогими). Omake можно представлять себе как аналог обычного make, к которому приделаны возможности генерить правила сборки при помощи крайне мощного специализированного языка. Возможности данного языка во многом сходны с возможностями Objective Caml, только язык Omake более сходен с языком, который используется при написании make-файлов. Впрочем, Omake имеет и заметные недостатки. Например, исходная поставка Omake содержит достаточно неудачный вариант скрипта для сборки проектов C++. По сути его надо переписывать почти с нуля, что и пришлось проделать. Другой недостаток – сложность вхождения для «визуальщиков». Сборка на make-файлах по идеологии сильно отличается от сборки в Visual Studio. Также имеются некоторые баги. Например, из-за одного бага пришлось перейти с неявных правил сборки на полностью явные. Также версия в бинарниках может подвисать в процессах во время сборки. Этот баг исправляется при помощи сборки Omake из исходников, которые можно взять в репозитории этого проекта. Переход на Omake стал огромным шагом для проекта – значение этого шага переоценить невозможно. Был устранен целый ряд проблем старого варианта сборки (на Visual Studio) и получен ряд новых возможностей, которые были задействованы сразу после перехода и постепенно задействуются сейчас.


Компилятор Intel C++ – отличный компилятор, отлично поддерживающий современный стандарт C++. При этом он позволяет создавать модули, совместимые со старыми библиотеками C++, которые использует 1С:Предприятие 7.7. Это позволяет использовать возможность современного C++ и одновременно не испытывать каких-либо проблем из-за возможных несовместимостей новых CRT с CRT в 1С.


MFC – весьма архаичная, но стабильная и качественная библиотека для разработки Windows-приложений. Избавляет от реализации огромного количества обвязочного кода во многих случаях, позволяя больше сосредоточиться на реальной задаче.


ATL – библиотека для работы с COM. В проекте задействуется эпизодически.


Страницы, ссылающиеся на данную:
HomePage


 
Файлов нет. [Показать файлы/форму]
Комментариев нет. [Показать комментарии/форму]