Më 20 shkurt 1991, Guido van Rossum publikoi në grupin alt.sources numrin e parë të gjuhës së programimit Python, për të cilën kishte punuar që nga dhjetori i vitit 1989 në kuadër të një projekti për krijimin e një gjuhë skenari për zgjidhjen e detyrave të administratës së sistemit në sistemin operativ Amoeba, që do të ishte më i avancuar se C, por ndryshe nga Bourne shell, do të ofronte një qasje më të lehtë për thirrjet sistemore të OS-së.
Emri për projektin u zgjodh në nder të grupit komik Monty Python. Në versionin e parë, u implementua mbështetje për klasat me trashëgim, trajtimin e përjashtimeve, sistemin e moduleve dhe tipet bazë list, dict dhe str. Implementimi i moduleve dhe përjashtimeve u huazua nga gjuha Modula-3, ndërsa stili i kodimit me hapësira ka bazë nga gjuha ABC, në të cilën Guido kishte marrë pjesë më parë në zhvillim.
Në procesin e krijimit të Python, Guido u udhëhoq nga parime të mëposhtme:
- Parimet që ndihmuan në kursimin e kohës gjatë zhvillimit:
- Huazimi i ideve të dobishme nga projekte të tjera.
- DĂ«shira pĂ«r thjeshtĂ«si, por pa e tepruar (parimi i Einsteinit âGjithçka duhet tĂ« shpjegohet sa mĂ« thjesht tĂ« jetĂ« e mundur, por jo mĂ« thjeshtâ).
- Përmbushja e filozofisë UNUX, sipas së cilës programet realizojnë një funksionalitet të caktuar, por e bëjnë atë mirë.
- Të mos shqetësohet shumë për performancën, optimizimi mund të shtohet sipas nevojës, kur të nevojitet.
- Të mos përpiqet të luftojë me gjërat që janë vendosur, por të lundrojë në rrjedhë.
- TĂ« shmangĂ« perfekcionizmin, zakonisht njĂ« nivel âmjaft mirĂ«â Ă«shtĂ« i mjaftueshĂ«m.
- Disa herë është e mundur të shkurtosh këndet, veçanërisht nëse diçka mund të bëhet më vonë.
- Parimet e tjera:
- Zbatimi nuk duhet të jetë i lidhur me një platformë të caktuar. Disa mundësi mund të mos jenë gjithmonë të disponueshme, por funksionaliteti fillestar duhet të funksionojë kudo.
- Mos i ngarkoni përdoruesit me detaje, përpunimi i të cilave mund të merret nga makina.
- Mbështetje dhe promovim të kodit të pavarur nga platforma, por pa kufizuar aksesin në mundësi dhe veçori të platformave.
- Sistemet e mëdha dhe kompleks duhet të ofrojnë disa nivele për zgjerim.
- Gabimet nuk duhet tĂ« jenĂ« fatale dhe tĂ« kalojnĂ« pa u vĂ«rejtur â kodi i pĂ«rdoruesit duhet tĂ« ketĂ« mundĂ«sinĂ« tĂ« kapĂ« dhe tĂ« trajtojĂ« gabimet.
- Gabimet në kodin e përdoruesit nuk duhet të ndikojnë në funksionalitetin e makinës virtuale dhe nuk duhet të çojnë në sjellje të pacaktuar të interpretorit apo të hapin procese të dështuar.
Burimi: opennet.ru
