Python 30 жасқа толды

20 жылы 1991 ақпанда Гидо ван Россум alt.sources тобында жүйе әкімшілігі мәселелерін шешу үшін сценарий тілін құру жобасының бөлігі ретінде 1989 жылдың желтоқсан айынан бері жұмыс істеп келе жатқан Python бағдарламалау тілінің бірінші шығарылымын жариялады. Amoeba операциялық жүйесі, ол C деңгейінен жоғарырақ болады, бірақ Борн қабығынан айырмашылығы, ОЖ жүйелік қоңырауларына ыңғайлырақ қол жеткізуді қамтамасыз етеді.

Жобаның атауы Monty Python комедиялық тобының құрметіне таңдалды. Бірінші нұсқа мұрагерлік, ерекше жағдайларды өңдеу, модуль жүйесі және негізгі типтер тізімі, dict және str сияқты сыныптарды қолдауды енгізді. Модульдер мен ерекшеліктерді іске асыру Modula-3 тілінен, ал шегіністерге негізделген кодтау стилі Гидо бұрын үлес қосқан ABC тілінен алынған.

Python құру кезінде Гвидо келесі принциптерді басшылыққа алды:

  • Әзірлеу кезінде уақытты үнемдейтін принциптер:
    • Басқа жобалардан пайдалы идеяларды алу.
    • Қарапайымдылыққа ұмтылу, бірақ тым жеңілдетусіз (Эйншейннің «Бәрін мүмкіндігінше қарапайым түрде айту керек, бірақ қарапайым емес» қағидасы).
    • UNUX философиясына сүйене отырып, оған сәйкес бағдарламалар бір функционалдылықты жүзеге асырады, бірақ оны жақсы орындайды.
    • Өнімділік туралы тым көп алаңдамаңыз, қажет болғанда оңтайландыруларды қосуға болады.
    • Үстем нәрселермен күресуге тырыспаңыз, бірақ ағынмен жүріңіз.
    • Перфекционизмнен аулақ болыңыз, әдетте «жеткілікті жақсы» деңгей жеткілікті.
    • Кейде бұрыштарды кесуге болады, әсіресе кейінірек бірдеңе жасауға болатын болса.
  • Басқа принциптер:
    • Іске асыру платформаға тән болуы қажет емес. Кейбір мүмкіндіктер әрқашан қол жетімді болмауы мүмкін, бірақ негізгі функциялар барлық жерде жұмыс істеуі керек.
    • Пайдаланушыларды машинамен өңдеуге болатын бөлшектермен ауыртпаңыз.
    • Платформаға тәуелсіз пайдаланушы кодын қолдау және жылжыту, бірақ платформалардың мүмкіндіктері мен мүмкіндіктеріне қол жеткізуді шектемей.
    • Үлкен күрделі жүйелер кеңейтудің бірнеше деңгейлерін қамтамасыз етуі керек.
    • Қателер өлімге әкелетін және анықталмаған болмауы керек — пайдаланушы коды қателерді ұстап, өңдеуге қабілетті болуы керек.
    • Пайдаланушы кодындағы қателер виртуалды машинаның жұмысына әсер етпеуі керек және аудармашының анықталмаған әрекетіне және процестің бұзылуына әкелмеуі керек.

    Ақпарат көзі: opennet.ru

пікір қалдыру