Wikimásolattükör

Ez a pascal.chat wikijének tükre. A szerkesztés, az előzmények és a bejelentkezés ott érhető el.

Overview of Free Pascal and Lazarus/hu

한국어 · Bahasa Indonesia · Deutsch · English · Español · Français · Italiano · Magyar · Polski · Português · Slovenčina · Suomi · Русский · 中文(中国) · 中文(台灣) · 日本語

A Lazarus és a Free Pascal áttekintése

A Free Pascal (FPC) egy nyílt forráskódú fordító két említésre méltó tulajdonsággal: magas szintű Delphi kompatibilitás, és a több platformon való elérhetőség, beleértve a Windows-t, Mac OS X-et, és a Linux-ot. A Free Pascal Deplhi-vel való kompatibilitása nem csak azt jelenti, hogy ugyanazt az objektum orientált pascal nyelvet támogatja, hanem, hogy rengeteget ugyanazokból a könyvtárakból, nagy teljesítményű rutinokból és osztályokból, amelyeket már megszokhattunk a Delphi-ben. Ebbe beleértendőek azok a megszokott unit-ok, mint például a System, SysUtils, StrUtils, DateUtils, Classes, Variants, Math, IniFiles és a Registry, amelyek a Free Pascal részei minden támogatott platformon. A Free Pascal olyan unit-okat is tartalmaz, mint például a Windows, ShellAPI, BaseUnix, Unix és a DynLibs, amelyek az operációs rendszer-specifikus lehetőség kihasználását teszik lehetővé. Ez a több, mint egy tucat unit építi fel azt a magot, amelyet úgy nevezünk, hogy a Free Pascal futásidejű könyvtár (RTL - Run-time Library).

A Lazarus egy nyílt forráskódú fejlesztőrendszer, ami a Free Pascal fordítóra épül, kiegészítve egy integrált fejlesztőkörnyezettel, ami szintakszis kiemelést, és vizuális form tervezést is tartalmaz, úgy mint egy komponens könyvtárat, ami nagyban kompatibilis a Delphi vizuális komponens könyvtárával (VCL). A Lazarus komponens könyvtár (LCL) olyan VCL-lel ekvivalens komponenseket tartalmaz, amelyeket Delphi-ben már megszokhattunk, úgymint form-ok, gombok, szövegdobozok, és minden egyéb, amiket grafikus felületű (GUI) alkalmazások fejlesztéséhez használhatunk.

A Free Pascal és a Lazarus is pascal-ban íródott. A teljes forráskód elérhető nem csak a Free Pascal fordítóhoz és a Lazarus IDE-hez, de az összes unit.hoz is, amelyek a Free Pascal RTL-t és a Lazarus LCL-t alkotják.

Mint a Delphi, a Free Pascal és a Lazarus is általános célú programozó eszközök, ami azt jelenti, hogy sokféle program fejleszthető velük, beleértve a következőket:

Szöveges alkalmazások

A szöveges alkalmazásoknak nincs grafikus kezelőfelületük. Ehelyett általában a konzolból vannak futtatva, a konzolról olvassák a bemenetüket, és oda is írják a kimenetüket. Windows-ban konzol alatt általában az ablakban futó parancssort értjük. OS X-ben és Linux-on konzol alatt egy terminál ablakot értünk. A konzolos alkalmazások közé olyan dolgok tartoznak, mint a kis segédprogramok, például a Windows FC (file compare - fájl összehasonlító) program, vagy a Unix-os cd és cp parancsok. A konzolos alkalmazások lehetnek nagy teljesítményű számzabáló, modellező, vagy adatfeldolgozó programok is, amelyeknek nem szükséges csinos grafikus kezelőfelület, mert más programok indítják őket, vagy batch fájlok (vagy shell szkriptek unix/linux-on). A Free Pascal fordító és a segédprogramjai mind konzolos alkalmazások, ami azt jelenti, hogy konzolról, batch fájlból vagy a Lazarus IDE-ből futtathatók.

Konzolos alkalmazásokat akár egy szövegszerkesztővel és a Free Pascal fordítóval is készíthetsz. Nincs szükséged a Lazarus-ra konzolos alkalmazások fejlesztéséhez. Habár, ha jobban szeretsz egy integrált környezetben dolgozni, használhatod a Lazarus-t konzolos projekt létrehozásához, és utána szerkesztheted és fordíthatod a kódot vele.

Dinamikusan betölthető függvénytárak (dll-ek)

A dinamikusan betölthető függvénytár általában egy lefordított függvénygyűjtemény, amit más programok meghívhatnak. Ahogy a név is sugallja, a függvénytár nincs összefűzve a futtatható fájloddal, helyette futásidőben kerül betöltésre. Windows-ban a függvénytár fájlnak .dll kiterjesztése van (dynamic-link library, vagy DLL). OS X-ben a függvénytár fájloknak .dylib kiterjesztésük van (dynamic shared library). Linux-on a függvénytár fájlnak .so kiterjesztése van (shared object library). A dinamikusan betölthető függvénytárakat tipikusan más programok kiegészítéseiként, függvénytárak fejlesztéséhez, amelyeket más nyelveken megírt programokban (pl. C és C++) is be lehet tölteni, vagy nagy projektek részekre való osztásához használhatunk. Maga a Windows is DLL-ek százaiból épül fel, úgymint sok más nagy alkalmazás, például az OpenOffice.org.

Úgy, mint a konzolos alkalmazásokban, csak egy szövegszerkesztőre és a Free Pascal fordítóra van szükséged függvénytárak fejlesztéséhez, de szintén használhatod a Lazarus-t függvénytár projektek létrehozásához és fejlesztéséhez.

Windows-on a DLL-eket olyan rossz előítélet övezi körül, hogy túl komplexek, és nem stabilak. Ez inkább a telepítésük módjának köszönhető, mint a DLL-eknek maguknak. Valójában, mivel a DLL-ekkel való információcsere szabályos, egyszerű adattípusokon keresztül valósul meg (nyelv-specifikus objektumok és struktúrák helyett), a programozókat arra kényszeríti, hogy jobban odafigyeljenek arra, hogy mit csinálnak. Ha mindent jól csinálnak, jobb, stabilabb program lesz az eredmény.

Grafikus felhasználói felületű (GUI) alkalmazások

A legtöbb program, amit nap, mint nap használunk grafikus felülettel rendelkezik, beleértve a szövegszerkesztőket, web böngészőket, táblázatkezelőket, és még sok fejlesztőeszközt. A Lazarus és a Delphi is jó példa a jól felszerelt GUI alkalmazásra. Grafikus felületű alkalmazások Lazarus-szal való fejlesztésénél nem csak Pascal kódú unit-okat fejlesztesz, form-ot is tervezel, ami vizuális vezérlőket tartalmaz, pl. gombokat, és listadobozokat. Éppúgy, mint a Delphi-ben, a form tervezés vizuálisan történik. A vezérlők tulajdonságai az IDE-ben és a kódban is megadhatók.


From the Free Pascal wiki, page "Overview of Free Pascal and Lazarus/hu", as it stood on 2016-01-03 after a change by Gábor, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.

2. változat, utoljára módosította: WikiArchive, .