Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Содержание
Введение
Visual Component Library (VCL) — это объектно-ориентированный каркас, основанный на визуальных компонентах, для разработки пользовательского интерфейса приложений Microsoft Windows. Он написан на Object Pascal.
Visual Library
The Visual Component Library (VCL) is a visual component based object oriented framework for developing the user interface of Microsoft Windows applications. It is written in Object Pascal.
Технология
VCL формирует иерархию классов с общим предком – классом TComponent (который наследуется от TObject, корневого класса в Delphi Object Pascal). Это распространенный подход, используемый языками программирования Java, Smalltalk, C# и многими другими объектно-ориентированными языками. Компоненты VCL охватывают элементы управления Windows, такие как окна (класс TForm), элементы управления (например, классы TButton, TCheckBox, TLabel), а также доступ к базам данных (например, компоненты ADO или IBX) или интернет-соединения (компоненты Indy). Компонентный подход позволяет программистам расширять VCL множеством визуальных и невизуальных дополнительных компонентов. Существует большое количество бесплатных и коммерческих пакетов компонентов, среди которых JEDI, TMS, Developer Express, Mitov Software, Raize Software, TurboPower, IOComp, SDL, DA SOFT Technologies и многие другие. Хотя не все компоненты VCL потокобезопасны, VCL также поддерживает многопоточность. Примером является встроенная поддержка многопоточности в библиотеке OpenWire VCL. VCL обеспечивает нативную поддержку модели PME (свойства, методы и события) на уровне .NET. Значительная часть архитектуры .NET, особенно WinForms, была смоделирована на основе VCL. Один из главных архитекторов первых версий Delphi, Андерс Хейлсберг, был нанят Microsoft и стал одним из главных архитекторов .NET. Это привело к судебному разбирательству: в то время (1996 год) «Borland утверждала, что Microsoft наняла 34 сотрудника Borland за последние 30 месяцев с целью похищения коммерческих секретов Borland. Borland также заявляла, что Microsoft предлагала и предоставляла дорогие стимулы работникам Borland. В двух случаях вознаграждения превышали 1 миллион долларов». По данным delphi.about.com, бонус в случае с Андерсом составил три миллиона долларов. Многие разработчики Delphi находят C# довольно знакомым благодаря сходству в дизайне.
VCL forms a class hierarchy with a common ancestor, the TComponent class (which inherits from TObject, the root class in Delphi Object Pascal). This is a common approach shared by the Java programming language, Smalltalk, C# and many other object oriented programming languages. VCL components cover Windows controls like windows (TForm class), controls (e. g., TButton, TCheckBox, TLabel classes) as well as database access (e. g., ADO or IBX components) or Internet connections (Indy components). The component approach allows programmers to extend the VCL with many visual and non visual additional components. There is a large number of free and commercial component packages. Among them are JEDI, TMS, Developer Express, Mitov Software, Raize Software, TurboPower, IOComp, SDL, DA SOFT Technologies and many others. While not all VCL components are thread safe, VCL supports multi threading too. One example is the built in multi threading support of the OpenWire VCL library. VCL provides native support for PME (properties, methods and events) model at the NET level. Much of the NET design, especially WinForms, is modeled after the VCL. One of the main architects of the first Delphi versions, Anders Hejlsberg, was hired by Microsoft and became one of the main architects of NET. This became the subject of a lawsuit: at the time (1996), "Borland alleged that Microsoft had hired 34 Borland employees over the past 30 months in order to steal Borland trade secrets. Borland also claimed that Microsoft offered and delivered expensive lures to Borland workers. In two cases, incentives topping $1 million were involved." According to delphi. about. com, the bonus was three million dollars in Anders' case. Many Delphi developers find C# quite familiar, due to the design similarities.
Связанные рамки
Кроссплатформенный эквивалент VCL, называемый CLX (Component Library for Cross Platform), позже был разработан для использования в Delphi, C++Builder и Kylix в 2000–2001 годах. Однако, разработка была прекращена. Вторая кроссплатформенная среда разработки, FireMonkey, была интегрирована в Delphi и C++Builder XE2 в 2011 году. FireMonkey – это векторная среда разработки, подобная WPF, для создания пользовательских интерфейсов для Windows, OSX, iOS и Android. Проект Lazarus имеет переносимый (*nix, OS/X, Win32/64+wince) эквивалент под названием LCL, который уже функционировал, когда появились Kylix и CLX. Проект придерживался выбранного направления и не использовал Kylix (и позднее FMX). OpenOffice.org, а следовательно, и LibreOffice, содержат несвязанную графическую библиотеку под названием Visual Class Library (VCL).
A cross platform equivalent of the VCL, called CLX (Component Library for Cross Platform), was later developed for use in Delphi, C++Builder and Kylix in 2000–2001. However, it was abandoned. A second cross platform framework, FireMonkey, was integrated into Delphi and C++Builder XE2 in 2011. FireMonkey is a vector based WPF like framework for UIs on Windows, OSX, iOS and Android. The Lazarus project has a portable (*nix, OS/X, Win32/64+wince) equivalent called LCL, which was already working when Kylix and CLX emerged. The project maintained its course and ignored Kylix (and later FMX). OpenOffice. org and thus LibreOffice contain an unrelated graphic library called Visual Class Library (VCL).