30 éves a Python

20. február 1991-án Guido van Rossum az alt.sources csoportban publikálta a Python programozási nyelv első kiadását, amelyen 1989 decembere óta dolgozott egy szkriptnyelv létrehozására irányuló projekt részeként a rendszeradminisztrációs problémák megoldására. az Amoeba operációs rendszer, amely magasabb szintű lenne, mint a C, de a Bourne shelltől eltérően kényelmesebb hozzáférést biztosítana az OS rendszerhívásokhoz.

A projekt nevét a Monty Python vígjátékcsoport tiszteletére választották. Az első verzió bevezette az örökléssel, kivételkezeléssel, modulrendszerrel, valamint az alaptípuslistával, dict és str-vel rendelkező osztályok támogatását. A modulok és kivételek megvalósítását a Modula-3 nyelvből, a behúzás alapú kódolási stílust pedig az ABC nyelvből kölcsönöztük, amihez korábban Guido is hozzájárult.

A Python létrehozásakor Guidót a következő elvek vezérelték:

  • A fejlesztés során időt takarító elvek:
    • Hasznos ötletek kölcsönzése más projektekből.
    • Az egyszerűségre való törekvés, de túlzott leegyszerűsítés nélkül (Einshein elve: „Mindent a lehető legegyszerűbben kell megfogalmazni, de nem egyszerűbben”).
    • Az UNUX filozófiáját követve, miszerint a programok egy funkcionalitást valósítanak meg, de jól csinálják.
    • Ne aggódjon túl sokat a teljesítmény miatt, szükség esetén optimalizálni lehet.
    • Ne küzdj az uralkodó dolgok ellen, hanem menj az árral.
    • Kerülje a perfekcionizmust, általában elég az „elég jó” szint.
    • Néha a sarkokat le lehet vágni, különösen, ha valamit később lehet csinálni.
  • Egyéb elvek:
    • A megvalósításnak nem kell platformspecifikusnak lennie. Előfordulhat, hogy egyes funkciók nem mindig állnak rendelkezésre, de az alapvető funkcióknak mindenhol működniük kell.
    • Ne terhelje a felhasználókat olyan alkatrészekkel, amelyeket a gép kezelni tud.
    • Platformfüggetlen felhasználói kód támogatása és népszerűsítése, de a platformok képességeihez és szolgáltatásaihoz való hozzáférés korlátozása nélkül.
    • A nagy komplex rendszereknek többféle bővítési szintet kell biztosítaniuk.
    • A hibák nem lehetnek végzetesek és nem észlelhetők – a felhasználói kódnak képesnek kell lennie a hibák elkapására és kezelésére.
    • A felhasználói kód hibái nem befolyásolhatják a virtuális gép működését, és nem vezethetnek meghatározatlan értelmezői viselkedéshez és folyamatösszeomláshoz.

    Forrás: opennet.ru

Hozzászólás