KOL

Az oldal jelenlegi verzióját még nem ellenőrizték tapasztalt közreműködők, és jelentősen eltérhet a 2019. június 1-jén felülvizsgált verziótól ; az ellenőrzések 7 szerkesztést igényelnek .
KOL
Típusú Könyvtár
Fejlesztő Vlagyimir Kladov
Beírva Pascal
Operációs rendszer Windows , Windows Mobile , Linux
legújabb verzió 3.23.5 (2015.02.27)
Állapot aktív [1]
Engedély Ingyenes szoftver
Weboldal sourceforge.net/projects…

A KOL (Key Objects Library) egy objektum típusú könyvtár Delphi és Lazarus környezetben való programozáshoz . A KOL fő célja a végleges program ( Win32 , GUI ) méretének 5-10-szeres csökkentése ahhoz képest, amit a VCL könyvtár ad . A Delphi összes 32 bites verziója támogatott , a Delphi 2-től a BDS 2010-ig.

Az MCK (Mirror Classes Kit) tükörosztályok készlete, amely lehetővé teszi egy projekt vizuális fejlesztését a KOL könyvtár alapján. Az MCK komponensek a komponensek palettára vannak telepítve, a velük való munka ugyanúgy történik, mint a Delphiben a vizuális fejlesztés során. Az összeállított projektben a vizuális komponenseket a KOL nem vizuális megfelelői váltják fel. Az MCK használata ugyanúgy csökkenti a végrehajtható program méretét, mint a KOL nem vizuális használata. Előnye a vizuális fejlesztés, hátránya a Delphi verziótól való függés (Delphi2, Delph3, Delphi4, Delphi5, Delphi6, Delphi7, BDS 2005-2012, Kylix és Free Pascal Compiler 1.0.5 és újabb támogatott).

A KOL projektet Vladimir Kladov programozó irányítja körülbelül tíz éve. A KOL és MCK projektek több száz komponenst tartalmaznak.

Létrehozás oka

Az egyik probléma az olyan rendszerekkel, mint a RAD  , az alkalmazás végrehajtható fájljának mérete. Ennek fő hibája az OOP technológiák vizuális tervezési könyvtárak ( VCL , MFC , Qt ) általi megvalósítása. Ennek egyik oka a nagy absztrakciós öröklődési rendszer, amely jelentősen megnöveli az alaposztályok kódját. Tekintettel a VCL grafikus komponensek meglehetősen lenyűgöző hierarchiájára, nagy méretük teljesen érthető. A második ok a virtuális metódusok Delphi fordító általi megvalósítása . A közönséges, nem virtuális metódusokat a Delphi a linkidőben kizárhatja, ha a kódban sehol nem hívják meg őket. A virtuális metódusok a VMT-ben keménykódolásúak, amelyek méretét a fordító nem tudja újraszámolni, így a virtuális metódusok mindig benne vannak a lefordított kódban, még akkor is, ha ténylegesen nem hívják sehova.

A KOL/MCK fejlesztő kompromisszumos megoldást tudott kínálni, amely a VCL analógját adja a látványtervezés lehetőségével, de a végrehajtható modul kimeneti mérete 5-10-szer kisebb, mint a VCL esetében. Mind az assembler számos szakaszának optimalizálása, mind egy érdekes megoldás a hagyományos értelemben vett öröklődés tényleges elutasításával szerepet játszott: az összes vizuális KOL komponens egyetlen hatalmas TControl példánya, amely megvalósítja az operációs rendszer összes interfész elemének funkcionalitását. egyszer. Azt mondhatjuk, hogy a KOL megoldás egy OO kiegészítő az ablak fogantyúja (fogantyúja) felett "a homlokon", ami nem tesz különbséget az interfészelemek különböző osztályai között, ahogy maga az operációs rendszer sem. A KOL valószínűleg az egyetlen objektum-orientált könyvtár ilyen architektúrával.

XHelpGen

A KOL könyvtárhoz (pontosabban kezdetben elődjéhez, az XCL könyvtárhoz) Vladimir Kladov kifejlesztette az XHelpGen dokumentációgenerátort, amelynek elve hasonló a Doxygenhez .

A súgófájlok {* }a modulok interfész részében a forrásszövegekben elhelyezett megjegyzések alapján automatikusan generálódnak. (a szimbólum *nem kötelező, és bármilyen mással helyettesíthető; emellett többféle szimbólum is használható, például súgófájlok lokalizálására).

A generálás automatikusan történik a forráskódhoz fűzött megjegyzések alapján ( Delphi Pascal nyelven ), és akkor történik meg, amikor az xHelpGen indításkor észleli, hogy a vizsgált könyvtárban lévő forrásfájlok megváltoztak. A súgó HTML formátumban készül, és bármely böngészőből megtekinthető .

Irodalom

Lásd még

Jegyzetek

  1. *javítás

Linkek