Miért vágó

Miért Clipper. Miért sok ezer programozó használja ezt a nyelvet alkalmazások létrehozásához, miért fejleszti a fejlesztők a világ minden táján a Clipper-t, és dolgoznak új Clipper-kompatibilis kompilátorok létrehozásán. Valóban reménytelenül elavult, és csak azok, akik nem tudnak, vagy nem akarnak újragondolni, dolgoznak rajta, ahogy sokan hisznek?

Tehát miért Clipper.
Röviden, mert ez egy magas szintű nyelv (magasabb, mint a C és Pascal), amely lehetővé teszi, hogy hozzon létre egy komoly alkalmazás, amely középpontjában a probléma végrehajtása sok technikai részletet, mely kizárólag a logika a probléma kiküszöbölése.
Mert ötvözi az értelmezett típusú nyelvek erejét és a fordított nyelvek sebességét.
Mert lehetővé teszi adatvezérelt alkalmazások létrehozását.

Úgy vélik, hogy olyan modern fejlesztőeszközök, mint a Delphi, a Visual C stb. Lehetővé teszik az alkalmazások gyors és egyszerű létrehozását. Sőt, még a kezdő is, többször kattintva az egér, hozzon létre ezeket az eszközöket egy szép GUI program, mint a Hello, világ. De egy nagy alkalmazás kifejlesztéséhez sok kódsorozatot kell írni. A vizuális eszközök itt nem segítenek. És azt is vállalom, hogy azt mondhatom, hogy a Clippernél gyorsabb, mint a C és a Pascal esetében.

A léptető lehetővé teszi változók és tömbök dinamikus létrehozását, ahogy a program előrehalad:

nbspnbspnbspnbspnbspnbspnbspnbsp varname: = "NewVar"
nbspnbspnbspnbspnbspnbspnbspnbsp Privát varname
nbspnbspnbspnbspnbspnbspnbspnbsp varname: =.

nbspnbspnbspnbspnbspnbspnbspnbsp Helyi aMenu: = <>
nbspnbspnbspnbspnbspnbspnbspnbsp Aadd (aMenu, <"New",> )
nbspnbspnbspnbspnbspnbspnbspnbsp Aadd (aMenu, <"Open",> )
nbspnbspnbspnbspnbspnbspnbspnbsp Aadd (aMenu, <"Options", <> )
nbspnbspnbspnbspnbspnbspnbspnbsp Aadd (aMenu [3,2], <"Screen Options",> )
nbspnbspnbspnbspnbspnbspnbspnbsp.

A Clipper egyik legfontosabb jellemzője makrók és kódblokkok. A változót a Clipper kódhoz rendelheti hozzá, majd végrehajthatja azt:

nbspnbspnbspnbspnbspnbspnbspnbsp cCode: = "NéhányFunkció (x, y)"
nbspnbspnbspnbspnbspnbspnbspnbsp result: = ccode

Ha kell végrehajtani ezt a sort többször is, minden egyes alkalommal, nem időt tölteni az értelmezés, akkor fordítsd le egy blokk-kódot, majd végre úgy, hogy a szükséges paramétereket:

nbspnbspnbspnbspnbspnbspnbspnbsp cCode: = "NéhányFunkció (x, y)"
nbspnbspnbspnbspnbspnbspnbspnbsp block: = ( "")
nbspnbspnbspnbspnbspnbspnbspnbsp Eval (blokk, x, y)

A kóddal ellátott vonalak a programon kívül is tárolhatók, például az adatbázisban - ez az adatvezérelt alkalmazás.
Szkripteket írhat a Clipperre és tárolhatja azokat szöveges fájlokban, így a program futási időben végrehajtja őket. Szkripteket használhat fájlokban - jelentések, bemeneti űrlapok, ini-fájlok leírása.
Így kiegészítheti és módosíthatja alkalmazásának képességeit anélkül, hogy módosítaná.

A vágógép nagyon hatékony és kényelmes képernyő-I / O rendszerrel rendelkezik:

nbspnbspnbspnbspnbspnbspnbspnbsp @ y, x GET somevar PICTURE WHEN VALID

Itt megadja mind a beviteli változó sablont, mind a bevitel előfeltételét, valamint a bevitel helyességének ellenőrzését. Valójában e rendszer lehetőségei sokkal szélesebbek, de itt nem az a hely, ahol minden részletét meg lehet vitatni.

A vágó nagyon kényelmes eszközökkel dolgozik adatbázisokkal. Tartalmaz egy beépített RDD rendszert - a cserélhető adatmeghajtó, amely lehetővé teszi különböző típusú adatfájlok és indexek használatát ugyanazon parancsok és funkciók használatával.

Az erőteljes előfeldolgozó lehetővé teszi új parancsok létrehozását és felhasználását a programokban. Íme egy példa egy parancs használatára, amely megnyitja a főablakot a FiveWin-ból: egy könyvtár a Windows GUI-alkalmazások létrehozásához:

nbspnbspnbspnbspnbspnbspnbspnbsp DEFINE WINDOW oWndMain 1, 1-től 22-ig, 75-ig;
nbspnbspnbspnbspnbspnbspnbspnbspnbspnbsp TITLE "MyApplication";
nbspnbspnbspnbspnbspnbspnbspnbspnbspnbsp MENU MMenu (msmenu) ICON oIcon MDI

Mondtam itt a fő jellemzői a Clipper, amit értékelni a legtöbb, és ami hiányzik más nyelveken. Elég csak megemlíteni a rendszer bővítését Clipper (C API szerelő API), ahol a Clipper van írva a C és assembly számos további modulokat kiterjeszti vozmozhsti - GUI könyvtár RDD, a könyvtár hálózati funkciók, tömörítés / data dekompressziós, olvasás / nyomtatás bar -Codes.
Mindez lehetővé teszi, hogy írjon a Clipper nagy komoly alkalmazásokra - és sok ilyen alkalmazás íródott és sikeresen működik szerte a világon.

Most szeretnék beszélni az elmúlt években a Klipper körül létrehozott mítoszokról. Mítosz:
A lehúzó a DOS nyelv, és így meghal. Valójában a Clipper különböző platformokon létezik különböző implementációkban:

Harbour - többplatformos Clipper-kompatibilis fordító (Win32 / 64, Unix, Linux, OSX, OS / 2), nyílt forrású projekt;

Clip-Clipper-kompatibilis fordító Linux / Unix-hoz;

Flagship - Clipper a Unix platformhoz;

Három mítosz:
A Clipper számára a modern technológia világának ajtajai zárva vannak. Nem is igaz. A 32 bites Clipper implementációk lehetővé teszik számukra a felhasználást.

Mítosz Négy:
A vágó lehetővé teszi, hogy csak az elavult xBase adatfájlokkal dolgozzon. Kész vagyok azzal érvelni, hogy az xBase adatbázisok elavultak, de ez egy másik beszélgetés témája.
Még a DOS Clipper is lehetővé teszi, hogy különböző típusú adatokkal dolgozzon az RDD használatával - RDD-k vannak különböző SQL DBMS-khez.
A 32 bites Clipper implementációk különböző DBMS-eket használnak mind az RDD, mind pedig az ODBC és a natív API-k révén.
Ismét szeretném hangsúlyozni, ez egy nagyon fontos, de gyakran figyelmen kívül hagyott pont, Clipper - elsősorban programozási nyelv, és bár eredetileg alkalmazására összpontosított xBase adatfájlok és hatékony eszközöket velük dolgozni, semmi megállás, hogy írjon neki egy alkalmazást más típusú adatbázisok.

Mindez most már. Ez az, ami az elméjében, az első lélegzetvételnél történt ... :).
Írja. Remélem, hogy véleménye és kérdései segítenek a rövid cikk kiegészítésében.

Kapcsolódó cikkek